/* STMIE homepage styles — extracted from index.php (V17.1). */
    .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;}
    .skip-link{position:absolute;left:.75rem;top:-48px;background:#0f172a;color:#fff;padding:.7rem .9rem;border-radius:.55rem;text-decoration:none;z-index:3000;transition:top .2s ease;}
    .skip-link:focus{top:.75rem;}
    :root{
      --logo-w:125px; --logo-h:116px;
      --nav1-bg:#ffffff; --nav1-ink:#334155; --nav1-hover:#e2e8f0; --nav1-active:#3b82f6;
      --page-bg:#ffffff; --border:rgba(15,23,42,.12); --shadow:0 8px 24px rgba(0,0,0,.06);
      --breadcrumb-bg:#c62828; --breadcrumb-ink:#ffffff;
      --carousel-h:360px;
      --carousel-font:"Poppins",system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,Cantarell,Helvetica,Arial,sans-serif;
      --pink-login:#ec407a; --pink-register:#f06292;
      --social-bg:#c62828; --social-btn-bg:rgba(255,255,255,0.08); --social-btn-hover:rgba(255,255,255,0.2);
      --social-panel-bg:#ffffff; --social-border:rgba(198,40,40,0.3);
      --red:#c62828;
      --header-min-h:60px;
      --container:1200px;
    }
    *{box-sizing:border-box}
    html,body{margin:0;background:var(--page-bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Helvetica,Arial;color:#0f172a;}

    /* Shared base header rules moved to header.css (V17.3). */

    .breadcrumb-wrap{background:var(--red) !important;position:relative;z-index:900;margin-top:-1px;}
    .breadcrumb{max-width:1020px;margin:0 auto;padding:.25rem .9rem;font-size:.8rem;color:#fff;display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;background:transparent !important;border-radius:0 !important;box-shadow:none !important;}
    nav.breadcrumb,.breadcrumb,.breadcrumb *{background:transparent !important;}
    .bc-inline-label{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:.15rem .65rem;font-size:.67rem;letter-spacing:.01em;white-space:nowrap;}
    .bc-list{display:flex;gap:.5rem;list-style:none;margin:0;padding:0;align-items:center;flex-wrap:wrap;flex:1 1 auto;}
    .breadcrumb a.bc-link{color:#fff !important;text-decoration:none;}
    .breadcrumb a.bc-link:hover{text-decoration:underline;}
    .bc-item.current .bc-link{background:transparent;color:#fff;font-weight:700;padding:0;border-radius:0;}
    /* Shared account controls moved to header.css (V17.3). */
    .login-error{padding:.4rem .6rem;border-radius:.45rem;background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;font-size:.78rem;}
    .panel-wrap{max-height:0;overflow:hidden;transition:max-height .35s ease;background:#fff;border-bottom:1px solid rgba(0,0,0,.05);box-shadow:0 6px 18px rgba(0,0,0,.05);}
    .panel-wrap.open{max-height:760px;}
    .panel{max-width:1200px;margin:0 auto;padding:.65rem .9rem 1rem;display:flex;gap:.8rem;align-items:flex-start;flex-wrap:wrap;}
    .login-form,.register-form{flex:0 0 40%;min-width:320px;max-width:520px;border:1px solid rgba(15,23,42,.08);border-radius:.65rem;padding:.6rem .7rem .8rem;background:#fff;}
    .login-form h2,.register-form h2{margin:.1rem 0 .5rem;font-size:.95rem;font-weight:700;color:#0f172a;}
    .form-row{margin-bottom:.45rem;display:flex;flex-direction:column;gap:.35rem;}
    .form-row label{font-size:.78rem;color:#334155;}
    .form-row input[type="text"],.form-row input[type="password"],.form-row input[type="email"]{width:100%;border:1px solid #cbd5e1;border-radius:.45rem;padding:.42rem .55rem;font-size:.85rem;}
    #login-username{min-width:28ch;}
    .password-wrap{position:relative;display:flex;align-items:center;}
    .password-wrap input{width:100%;padding-right:2.4rem;}
    .password-toggle{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:transparent;border:none;cursor:pointer;font-size:.75rem;color:#475569;}
    .captcha-row .captcha-block{display:flex;align-items:flex-start;gap:.6rem;}
    .captcha-row input[type="checkbox"]{margin-top:.2rem;}
    .captcha-lines{display:flex;flex-direction:column;line-height:1.15;}
    .captcha-lines .cap-main{font-size:.8rem;color:#334155;}
    .captcha-lines .cap-sub{font-size:.72rem;color:#64748b;}
    .links-row{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;font-size:.72rem;}
    .links-row a{color:#1e40af;text-decoration:none;}
    .links-row a:hover{text-decoration:underline;}
    .btn-primary{display:inline-flex;align-items:center;justify-content:center;background:var(--pink-login);color:#fff;border:none;border-radius:.5rem;padding:.45rem .85rem;font-weight:600;cursor:pointer;font-size:.85rem;}
    .btn-primary:hover{filter:brightness(1.03);}
    .reg-grid{display:grid;grid-template-columns:1fr 1fr;gap:.4rem .5rem;}
    .reg-grid .span-2{grid-column:1 / -1;}
    .reg-terms{font-size:.72rem;color:#475569;}
    @media (max-width:900px){ .panel{flex-direction:column;} .login-form,.register-form{flex:1 1 auto;width:100%;max-width:520px;} }

    .home-shell{max-width:var(--container);margin:1rem auto 3rem;padding:0 .9rem;}
    @media (max-width:980px){ .home-shell{padding:0 .75rem;} }
    @media (max-width:640px){ .home-shell{margin:.75rem auto 2rem;padding:0 .6rem;} }
    .home-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.95fr);gap:1rem;align-items:stretch;}
    @media (max-width:980px){ .home-grid{grid-template-columns:1fr;gap:.85rem;} }
    @media (max-width:980px){ .home-grid{grid-template-columns:1fr;} }

    .hero-card,.intro-card,.paths-card,.how-card,.account-card,.carousel-card,.categories-card{background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);}
    .hero-card{padding:1.35rem 1.2rem;display:flex;flex-direction:column;justify-content:center;min-height:100%;}
    @media (max-width:980px){ .hero-card{padding:1.15rem 1rem;} }
    @media (max-width:640px){ .hero-card{padding:1rem .9rem;border-radius:14px;} }
    .eyebrow{display:inline-flex;align-items:center;gap:.45rem;align-self:flex-start;padding:.35rem .7rem;border-radius:999px;background:rgba(59,130,246,.08);color:#1d4ed8;font-size:.78rem;font-weight:700;letter-spacing:.01em;}
    .hero-card h1{margin:.8rem 0 .5rem;font-size:clamp(1.9rem,4vw,3rem);line-height:1.05;color:#0f172a;}
    @media (max-width:640px){ .hero-card h1{font-size:clamp(1.7rem,8vw,2.25rem);line-height:1.08;} }
    .hero-card p.lead{margin:0 0 1rem;font-size:1rem;line-height:1.55;color:#334155;max-width:62ch;}
    @media (max-width:640px){ .hero-card p.lead{font-size:.96rem;line-height:1.5;} }
    .hero-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-bottom:.85rem;}
    @media (max-width:640px){ .hero-actions{flex-direction:column;align-items:stretch;gap:.55rem;} }
    .hero-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:12px;padding:.8rem 1rem;font-weight:700;line-height:1;border:1px solid transparent;min-height:48px;text-align:center;}
    @media (max-width:640px){ .hero-btn{width:100%;padding:.9rem 1rem;} }
    .hero-btn.primary{background:#c62828;color:#fff;}
    .hero-btn.secondary{background:#fff;color:#0f172a;border-color:rgba(15,23,42,.15);}
    .hero-btn.tertiary{background:#f8fafc;color:#1d4ed8;border-color:rgba(59,130,246,.18);}
    .hero-note{font-size:.86rem;color:#64748b;line-height:1.45;}

    .intro-card{padding:1rem 1rem 1.05rem;}
    .section-kicker{font-size:.8rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#c62828;margin:0 0 .35rem;}
    .intro-card h2,.paths-card h2,.how-card h2,.categories-card h2{margin:0 0 .45rem;font-size:1.25rem;color:#0f172a;}
    .intro-card p,.how-card p,.account-card p{margin:0;color:#475569;line-height:1.5;}

    .paths-card{padding:1rem;}
    .path-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;}
    @media (max-width:980px){ .path-grid{gap:.75rem;} }
    @media (max-width:760px){ .path-grid{grid-template-columns:1fr;} }
    @media (max-width:760px){ .path-grid{grid-template-columns:1fr;} }
    .path-item{display:flex;flex-direction:column;gap:.45rem;padding:.9rem;border:1px solid rgba(15,23,42,.08);border-radius:14px;background:#fcfcfd;}
    .path-item h3{margin:0;font-size:1rem;color:#0f172a;}
    .path-item p{margin:0;color:#475569;font-size:.92rem;line-height:1.45;}
    .path-item a{margin-top:auto;color:#b91c1c;font-weight:700;text-decoration:none;}
    .path-item a:hover{text-decoration:underline;}
    .status-chip{display:inline-flex;align-items:center;align-self:flex-start;padding:.34rem .62rem;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.01em}
    .status-chip.completed{background:#ecfdf5;color:#166534;border:1px solid rgba(34,197,94,.22)}
    .status-chip.in-progress{background:#eff6ff;color:#1d4ed8;border:1px solid rgba(59,130,246,.22)}
    .status-subline{font-size:.82rem;color:#64748b;line-height:1.35}

    .how-card{padding:1rem;}
    .how-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin-top:.75rem;}
    @media (max-width:760px){ .how-steps{grid-template-columns:1fr;} }
    @media (max-width:760px){ .how-steps{grid-template-columns:1fr;} }
    .how-step{padding:.95rem;border-radius:14px;background:#f8fafc;border:1px solid rgba(148,163,184,.2);}
    .how-step .num{width:30px;height:30px;border-radius:999px;background:#c62828;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.86rem;font-weight:700;margin-bottom:.55rem;}
    .how-step h3{margin:0 0 .35rem;font-size:1rem;color:#0f172a;}
    .how-step p{margin:0;color:#475569;font-size:.9rem;line-height:1.45;}

    .carousel-card{padding:.8rem;position:relative;overflow:hidden;}
    .carousel-card .carousel{background:transparent;border:none;box-shadow:none;width:100%;display:flex;flex-direction:column;align-items:center;padding:0;min-height:var(--carousel-h);}
    .carousel-card .carousel-inner{width:100%;min-height:var(--carousel-h);background:#f8fafc;border-radius:12px;overflow:hidden;display:flex;justify-content:center;align-items:stretch;font-family:var(--carousel-font);position:relative;}
    .carousel-card .owl-carousel{width:100%;height:auto;}
    .carousel-card .owl-carousel .item{width:100%;height:auto;display:flex;flex-direction:row;align-items:stretch;gap:1.1rem;padding:1.2rem 3.1rem 1rem 1.15rem;}
    @media (max-width:980px){ .carousel-card .owl-carousel .item{padding:1rem 2.5rem .95rem 1rem;} }
    @media (max-width:768px){ .carousel-card .owl-carousel .item{padding:1.1rem .9rem 1rem .9rem;flex-direction:column;} }
    .carousel-text{flex:1 1 58%;display:flex;flex-direction:column;justify-content:flex-start;min-width:0;}
    .carousel-text-title{margin:0;text-transform:uppercase;font-weight:700;font-size:1.28rem;line-height:1.08;color:#0f172a;}
    @media (max-width:640px){ .carousel-text-title{font-size:1.05rem;line-height:1.14;} }
    .carousel-text-desc{margin-top:.45rem;margin-bottom:.55rem;font-size:.88rem;line-height:1.4;color:#334155;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;}
    .carousel-more{margin-top:.05rem;margin-bottom:.25rem;}
    .carousel-more a{font-size:.82rem;color:#b91c1c;text-decoration:none;font-weight:600;}
    .carousel-more a:hover{text-decoration:underline;}
    .topic-word-cloud{margin-top:.25rem;padding-top:.2rem;border-top:1px dashed rgba(148,163,184,0.4);display:flex;flex-wrap:wrap;gap:.35rem .7rem;align-items:flex-start;}
    .topic-word-cloud .topic-pill{text-decoration:none;font-weight:500;line-height:1.35;word-break:break-word;border-radius:999px;padding:2px 9px;display:inline-block;position:relative;transition:transform .15s ease,text-decoration .15s ease,color .15s ease,background-color .15s ease,box-shadow .15s ease;}
    .topic-word-cloud .topic-pill.level-high{font-weight:600;}
    .topic-word-cloud .topic-pill:hover{transform:translateY(-1px);text-decoration:underline;}
    .show-more-topics{margin-top:.35rem;font-size:.78rem;color:#64748b;}
    .carousel-img-wrap{flex:0 0 38%;display:flex;justify-content:flex-end;align-items:center;}
    .carousel-img-wrap img{height:100%;max-height:calc(var(--carousel-h) - 22px);width:auto;max-width:100%;object-fit:contain;display:block;}
    .carousel-card .owl-dots{position:absolute;top:8px;left:50%;transform:translateX(-50%);display:flex;flex-direction:row;gap:.4rem;align-items:center;padding:0;margin:0;}
    .carousel-card .owl-dots .owl-dot{margin:0!important;padding:0!important;width:14px;height:14px;display:flex;align-items:center;justify-content:center;}
    .carousel-card .owl-dots .owl-dot span{width:8px!important;height:8px!important;margin:0!important;padding:0!important;border-radius:50%;background:#ffffff;border:1px solid rgba(148,163,184,0.7);box-shadow:none;box-sizing:border-box;display:block;}
    .carousel-card .owl-dots .owl-dot.active span{background:#0f172a;border-color:#0f172a;box-shadow:0 0 0 2px rgba(148,163,184,0.25);}
    .carousel-card .owl-dots .owl-dot span::before,.carousel-card .owl-dots .owl-dot span::after{content:none!important;}
    .carousel-nav-row{width:100%;display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:.7rem;}
    .carousel-nav-row button{border:none;background:#ffffff;border-radius:999px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 6px rgba(15,23,42,0.10);color:#0f172a;font-size:1rem;transition:background-color .15s ease,transform .15s ease,box-shadow .15s ease;}
    .carousel-nav-row button:hover{background:#f1f5f9;transform:translateY(-1px);box-shadow:0 4px 10px rgba(15,23,42,0.14);}

    .social-bar{position:absolute;right:.8rem;top:.8rem;z-index:1500;display:flex;flex-direction:column;gap:.4rem;background:rgba(198,40,40,0.9);border:1px solid rgba(255,255,255,0.1);border-radius:.8rem;padding:.4rem;box-shadow:0 10px 25px rgba(0,0,0,.18);}
    .social-btn{width:40px;height:40px;border:none;background:var(--social-btn-bg);color:#fff;border-radius:.55rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s;font-size:1.05rem;}
    .social-btn:hover,.social-btn.active{background:var(--social-btn-hover);}
    .social-btn span{font-size:.66rem;line-height:1.3;display:none;}
    .social-panel{position:absolute;right:4.7rem;top:50%;transform:translateY(-50%) translateX(110%);width:280px;max-height:70vh;background:var(--social-panel-bg);border:1px solid var(--social-border);border-radius:1rem;box-shadow:0 10px 30px rgba(0,0,0,.14);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s ease, opacity .15s ease;z-index:1499;opacity:0;visibility:hidden;pointer-events:none;}
    @media (max-width:980px){ .social-panel{width:min(320px, calc(100vw - 1.2rem));right:4rem;} }
    .social-panel.open{transform:translateY(-50%) translateX(0);opacity:1;visibility:visible;pointer-events:auto;}
    .social-panel-header{background:#c62828;color:#fff;padding:.5rem .75rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;}
    .social-panel-title{font-weight:600;font-size:.85rem;}
    .social-panel-close{background:rgba(255,255,255,.12);border:none;width:26px;height:26px;border-radius:999px;color:#fff;cursor:pointer;font-weight:700;display:flex;align-items:center;justify-content:center;}
    .social-panel-body{padding:.55rem .75rem .65rem;overflow-y:auto;flex:1 1 auto;background:#fff;}
    .social-dummy-item{border:1px solid rgba(198,40,40,.12);border-radius:.6rem;padding:.45rem .55rem;margin-bottom:.4rem;background:#fff7f7;}
    .social-dummy-item h4{margin:.1rem 0 .25rem;font-size:.78rem;color:#991b1b;}
    .social-dummy-item p{margin:0;font-size:.73rem;color:#475569;line-height:1.35;}

    .categories-card{margin-top:1rem;padding:1rem;}
    .category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin-top:.85rem;}
    @media (max-width:980px){ .category-grid{grid-template-columns:repeat(2,minmax(0,1fr));} }
    @media (max-width:620px){ .category-grid{grid-template-columns:1fr;} }
    .category-card{border:1px solid rgba(15,23,42,.08);border-radius:14px;padding:1rem;background:#fcfcfd;display:flex;flex-direction:column;gap:.45rem;}
    .category-card.primary{background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);border-color:rgba(59,130,246,.2);}
    .category-card h3{margin:0;font-size:1rem;color:#0f172a;}
    .category-card p{margin:0;color:#475569;font-size:.92rem;line-height:1.45;}
    .category-card a{margin-top:auto;font-weight:700;color:#b91c1c;text-decoration:none;}
    .category-card a:hover{text-decoration:underline;}

    .account-card,.dashboard-card{padding:1rem;margin-top:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;}
    .account-copy h2,.dashboard-copy h2{margin:0 0 .25rem;font-size:1.1rem;color:#0f172a;}
    .account-copy p,.dashboard-copy p{margin:0;color:#475569;}
    .account-actions{display:flex;gap:.65rem;flex-wrap:wrap;}
    .dashboard-card{display:block}
    .dashboard-stats{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:.7rem}
    .dashboard-pill{display:inline-flex;align-items:center;padding:.42rem .7rem;border-radius:999px;background:#f8fafc;border:1px solid rgba(148,163,184,.2);color:#334155;font-size:.83rem}
    .dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:.9rem}
    .dashboard-item{padding:.9rem;border:1px solid rgba(15,23,42,.08);border-radius:14px;background:#fcfcfd}
    .dashboard-item h3{margin:0 0 .3rem;font-size:1rem;color:#0f172a}
    .dashboard-item p{margin:0;color:#475569;line-height:1.45}
    .dashboard-item a{display:inline-block;margin-top:.55rem;font-weight:700;text-decoration:none}
    .account-actions button,.account-actions a{display:inline-flex;align-items:center;justify-content:center;padding:.75rem .95rem;border-radius:12px;font-weight:700;text-decoration:none;border:1px solid rgba(15,23,42,.12);background:#fff;color:#0f172a;cursor:pointer;min-height:48px;}
    @media (max-width:640px){ .account-actions button,.account-actions a{width:100%;} }
    .account-actions .register-cta{background:#c62828;color:#fff;border-color:#c62828;}
    @media (max-width:760px){ .account-card{flex-direction:column;align-items:flex-start;} .dashboard-grid{grid-template-columns:1fr;} }

    .social-noscript{max-width:1200px;margin:.75rem auto 0;padding:.5rem .9rem;font-size:.8rem;color:#475569;background:#fef2f2;border-top:1px solid rgba(248,113,113,.4);border-bottom:1px solid rgba(248,113,113,.4);}
    .social-noscript a{color:#b91c1c;text-decoration:underline;}

    @media (prefers-reduced-motion: reduce){
      *, *::before, *::after{scroll-behavior:auto !important;animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;}
    }

    @media (max-width: 768px){
      .breadcrumb{padding:.35rem .7rem;gap:.45rem;align-items:flex-start;}
      .bc-list{flex-basis:100%;order:3;gap:.35rem;}
      .auth-controls{margin-left:auto;order:2;}
      .bc-inline-label{order:1;}
      .panel{padding:.55rem .7rem .9rem;}
      .login-form,.register-form{min-width:0;max-width:none;}
      .reg-grid{grid-template-columns:1fr;}
      .reg-grid .span-2{grid-column:1;}
      .carousel-text{order:2;}
      .carousel-img-wrap{order:1;justify-content:center;margin-bottom:.4rem;flex:0 0 auto;}
      .carousel-img-wrap img{max-height:220px;}
      .social-bar{position:fixed;top:auto;bottom:0;left:0;right:0;transform:none;flex-direction:row;justify-content:flex-start;border-radius:.8rem .8rem 0 0;background:#c62828;padding:.35rem .5rem calc(.35rem + env(safe-area-inset-bottom));gap:.4rem;overflow-x:auto;-webkit-overflow-scrolling:touch;}
      .social-btn{flex:0 0 auto;width:auto;min-width:45px;display:flex;gap:.35rem;}
      .social-btn span{display:inline;}
      .social-panel{position:fixed;right:0;left:0;bottom:2.85rem;top:auto;transform:translateY(110%);width:100%;max-width:100%;max-height:55vh;border-radius:1rem 1rem 0 0;opacity:0;visibility:hidden;pointer-events:none;}
      .social-panel.open{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto;}
    }
    @media (max-width: 768px){
      body{padding-bottom:4.25rem;}
    }

    @media (max-width: 520px){
      .header-inner{padding:.5rem .6rem;}
      .brand .brand-img{max-width:min(62vw, 220px);height:auto;}
      .breadcrumb{font-size:.76rem;}
      .auth-controls{width:100%;justify-content:flex-end;}
      .hero-note{font-size:.82rem;}
      .carousel-img-wrap img{max-height:180px;}
      .carousel-card .owl-dots{top:6px;}
      .carousel-nav-row button{width:36px;height:36px;}
      .social-panel{bottom:3rem;max-height:58vh;}
    }

    /* STMIE homepage UX v1 — presentation only; backend unchanged */
    :root{--container:1440px;--header-min-h:68px;--red:#c62828;--ink:#192333;--muted:#516073;}
    html{scroll-behavior:smooth;}
    body{background:#f8f9fb;color:var(--ink);overflow-x:hidden;padding-bottom:0;}
    [hidden]{display:none!important;}
    a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #2f68e7;outline-offset:3px;}
    .header-inner,.breadcrumb{max-width:var(--container);padding-left:clamp(1rem,3vw,2.2rem);padding-right:clamp(1rem,3vw,2.2rem);}
    .header-inner{min-height:68px;gap:1.25rem;}
    .top-nav{gap:.15rem;align-items:center;}
    .top-nav a{padding:.7rem .75rem;font-size:.92rem;font-weight:600;}
    .home-shell{max-width:var(--container);padding:0 clamp(1rem,3vw,2.2rem);margin:clamp(1rem,2vw,1.6rem) auto 3rem;}
    .home-shell > section{margin-top:clamp(1.2rem,2.5vw,2rem);}
    .home-shell > section:first-child{margin-top:0;}
    .home-hero{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);gap:clamp(1rem,2vw,1.6rem);align-items:stretch;}
    .home-hero-copy{padding:clamp(1.4rem,4vw,3.6rem);border-radius:24px;background:linear-gradient(115deg,#fff 0%,#fff 65%,#fff5f5 100%);border:1px solid #f0e4e4;box-shadow:0 10px 32px rgba(16,24,40,.05);}
    .home-hero h1{font-size:clamp(2.1rem,4.4vw,4.3rem);line-height:1.09;letter-spacing:-.045em;max-width:17ch;margin:.7rem 0 1.2rem;font-weight:800;}
    .home-hero h1 span{color:#b92329;}
    .home-hero-lead{font-size:clamp(1rem,1.35vw,1.15rem);line-height:1.65;color:#4b5563;max-width:65ch;margin:0 0 1.5rem;}
    .home-hero-facts{display:flex;flex-wrap:wrap;gap:.5rem 1.1rem;color:#48586b;font-size:.83rem;font-weight:600;}
    .home-hero-side{background:#202b3b;color:#fff;border-radius:24px;padding:clamp(1.1rem,2.4vw,2rem);display:flex;flex-direction:column;justify-content:center;gap:.65rem;}
    .hero-side-eyebrow{color:#ffc7c7;font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:0 0 .4rem;}
    .hero-quick-link{display:flex;align-items:center;gap:.8rem;padding:1rem;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);color:#fff;border-radius:15px;text-decoration:none;min-height:78px;transition:background .2s;}
    .hero-quick-link:hover{background:rgba(255,255,255,.14);color:#fff;text-decoration:none;}
    .hero-quick-link > span:nth-child(2){display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:0;}
    .hero-quick-link strong{font-size:.99rem;}
    .hero-quick-link small{font-size:.78rem;line-height:1.4;color:#d4dce6;}
    .quick-icon{width:40px;height:40px;flex:0 0 40px;border-radius:12px;background:#d83c42;color:#fff;display:grid;place-items:center;font-weight:800;}
    .hero-btn{gap:.55rem;padding:.9rem 1.2rem;}
    .hero-btn.secondary{background:#fff;color:#263346;border:1px solid #d5dbe5;}
    .section-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.1rem;}
    .section-heading h2{margin:0!important;font-size:clamp(1.4rem,2vw,1.85rem)!important;letter-spacing:-.025em;}
    .section-heading > p{max-width:44ch;color:#657084;line-height:1.5;font-size:.92rem;margin:0;}
    .section-kicker{margin:0 0 .35rem;color:#b4232b;font-size:.75rem;}
    .carousel-card,.topics-section,.paths-card,.how-card,.categories-card{padding:clamp(1rem,2.2vw,1.8rem);border-radius:20px;background:#fff;}
    .carousel-card{overflow:visible;}
    .carousel-card .carousel,.carousel-card .carousel-inner{min-height:0;}
    .carousel-card .carousel-inner{background:#f5f7fa;border:1px solid #e7eaf0;border-radius:16px;min-height:320px;}
    .carousel-card .owl-carousel .item{min-height:320px;padding:2rem 3.5rem 2rem 2rem;align-items:center;gap:2rem;}
    .carousel-text{justify-content:center;flex:1 1 58%;}
    .carousel-text-title{font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.2;letter-spacing:-.025em;}
    .carousel-text-desc{font-size:1rem;line-height:1.65;-webkit-line-clamp:4;}
    .carousel-more a{display:inline-flex;align-items:center;gap:.5rem;background:#c62828;color:#fff;padding:.78rem 1rem;border-radius:10px;font-size:.9rem;text-decoration:none;}
    .carousel-more a:hover{background:#a61f24;color:#fff;text-decoration:none;}
    .carousel-img-wrap{flex:0 0 38%;min-width:0;justify-content:center;align-self:stretch;}
    .carousel-img-wrap img{width:100%;height:100%;max-height:290px;object-fit:contain;}
    .carousel-card .owl-dots{position:static;transform:none;margin:.4rem auto 0!important;}
    .carousel-card .owl-dots .owl-dot span{background:#cbd5e1!important;}
    .carousel-card .owl-dots .owl-dot.active span{background:#c62828!important;border-color:#c62828!important;}
    .carousel-nav-row{margin-top:.55rem;}
    .carousel-nav-row button{width:44px;height:44px;border:1px solid #d8dfe7;}
    .topics-section{border:1px solid var(--border);box-shadow:var(--shadow);}
    .topic-toolbar{display:flex;gap:1rem;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:1rem;}
    .topic-filters{display:flex;flex-wrap:wrap;gap:.45rem;flex:1;}
    .topic-filter{border:1px solid #dbe1e9;background:#fff;border-radius:999px;padding:.65rem .95rem;font-size:.82rem;font-weight:700;color:#45546a;cursor:pointer;min-height:42px;}
    .topic-filter:hover{border-color:#c62828;}
    .topic-filter.active{background:#c62828;color:#fff;border-color:#c62828;}
    .topic-search-label{display:flex;flex-direction:column;gap:.2rem;color:#5d6878;font-size:.75rem;font-weight:700;}
    #topicSearch{border:1px solid #cbd5e1;border-radius:11px;padding:.7rem .85rem;min-height:44px;width:min(300px,100%);font-size:.92rem;color:#182338;background:#fff;}
    .topic-cloud-stage{border:1px solid #e8ebf0;background:linear-gradient(160deg,#fff 0%,#fafbfd 100%);border-radius:16px;padding:clamp(1rem,2vw,1.5rem);}
    .topic-cloud-all{display:flex;flex-wrap:wrap;gap:.55rem .65rem;align-items:center;max-height:240px;overflow:hidden;}
    .topic-cloud-all.expanded{max-height:none;}
    .cloud-word{display:inline-flex;align-items:center;text-decoration:none;border-radius:10px;padding:.55rem .8rem;min-height:42px;line-height:1.3;max-width:100%;overflow-wrap:anywhere;background:#f4f6f9;border:1px solid #e2e7ee;color:#344154;font-size:.95rem;font-weight:600;transition:background .2s,border-color .2s;}
    .cloud-word-med{font-size:1.04rem;background:#fff0f0;border-color:#f3d4d4;color:#a52228;}
    .cloud-word-high{font-size:1.13rem;background:#c62828;border-color:#c62828;color:#fff;}
    .cloud-word:hover{border-color:#c62828;background:#fee7e7;color:#9e1c22;text-decoration:none;}
    .topic-cloud-bottom{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;color:#64748b;font-size:.83rem;}
    .topic-show-more{border:1px solid #d4dce7;background:#fff;color:#a52127;border-radius:10px;min-height:42px;padding:.55rem .9rem;font-weight:700;cursor:pointer;}
    .topic-empty,.topic-empty-static{color:#5f6c7c;margin:1rem 0;}
    .path-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;}
    .path-item{background:#fafbfc;border:1px solid #e7eaf0;min-height:210px;padding:1.15rem;}
    .path-item h3{font-size:1.1rem;}
    .path-item a{display:inline-flex;align-items:center;min-height:42px;}
    .how-steps{margin-top:0;}
    .how-step{background:#f8f9fc;}
    .social-bar{position:relative;inset:auto;right:auto;top:auto;bottom:auto;left:auto;transform:none;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;margin:1rem auto 0;width:fit-content;max-width:100%;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:none;padding:.4rem;overflow:visible;}
    .social-btn{width:44px;height:44px;min-width:44px;flex:0 0 44px;background:#c62828;border-radius:9px;}
    .social-btn:hover,.social-btn.active{background:#a81f25;}
    .social-btn span{display:none;}
    .social-panel{position:relative;inset:auto;right:auto;top:auto;bottom:auto;transform:none;width:min(100%,650px);max-height:0;margin:0 auto;opacity:0;visibility:hidden;pointer-events:none;transition:max-height .25s,opacity .25s;}
    .social-panel.open{transform:none;max-height:500px;margin:.7rem auto 0;opacity:1;visibility:visible;pointer-events:auto;}
    .social-panel-body{min-height:0;}
    .dashboard-card{background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);}
    .category-card{background:#f9fafc;}
    @media(max-width:1160px){
      .home-hero{grid-template-columns:minmax(0,1.2fr) minmax(300px,.9fr);}
      .path-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
      .top-nav a{padding:.65rem .55rem;font-size:.84rem;}
    }
    @media(max-width:900px){
      .home-hero{grid-template-columns:1fr;}
      .home-hero-side{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;}
      .hero-side-eyebrow{grid-column:1/-1;}
      .hero-quick-link{flex-wrap:wrap;min-width:0;}
      .hero-quick-link > span:nth-child(2){flex-basis:calc(100% - 52px);}
      .hero-quick-link > span:last-child{display:none;}
      .section-heading{align-items:flex-start;flex-direction:column;}
      .carousel-card .owl-carousel .item{gap:1rem;}
    }
    @media(max-width:768px){
      body{padding-bottom:0;}
      .home-shell{padding:0 1rem;}
      .home-hero-side{display:flex;}
      .hero-quick-link{flex-wrap:nowrap;}
      .hero-quick-link > span:last-child{display:block;}
      .carousel-card .owl-carousel .item{min-height:0;padding:1.25rem;flex-direction:column;gap:.8rem;}
      .carousel-text{order:2;width:100%;}
      .carousel-img-wrap{order:1;width:100%;flex:0 0 auto;max-height:220px;}
      .carousel-img-wrap img{max-height:210px;}
      .carousel-card .carousel-inner{min-height:0;}
      .social-bar{position:relative;inset:auto;transform:none;flex-wrap:wrap;justify-content:center;overflow:visible;border-radius:12px;padding:.4rem;}
      .social-btn{width:44px;min-width:44px;flex:0 0 44px;}
      .social-btn span{display:none;}
      .social-panel{position:relative;inset:auto;transform:none;max-height:0;border-radius:1rem;width:min(100%,650px);}
      .social-panel.open{transform:none;max-height:500px;}
      .topic-search-label{width:100%;}
      #topicSearch{width:100%;}
      .topic-cloud-all{max-height:285px;}
      .category-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
      .login-form,.register-form{min-width:0;}
      #login-username{min-width:0;}
    }
    @media(max-width:520px){
      .home-shell{padding:0 .75rem;}
      .home-hero-copy{padding:1.25rem;border-radius:18px;}
      .home-hero-side{padding:1rem;border-radius:18px;}
      .home-hero h1{font-size:clamp(2rem,9vw,2.8rem);}
      .hero-actions{flex-direction:column;}
      .hero-btn{width:100%;}
      .home-hero-facts{flex-direction:column;gap:.4rem;}
      .carousel-card,.topics-section,.paths-card,.how-card,.categories-card{padding:1rem;border-radius:16px;}
      .path-grid,.category-grid,.how-steps{grid-template-columns:1fr;}
      .topic-cloud-bottom{align-items:flex-start;flex-direction:column;}
      .topic-filter{font-size:.78rem;padding:.55rem .7rem;}
      .cloud-word{font-size:.9rem;}
      .cloud-word-high{font-size:1.02rem;}
      .auth-controls{width:auto;max-width:100%;}
      .breadcrumb{align-items:center;}
      .bc-list{display:none;}
      .carousel-card .owl-dots{top:auto;}
    }
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}


    /* STMIE v2: lighter, wider, shorter homepage */
    :root{--container:1600px;--ink:#243145;}
    body{background:#f7f8fa;}
    .home-shell{max-width:1600px;width:100%;padding:0 clamp(16px,2.4vw,36px);margin:14px auto 24px;}
    .header-inner,.breadcrumb{max-width:1600px;padding-left:clamp(16px,2.4vw,36px);padding-right:clamp(16px,2.4vw,36px);}
    .home-shell > section{margin-top:14px;}
    .home-shell > section:first-child{margin-top:0;}
    .home-hero{grid-template-columns:minmax(0,1.55fr) minmax(315px,.75fr);gap:14px;}
    .home-hero-copy{padding:clamp(22px,2.7vw,34px);border-radius:17px;box-shadow:0 3px 15px rgba(16,24,40,.035);}
    .home-hero h1{font-size:clamp(1.85rem,2.65vw,2.9rem);line-height:1.15;letter-spacing:-.025em;font-weight:650;max-width:24ch;margin:.35rem 0 .65rem;}
    .home-hero h1 span{color:#b52b30;font-weight:650;}
    .home-hero-lead{font-size:clamp(.94rem,1.08vw,1.02rem);line-height:1.55;max-width:66ch;margin:0 0 1rem;}
    .home-hero-facts{font-size:.77rem;gap:.35rem .9rem;}
    .hero-actions{margin-bottom:.65rem;gap:.5rem;}
    .hero-btn{min-height:42px;padding:.65rem .95rem;border-radius:9px;font-size:.86rem;}
    .home-hero-side{background:#fff;border:1px solid #e8e9ed;box-shadow:0 3px 15px rgba(16,24,40,.035);color:#243145;border-radius:17px;padding:clamp(16px,2vw,26px);gap:.45rem;}
    .hero-side-eyebrow{color:#a72a30;letter-spacing:.015em;text-transform:none;font-size:.91rem;font-weight:650;margin:0 0 .35rem;}
    .hero-quick-link{min-height:62px;padding:.65rem .8rem;border:1px solid #e9eaf0;background:#f9fafc;color:#243145;border-radius:10px;gap:.65rem;}
    .hero-quick-link:hover{background:#fff3f3;color:#243145;border-color:#efc7c8;}
    .hero-quick-link strong{font-size:.89rem;font-weight:650;}
    .hero-quick-link small{font-size:.74rem;color:#667285;}
    .quick-icon{width:33px;height:33px;flex-basis:33px;border-radius:9px;background:#fbe8e8;color:#b12b31;font-size:.82rem;}
    .section-kicker{font-size:.69rem;letter-spacing:.04em;}
    .section-heading{margin-bottom:.7rem;align-items:center;}
    .section-heading h2{font-size:clamp(1.2rem,1.65vw,1.52rem)!important;letter-spacing:-.012em;font-weight:650;}
    .section-heading > p{font-size:.84rem;max-width:42ch;}
    .carousel-card,.topics-section,.paths-card,.how-card{padding:clamp(14px,1.5vw,22px);border-radius:15px;box-shadow:0 3px 14px rgba(16,24,40,.035);}
    .carousel-card .carousel-inner{min-height:0;}
    .carousel-card .owl-carousel .item{min-height:230px;padding:1.1rem 2rem;gap:1.2rem;}
    .carousel-text-title{font-size:clamp(1.2rem,1.65vw,1.6rem);font-weight:650;letter-spacing:-.01em;text-transform:none;}
    .carousel-text-desc{font-size:.9rem;line-height:1.48;-webkit-line-clamp:3;}
    .carousel-more a{padding:.55rem .85rem;border-radius:8px;font-size:.82rem;}
    .carousel-img-wrap img{max-height:210px;}
    .carousel-nav-row{margin-top:.35rem;}
    .carousel-nav-row button{width:37px;height:37px;}
    .social-bar{margin:.5rem auto 0;padding:.2rem;gap:.2rem;}
    .social-btn{width:35px;height:35px;min-width:35px;flex-basis:35px;font-size:.9rem;border-radius:7px;}
    .topic-toolbar{margin-bottom:.65rem;gap:.6rem;}
    .topic-filter{min-height:36px;padding:.42rem .7rem;font-size:.77rem;}
    #topicSearch{min-height:38px;padding:.5rem .65rem;font-size:.83rem;}
    .topic-cloud-stage{padding:.8rem 1rem;border-radius:12px;}
    .topic-cloud-all{max-height:none!important;overflow:visible;gap:.4rem .5rem;}
    .topic-cloud-all .cloud-collapsed{display:none!important;}
    .cloud-word{min-height:34px;padding:.35rem .65rem;border-radius:8px;font-size:.82rem;}
    .cloud-word-med{font-size:.89rem;}
    .cloud-word-high{font-size:.94rem;}
    .topic-cloud-bottom{margin-top:.6rem;}
    .topic-show-more{min-height:36px;padding:.4rem .65rem;font-size:.78rem;}
    .path-grid{gap:.65rem;}
    .path-item{min-height:0;padding:.8rem .9rem;gap:.3rem;border-radius:10px;}
    .path-item h3{font-size:.95rem;font-weight:650;}
    .path-item p{font-size:.82rem;line-height:1.4;}
    .path-item a{min-height:32px;font-size:.82rem;}
    .how-card{display:flex;gap:1rem;align-items:center;}
    .how-card h2{font-size:1rem;font-weight:650;min-width:150px;margin:0;}
    .how-steps{flex:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin:0;}
    .how-step{display:flex;align-items:center;gap:.6rem;background:#fafbfc;border-radius:10px;padding:.6rem .7rem;}
    .how-step .num{width:26px;height:26px;flex:0 0 26px;margin:0;font-size:.76rem;}
    .how-step span:last-child{display:flex;flex-direction:column;gap:.12rem;}
    .how-step strong{font-size:.83rem;font-weight:650;}
    .how-step small{font-size:.72rem;color:#657185;line-height:1.35;}
    .account-card{margin-top:14px;padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:12px;background:#fff;}
    .account-copy h2{font-size:.97rem;}
    .account-copy p{font-size:.82rem;}
    .account-actions button,.account-actions a{min-height:38px;padding:.5rem .75rem;border-radius:9px;font-size:.82rem;}
    .site-footer{max-width:1600px;margin:12px auto 18px;padding:0 clamp(16px,2.4vw,36px);display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#687386;font-size:.78rem;}
    .site-footer nav{display:flex;gap:1rem;}
    .site-footer a{color:#687386;text-decoration:none;}
    .site-footer a:hover{text-decoration:underline;}
    @media(min-width:901px) and (max-width:1240px){
      .home-hero{grid-template-columns:minmax(0,1.45fr) minmax(300px,.8fr);}
      .home-hero h1{font-size:clamp(1.8rem,2.5vw,2.4rem);}
      .home-hero-copy{padding:22px;}
    }
    @media(max-width:900px){
      .home-hero{grid-template-columns:1fr;}
      .home-hero-side{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));}
      .hero-side-eyebrow{grid-column:1/-1;}
      .hero-quick-link{flex-wrap:wrap;}
      .how-card{display:block;}
      .how-card h2{margin-bottom:.65rem;}
    }
    @media(max-width:768px){
      .home-shell{padding:0 12px;margin-top:10px;}
      .home-shell > section{margin-top:10px;}
      .home-hero-side{display:flex;gap:.4rem;}
      .hero-quick-link{flex-wrap:nowrap;min-height:54px;}
      .hero-quick-link > span:last-child{display:block;}
      .home-hero h1{font-size:clamp(1.65rem,5.5vw,2.2rem);max-width:26ch;}
      .home-hero-copy{padding:18px;}
      .home-hero-lead{font-size:.9rem;line-height:1.45;}
      .home-hero-facts{display:none;}
      .section-heading{gap:.25rem;}
      .section-heading > p{display:none;}
      .carousel-card .owl-carousel .item{min-height:0;padding:.8rem 1rem;flex-direction:row;gap:.6rem;}
      .carousel-text{order:1;flex:1 1 65%;}
      .carousel-img-wrap{order:2;flex:0 0 32%;width:32%;max-height:150px;}
      .carousel-img-wrap img{max-height:145px;}
      .carousel-text-title{font-size:1.12rem;}
      .carousel-text-desc{font-size:.81rem;-webkit-line-clamp:3;line-height:1.4;}
      .carousel-more a{font-size:.75rem;padding:.48rem .65rem;}
      .topic-cloud-stage{padding:.7rem;}
      .path-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
      .how-steps{grid-template-columns:1fr;gap:.35rem;}
      .how-step{padding:.45rem .6rem;}
      .how-step small{display:none;}
      .account-card{gap:.5rem;}
    }
    @media(max-width:520px){
      .home-hero h1{font-size:clamp(1.55rem,7vw,1.9rem);line-height:1.17;}
      .home-hero-copy{padding:16px;}
      .home-hero-lead{margin-bottom:.7rem;}
      .hero-actions{flex-direction:row;align-items:stretch;}
      .hero-btn{width:auto;flex:1;min-height:39px;padding:.5rem .65rem;font-size:.78rem;}
      .home-hero-side{padding:12px;}
      .hero-side-eyebrow{margin-bottom:.2rem;}
      .hero-quick-link{min-height:46px;padding:.4rem .6rem;}
      .quick-icon{width:28px;height:28px;flex-basis:28px;}
      .hero-quick-link strong{font-size:.82rem;}
      .hero-quick-link small{font-size:.68rem;}
      .carousel-card,.topics-section,.paths-card,.how-card{padding:12px;}
      .carousel-card .owl-carousel .item{padding:.75rem;gap:.45rem;}
      .carousel-img-wrap{max-height:110px;}
      .carousel-img-wrap img{max-height:105px;}
      .carousel-text-title{font-size:1rem;}
      .carousel-text-desc{font-size:.76rem;-webkit-line-clamp:2;}
      .carousel-more a{padding:.42rem .55rem;}
      .path-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;}
      .path-item{padding:.7rem;}
      .path-item h3{font-size:.85rem;}
      .path-item p{font-size:.76rem;}
      .path-item a{font-size:.75rem;}
      .topic-filters{gap:.3rem;}
      .topic-filter{padding:.38rem .55rem;font-size:.73rem;}
      .account-actions{width:100%;}
      .account-actions button{flex:1;}
      .site-footer{padding:0 12px;}
    }


    /* STMIE homepage v3 — curved full-height carousel, integrated controls, responsive width */
    :root { --container:1760px; --carousel-height:350px; }
    .home-shell { max-width:var(--container); width:100%; padding-inline:clamp(14px,2.1vw,42px); }
    .header-inner,.breadcrumb { max-width:var(--container); padding-inline:clamp(14px,2.1vw,42px); }
    .site-footer { max-width:var(--container); padding-inline:clamp(14px,2.1vw,42px); }
    .header-inner { min-height:60px; }
    .home-hero { grid-template-columns:minmax(0,1.65fr) minmax(295px,.75fr); }
    .home-hero h1 { font-size:clamp(1.8rem,2.35vw,2.55rem); font-weight:600; line-height:1.17; max-width:28ch; letter-spacing:-.02em; }
    .home-hero h1 span { font-weight:600; }
    .home-hero-copy { padding:clamp(20px,2.3vw,32px); }
    .home-hero-side { padding:clamp(16px,1.7vw,24px); }
    .hero-quick-link { min-height:58px; }
    .section-heading h2 { font-weight:600!important; }
    .carousel-card { overflow:visible; }
    .carousel-card .carousel { min-height:0; display:block; width:100%; }
    .carousel-card .carousel-inner { height:var(--carousel-height); min-height:0; border-radius:20px; overflow:hidden; background:linear-gradient(110deg,#fff 0%,#fff7f7 68%,#fbecec 100%); border:1px solid #e8e8ed; }
    .carousel-card .owl-carousel,
    .carousel-card .owl-stage-outer,
    .carousel-card .owl-stage,
    .carousel-card .owl-item { height:100%; }
    .carousel-card .owl-carousel .item { display:flex; flex-direction:row; gap:0; height:100%; min-height:0; padding:0; align-items:stretch; position:relative; overflow:hidden; }
    .carousel-text { flex:1 1 55%; min-width:0; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; gap:.2rem; padding:clamp(1.3rem,3.1vw,3.1rem); padding-right:clamp(.8rem,1.5vw,1.5rem); position:relative; z-index:1; }
    .carousel-eyebrow { display:inline-flex; align-items:center; background:#fce9e9; color:#b5232a; border-radius:999px; padding:.42rem .78rem; font-size:.73rem; font-weight:700; letter-spacing:.025em; text-transform:uppercase; margin-bottom:.6rem; }
    .carousel-text-title { margin:0; color:#172235; font-size:clamp(1.55rem,2.3vw,2.3rem); font-weight:650; letter-spacing:-.025em; line-height:1.15; text-transform:none; }
    .carousel-text-desc { margin:.6rem 0 .85rem; color:#4a596e; font-size:clamp(.91rem,1.05vw,1.03rem); line-height:1.57; max-width:60ch; display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; }
    .carousel-more { margin:0; }
    .carousel-more a { min-height:44px; display:inline-flex; align-items:center; gap:.45rem; padding:.72rem 1.05rem; border-radius:10px; background:#c62828; color:#fff; font-size:.91rem; font-weight:650; text-decoration:none; }
    .carousel-more a:hover { background:#a71f25; color:#fff; text-decoration:none; }
    .carousel-img-wrap { position:relative; flex:0 0 46%; min-width:0; height:100%; display:block; overflow:hidden; isolation:isolate; border-radius:45% 0 0 45% / 95% 0 0 95%; background:linear-gradient(120deg,#f7e5e6,#e9eff7); }
    .carousel-img-wrap::before { content:""; position:absolute; inset:-24px; z-index:-1; background-image:var(--slide-image); background-position:center; background-size:cover; filter:blur(19px); opacity:.48; transform:scale(1.08); }
    .carousel-img-wrap::after { content:""; position:absolute; inset:0; border-left:3px solid rgba(198,40,40,.17); border-radius:inherit; pointer-events:none; }
    .carousel-img-wrap img { position:relative; display:block; width:100%; height:100%; max-width:none; max-height:none; object-fit:cover; object-position:center 36%; }
    .carousel-img-wrap.is-portrait img { object-fit:contain; object-position:center; transform:scale(1.02); }
    .carousel-footer { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:1rem; min-height:54px; padding:9px 2px 0; }
    .carousel-dots { display:flex; align-items:center; justify-content:flex-start; gap:8px; min-width:0; }
    .carousel-dot { width:13px; height:13px; padding:0; flex:0 0 13px; border:1.5px solid #8390a4; background:#fff; border-radius:50%; cursor:pointer; }
    .carousel-dot.active { background:#c62828; border-color:#c62828; box-shadow:0 0 0 3px #f9e2e2; }
    .carousel-nav-row { display:flex; justify-content:center; gap:.5rem; margin:0; width:auto; }
    .carousel-nav-row button { width:44px; height:44px; min-width:44px; border:1px solid #dfe3eb; box-shadow:0 2px 7px rgba(15,23,42,.05); font-size:1.2rem; }
    .social-bar { position:static; inset:auto; display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:5px; margin:0; width:auto; padding:0; background:transparent; border:none; border-radius:0; box-shadow:none; overflow:visible; transform:none; }
    .social-btn { width:39px; height:39px; min-width:39px; flex:0 0 39px; border-radius:9px; font-size:1.05rem; }
    .social-panel { position:relative; inset:auto; width:min(100%,650px); max-height:0; margin:0 0 0 auto; opacity:0; visibility:hidden; pointer-events:none; transform:none; overflow:hidden; }
    .social-panel.open { position:relative; transform:none; max-height:520px; margin:.5rem 0 0 auto; opacity:1; visibility:visible; pointer-events:auto; }
    .social-panel-body { max-height:430px; overflow:auto; }
    @media(max-width:1120px) {
      :root { --carousel-height:325px; }
      .carousel-text { flex-basis:56%; padding:1.5rem; }
      .carousel-img-wrap { flex-basis:44%; }
      .carousel-text-title { font-size:clamp(1.45rem,2.4vw,1.9rem); }
      .carousel-text-desc { -webkit-line-clamp:4; font-size:.91rem; }
      .home-hero { grid-template-columns:minmax(0,1.4fr) minmax(285px,.8fr); }
    }
    @media(max-width:900px) {
      .home-hero { grid-template-columns:1fr; }
      .home-hero-side { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
      .hero-side-eyebrow { grid-column:1/-1; }
      .hero-quick-link { min-width:0; flex-wrap:wrap; }
    }
    @media(max-width:768px) {
      :root { --carousel-height:unset; }
      .home-shell { padding-inline:12px; }
      .home-hero-side { display:flex; }
      .carousel-card .carousel-inner { height:auto; min-height:0; border-radius:15px; }
      .carousel-card .owl-carousel .item { min-height:365px; height:auto; display:flex; flex-direction:column; padding:0; gap:0; }
      .carousel-card .owl-stage-outer,.carousel-card .owl-stage,.carousel-card .owl-item { height:auto; }
      .carousel-img-wrap { order:1; flex:0 0 155px; width:100%; height:155px; max-height:none; border-radius:0 0 0 32% / 0 0 0 35%; }
      .carousel-img-wrap img { max-height:none; height:100%; width:100%; object-fit:cover; object-position:center 35%; }
      .carousel-img-wrap.is-portrait img { object-fit:contain; transform:none; }
      .carousel-text { order:2; flex:1 1 auto; width:100%; padding:1.1rem 1.2rem 1.25rem; gap:0; }
      .carousel-eyebrow { font-size:.65rem; padding:.3rem .55rem; margin-bottom:.4rem; }
      .carousel-text-title { font-size:clamp(1.25rem,4.4vw,1.6rem); }
      .carousel-text-desc { margin:.45rem 0 .7rem; font-size:.87rem; line-height:1.46; -webkit-line-clamp:3; }
      .carousel-more a { min-height:42px; padding:.55rem .85rem; font-size:.82rem; }
      .carousel-footer { grid-template-columns:1fr auto; gap:.55rem; padding-top:10px; }
      .carousel-dots { grid-column:1; grid-row:1; }
      .carousel-nav-row { grid-column:2; grid-row:1; }
      .social-bar { grid-column:1/-1; grid-row:2; justify-content:flex-end; }
      .carousel-nav-row button { width:42px; height:42px; min-width:42px; }
      .social-btn { width:38px; height:38px; min-width:38px; flex-basis:38px; }
      .home-hero h1 { font-size:clamp(1.65rem,5vw,2.1rem); }
      .site-footer { padding-inline:12px; }
    }
    @media(max-width:520px) {
      .home-shell { padding-inline:10px; }
      .carousel-card { padding:12px; }
      .carousel-card .owl-carousel .item { min-height:355px; }
      .carousel-img-wrap { flex-basis:145px; height:145px; }
      .carousel-text { padding:.9rem 1rem 1.1rem; }
      .carousel-text-desc { -webkit-line-clamp:3; }
      .carousel-footer { min-height:0; }
      .social-bar { justify-content:center; }
      .carousel-nav-row { gap:.25rem; }
      .carousel-nav-row button { width:40px; height:40px; min-width:40px; }
      .hero-quick-link { flex-wrap:nowrap; }
    }
    @media(prefers-reduced-motion:reduce) {
      .carousel-card .owl-carousel .item { transition:none; }
    }


    /* STMIE V4: academic focus; real edge-to-edge photographs with no blur or letterboxing. */
    .home-hero { grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr); gap:12px; }
    .home-hero-copy { padding:clamp(17px,2vw,26px); }
    .home-hero h1 { max-width:30ch; margin:.3rem 0 .6rem; font-size:clamp(1.6rem,2.3vw,2.4rem); }
    .home-hero-lead { margin:0 0 .85rem; line-height:1.48; font-size:clamp(.9rem,1vw,1.03rem); }
    .home-hero-facts { font-size:.77rem; }
    .carousel-card .carousel-inner { background:#fff; }
    .carousel-card .owl-carousel .item { background:#fff; }
    .carousel-text { flex:1 1 54%; }
    .carousel-img-wrap { flex:0 0 46%; height:100%; max-height:none; min-height:0; overflow:hidden; background:none!important; border-radius:40% 0 0 40% / 100% 0 0 100%; }
    .carousel-img-wrap::before,.carousel-img-wrap::after { display:none!important; content:none!important; }
    .carousel-img-wrap img,.carousel-img-wrap.is-portrait img { display:block; width:100%; height:100%; max-width:none; max-height:none; object-fit:cover!important; object-position:var(--photo-position,center center)!important; transform:none!important; }
    .carousel-text-title { font-weight:650; }
    .topic-scope { align-self:center; padding:.55rem .85rem; border-radius:999px; background:#fff4f4; color:#a72229; font-size:.8rem; font-weight:650; }
    .carousel-card .owl-carousel .item .carousel-text-desc { display:-webkit-box; }
    @media(max-width:900px){
      .home-hero { grid-template-columns:1fr; }
    }
    @media(max-width:768px){
      .carousel-card .owl-carousel .item { min-height:365px; }
      .carousel-img-wrap { order:1; width:100%; height:170px; max-height:none; flex:0 0 170px; border-radius:0 0 0 24% / 0 0 0 36%; }
      .carousel-img-wrap img,.carousel-img-wrap.is-portrait img { height:100%; width:100%; object-fit:cover!important; object-position:var(--photo-position,center center)!important; }
      .carousel-text { order:2; }
      .carousel-footer { gap:.5rem; }
    }
    @media(max-width:520px){
      .carousel-img-wrap { flex-basis:155px; height:155px; }
      .carousel-card .owl-carousel .item { min-height:350px; }
      .carousel-text { padding:.85rem 1rem 1.1rem; }
      .carousel-text-title { font-size:1.22rem; }
      .carousel-text-desc { font-size:.84rem; }
      .topic-scope { font-size:.72rem; padding:.4rem .6rem; }
    }

  
    /* V4.1: reliable cover-cropped imagery and slightly more readable typography. */
    .carousel-card .carousel-inner { background:#fff; }
    .carousel-card .owl-carousel .item { background:#fff; }
    .carousel-img-wrap { height:100%; min-height:100%; flex:0 0 46%; background:transparent!important; overflow:hidden; }
    .carousel-img-wrap img { display:block!important; width:100%!important; height:100%!important; min-height:100%; object-fit:cover!important; max-width:none!important; max-height:none!important; }
    .carousel-text-title { font-size:clamp(1.75rem,2.5vw,2.55rem); }
    .carousel-text-desc { font-size:clamp(.98rem,1.08vw,1.08rem); }
    .home-hero-lead { font-size:clamp(.96rem,1.05vw,1.06rem); }
    .home-shell { max-width:1540px; }
    .header-inner,.breadcrumb { max-width:1540px; }
    @media(max-width:768px) {
      .carousel-img-wrap { min-height:170px; height:170px; flex:0 0 170px; }
      .carousel-img-wrap img { min-height:170px; height:170px!important; }
    }
    @media(max-width:520px) {
      .carousel-img-wrap { min-height:155px; height:155px; flex-basis:155px; }
      .carousel-img-wrap img { min-height:155px; height:155px!important; }
    }


    /* STMIE V4.2 — compact, carousel-first homepage. Purely presentational; no DB or authentication changes. */
    :root { --carousel-height:310px; --header-min-h:76px; }
    .site-header { min-height:0; }
    .header-inner { min-height:76px; padding-top:7px; padding-bottom:7px; }
    .brand .brand-img { display:block; width:auto; max-width:130px; max-height:68px; object-fit:contain; }
    .top-nav a { padding:.55rem .75rem; }
    .breadcrumb { padding-top:.2rem; padding-bottom:.2rem; }
    .home-shell { margin-top:12px; margin-bottom:20px; }
    .home-shell > section { margin-top:11px; }

    /* The welcome section provides context; the carousel below provides the imagery. */
    .home-hero { display:block; }
    .home-hero-copy {
      display:grid;
      grid-template-columns:minmax(0,1.6fr) minmax(270px,.75fr);
      grid-template-rows:auto auto auto;
      column-gap:clamp(20px,3vw,56px);
      row-gap:6px;
      align-items:center;
      padding:clamp(17px,1.8vw,26px) clamp(20px,2.5vw,38px);
      background:linear-gradient(110deg,#fff 0%,#fff 66%,#fff8f8 100%);
      border:1px solid #eadfdf;
      border-radius:16px;
    }
    .home-hero-copy > .section-kicker { grid-column:1; grid-row:1; margin:0; }
    .home-hero h1 { grid-column:1; grid-row:2; font-size:clamp(1.7rem,2.25vw,2.35rem); line-height:1.16; margin:0; max-width:none; }
    .home-hero-lead { grid-column:1; grid-row:3; font-size:clamp(.91rem,1vw,1rem); line-height:1.47; margin:0; max-width:70ch; }
    .hero-actions { grid-column:2; grid-row:2; display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:.5rem; margin:0; }
    .hero-btn { min-height:41px; padding:.65rem .85rem; font-size:.85rem; white-space:nowrap; }
    .home-hero-facts { grid-column:2; grid-row:3; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:.25rem .8rem; margin:0; font-size:.76rem; font-weight:500; }

    /* The carousel remains the dominant image, but does not consume an entire screen. */
    .carousel-card,.topics-section,.paths-card,.how-card { padding:clamp(13px,1.35vw,19px); }
    .section-heading { margin-bottom:.55rem; }
    .carousel-card .carousel-inner { height:var(--carousel-height); }
    .carousel-text { padding:clamp(1.2rem,2.5vw,2.4rem); padding-right:1rem; }
    .carousel-text-title { font-size:clamp(1.65rem,2.3vw,2.35rem); }
    .carousel-text-desc { font-size:clamp(.92rem,1.02vw,1.02rem); margin:.45rem 0 .7rem; line-height:1.5; }
    .carousel-eyebrow { margin-bottom:.35rem; }
    .carousel-footer { min-height:47px; padding-top:7px; }
    .carousel-nav-row button { width:40px; height:40px; min-width:40px; }
    .social-btn { width:38px; height:38px; min-width:38px; flex-basis:38px; }

    /* A shorter preview of the full, searchable topic directory. */
    .topic-toolbar { margin-bottom:.5rem; }
    .topic-cloud-stage { padding:.65rem .9rem; }
    .topic-cloud-all { gap:.3rem .4rem; }
    .cloud-word { min-height:32px; padding:.3rem .6rem; }
    .topic-cloud-bottom { margin-top:.45rem; }
    .path-item { padding:.75rem .85rem; }
    .how-card { gap:.8rem; }
    .account-card { margin-top:11px; }

    @media(max-width:1100px) {
      :root { --carousel-height:300px; }
      .home-hero-copy { grid-template-columns:minmax(0,1fr) minmax(260px,.8fr); column-gap:18px; }
      .home-hero h1 { font-size:clamp(1.65rem,2.8vw,2.1rem); }
      .hero-actions { justify-content:flex-end; }
      .hero-btn { font-size:.78rem; padding:.6rem .7rem; }
    }
    @media(max-width:900px) {
      .home-hero-copy { grid-template-columns:1fr; grid-template-rows:auto; gap:8px; }
      .home-hero-copy > .section-kicker,
      .home-hero h1,.home-hero-lead,.hero-actions,.home-hero-facts { grid-column:1; grid-row:auto; }
      .hero-actions,.home-hero-facts { justify-content:flex-start; }
      .home-hero-facts { display:flex; }
    }
    @media(max-width:768px) {
      :root { --carousel-height:auto; --header-min-h:64px; }
      .header-inner { min-height:64px; padding-top:6px; padding-bottom:6px; }
      .brand .brand-img { max-height:48px; max-width:110px; }
      .home-shell { margin-top:9px; }
      .home-shell > section { margin-top:10px; }
      .home-hero-copy { padding:16px; gap:8px; }
      .home-hero h1 { font-size:clamp(1.5rem,5vw,2rem); }
      .home-hero-lead { font-size:.91rem; }
      .home-hero-facts { display:flex; font-size:.72rem; }
      .carousel-card .carousel-inner { height:auto; }
      .carousel-card .owl-carousel .item { min-height:345px; }
      .carousel-img-wrap { flex:0 0 150px; min-height:150px; height:150px; }
      .carousel-img-wrap img { min-height:150px; height:150px!important; }
      .carousel-text-title { font-size:clamp(1.2rem,4vw,1.55rem); }
      .carousel-footer { min-height:0; }
    }
    @media(max-width:520px) {
      .home-hero-copy { padding:14px; }
      .home-hero h1 { font-size:1.55rem; }
      .home-hero-facts { gap:.2rem .55rem; }
      .hero-actions { display:flex; flex-direction:row; flex-wrap:wrap; }
      .hero-btn { flex:0 1 auto; width:auto; min-height:40px; white-space:normal; }
      .carousel-card .owl-carousel .item { min-height:335px; }
      .carousel-img-wrap { flex-basis:145px; min-height:145px; height:145px; }
      .carousel-img-wrap img { min-height:145px; height:145px!important; }
      .carousel-text { padding:.8rem 1rem 1rem; }
      .home-hero-facts span { white-space:nowrap; }
    }

    /* V4.3: a single, left-aligned introduction. The carousel and all other sections are unchanged. */
    .home-hero-copy {
      display:flex;
      flex-direction:column;
      align-items:flex-start;
      justify-content:center;
      gap:9px;
      padding:clamp(20px,2vw,30px) clamp(22px,2.5vw,38px);
    }
    .home-hero-copy > .section-kicker { margin:0; }
    .home-hero h1 {
      margin:0;
      max-width:100%;
      font-size:clamp(1.7rem,2.15vw,2.3rem);
      line-height:1.17;
      letter-spacing:-.02em;
    }
    .home-hero-lead {
      max-width:710px;
      margin:0;
      font-size:clamp(.95rem,1.02vw,1.03rem);
      line-height:1.5;
    }
    .hero-actions {
      display:flex;
      flex-direction:row;
      flex-wrap:wrap;
      justify-content:flex-start;
      align-items:center;
      gap:9px;
      margin:5px 0 0;
    }
    .hero-btn { flex:0 0 auto; width:auto; min-height:42px; padding:.68rem .95rem; font-size:.85rem; }
    .home-hero-facts {
      display:flex;
      flex-wrap:wrap;
      justify-content:flex-start;
      align-items:center;
      gap:7px 20px;
      width:min(100%,800px);
      margin:6px 0 0;
      padding-top:12px;
      border-top:1px solid #e7e8ec;
      font-size:.77rem;
      font-weight:500;
    }
    @media(max-width:900px) {
      .home-hero-copy { gap:9px; }
      .hero-actions,.home-hero-facts { justify-content:flex-start; }
    }
    @media(max-width:520px) {
      .home-hero-copy { padding:16px; gap:8px; }
      .home-hero h1 { font-size:clamp(1.5rem,5.2vw,1.9rem); }
      .home-hero-lead { font-size:.91rem; }
      .hero-actions { margin-top:4px; gap:8px; }
      .hero-btn { flex:0 1 auto; width:auto; min-height:40px; white-space:normal; }
      .home-hero-facts { margin-top:4px; padding-top:10px; gap:6px 12px; font-size:.72rem; }
      .home-hero-facts span { white-space:normal; }
    }

    /* V4.4 — brand-forward single-row header, compact introduction, prominent carousel. */
    :root { --header-min-h:94px; --carousel-height:410px; }
    .site-header { min-height:0; border-bottom:1px solid #e5e7eb; box-shadow:0 2px 12px rgba(18,32,51,.045); }
    .header-inner {
      max-width:1540px; width:100%; min-height:94px;
      padding:5px clamp(14px,2.1vw,38px); gap:clamp(14px,1.6vw,28px);
      justify-content:initial; flex-wrap:nowrap;
    }
    .brand { flex:0 0 auto; min-width:0; padding:0; line-height:0; }
    .brand picture { display:block; line-height:0; }
    .brand .brand-img {
      display:block; width:auto; height:auto; max-width:190px; max-height:84px;
      object-fit:contain; object-position:left center;
    }
    .site-header .top-nav { flex:1 1 auto; min-width:0; margin-left:auto; justify-content:flex-end; flex-wrap:nowrap; gap:clamp(1px,.35vw,7px); }
    .site-header .top-nav a { font-size:clamp(.82rem,.94vw,.94rem); padding:.65rem clamp(.4rem,.7vw,.75rem); white-space:nowrap; }
    .site-header .top-nav .push-right { margin-left:0; }
    .site-header .auth-controls { display:flex; align-items:center; justify-content:flex-end; flex:0 0 auto; width:auto; gap:8px; margin:0; order:initial; }
    .site-header .auth-btn {
      min-height:39px; padding:9px 14px; border-radius:9px; font-size:.85rem; font-weight:650;
      line-height:1.1; white-space:nowrap;
    }
    .site-header .auth-btn.login { color:#273449; background:#fff; border:1px solid #d9dee7; }
    .site-header .auth-btn.register { color:#fff; background:#b52a31; border:1px solid #b52a31; }
    .site-header .auth-btn.logout { color:#273449; background:#f4f6f9; border:1px solid #d9dee7; }
    .site-header .auth-user-pill { color:#344054; background:#f5f6f8; border:1px solid #e1e5ea; padding:7px 10px; font-size:.78rem; }
    .site-header .auth-user-pill .avatar { background:#dfe6ef; border-color:#dfe6ef; }
    .site-header #hamburger { order:3; flex:0 0 40px; }

    .home-shell { margin-top:14px; }
    .home-shell > section { margin-top:12px; }
    .home-hero { display:block; }
    .home-hero-copy {
      display:flex; flex-direction:column; align-items:flex-start; justify-content:center;
      gap:7px; padding:17px clamp(22px,2.5vw,36px);
      border-radius:16px; box-shadow:0 4px 16px rgba(20,30,45,.03);
    }
    .home-hero-copy > .section-kicker { margin:0; font-size:.7rem; }
    .home-hero h1 { margin:0; max-width:none; font-size:clamp(1.7rem,2.1vw,2.15rem); line-height:1.16; letter-spacing:-.02em; }
    .home-hero-lead { margin:0; max-width:100ch; font-size:clamp(.9rem,.98vw,.99rem); line-height:1.43; }
    .hero-actions { margin:3px 0 0; gap:8px; }
    .hero-btn { min-height:39px; padding:.58rem .87rem; font-size:.83rem; }
    .home-hero-facts { margin:3px 0 0; padding-top:8px; gap:6px 20px; width:auto; font-size:.75rem; }

    .carousel-card { padding:clamp(12px,1.45vw,20px); border:1px solid #e4e8ee; box-shadow:0 8px 25px rgba(25,35,55,.055); }
    .carousel-card .section-heading { margin-bottom:12px; }
    .carousel-card .section-heading h2 { font-size:clamp(1.38rem,1.9vw,1.8rem)!important; }
    .carousel-card .carousel-inner { height:var(--carousel-height); border-radius:18px; }
    .carousel-card .owl-carousel .item { height:100%; min-height:0; gap:0; padding:0; }
    .carousel-text { flex:1 1 47%; padding:clamp(24px,3vw,46px); padding-right:clamp(10px,1.2vw,20px); }
    .carousel-img-wrap { flex:0 0 53%; width:53%; height:100%; min-height:100%; border-radius:37% 0 0 37% / 100% 0 0 100%; }
    .carousel-img-wrap img,.carousel-img-wrap.is-portrait img { width:100%!important; height:100%!important; min-height:100%; max-height:none!important; object-fit:cover!important; }
    .carousel-text-title { font-size:clamp(1.85rem,2.6vw,2.75rem); line-height:1.12; }
    .carousel-text-desc { font-size:clamp(.99rem,1.12vw,1.12rem); line-height:1.56; margin:.7rem 0 1.05rem; }
    .carousel-eyebrow { margin-bottom:.7rem; }
    .carousel-more a { min-height:46px; padding:.75rem 1.15rem; font-size:.94rem; }
    .carousel-footer { min-height:51px; padding-top:9px; }

    /* Keep navigation accessible without sacrificing the logo on narrower screens. */
    @media(max-width:1100px) {
      :root { --carousel-height:385px; --header-min-h:82px; }
      .header-inner { min-height:82px; }
      .brand .brand-img { max-height:73px; max-width:165px; }
      .site-header #hamburger { display:inline-flex; margin-left:0; }
      .site-header .top-nav {
        position:absolute; top:100%; left:0; right:0; z-index:1200;
        display:none!important; flex-direction:column; align-items:stretch;
        padding:9px 15px 15px; gap:4px; background:#fff;
        border:1px solid #e7eaf0; border-top:0; box-shadow:0 12px 20px rgba(16,24,40,.1);
      }
      .site-header .top-nav.open { display:flex!important; }
      .site-header .top-nav a { padding:12px 14px; font-size:.92rem; white-space:normal; }
      .site-header .auth-controls { margin-left:auto; }
      .carousel-text { flex-basis:48%; padding:clamp(20px,2.5vw,30px); }
      .carousel-img-wrap { flex-basis:52%; width:52%; }
      .carousel-text-title { font-size:clamp(1.7rem,2.65vw,2.3rem); }
    }
    @media(max-width:768px) {
      :root { --carousel-height:auto; --header-min-h:72px; }
      .header-inner { min-height:72px; padding:6px 12px; gap:10px; }
      .brand .brand-img { max-height:62px; max-width:135px; }
      .site-header .auth-btn { min-height:36px; padding:8px 11px; font-size:.79rem; }
      .site-header .auth-user-pill { max-width:155px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
      .home-shell { margin-top:10px; }
      .home-hero-copy { padding:15px 17px; gap:7px; }
      .home-hero h1 { font-size:clamp(1.5rem,4.8vw,1.9rem); }
      .home-hero-lead { font-size:.9rem; }
      .home-hero-facts { display:flex; }
      .carousel-card .carousel-inner { height:auto; }
      .carousel-card .owl-carousel .item { height:auto; min-height:420px; display:flex; flex-direction:column; }
      .carousel-img-wrap { order:1; flex:0 0 205px; width:100%; height:205px; min-height:205px; max-height:none; border-radius:0 0 0 25% / 0 0 0 36%; }
      .carousel-img-wrap img,.carousel-img-wrap.is-portrait img { min-height:205px; height:205px!important; }
      .carousel-text { order:2; flex:1 1 auto; width:100%; padding:18px 20px 20px; }
      .carousel-text-title { font-size:clamp(1.45rem,4.7vw,1.85rem); }
      .carousel-text-desc { font-size:.94rem; line-height:1.47; margin:.45rem 0 .7rem; }
      .carousel-eyebrow { margin-bottom:.35rem; }
      .carousel-more a { min-height:42px; padding:.6rem .85rem; font-size:.85rem; }
    }
    @media(max-width:520px) {
      :root { --header-min-h:64px; }
      .header-inner { min-height:64px; gap:7px; padding:5px 10px; }
      .brand .brand-img { max-height:54px; max-width:113px; }
      .site-header .auth-controls { gap:5px; }
      .site-header .auth-btn { padding:7px 8px; font-size:.72rem; min-height:34px; }
      .site-header #hamburger { width:36px; height:36px; flex-basis:36px; border-radius:8px; }
      .site-header .auth-user-pill { max-width:95px; font-size:.7rem; padding:6px; }
      .site-header .auth-user-pill .avatar { display:none; }
      .home-hero-copy { padding:13px 14px; }
      .home-hero h1 { font-size:clamp(1.42rem,5.5vw,1.7rem); }
      .home-hero-lead { font-size:.86rem; }
      .home-hero-facts { font-size:.7rem; gap:4px 11px; }
      .carousel-card .owl-carousel .item { min-height:405px; }
      .carousel-img-wrap { flex-basis:185px; height:185px; min-height:185px; }
      .carousel-img-wrap img,.carousel-img-wrap.is-portrait img { height:185px!important; min-height:185px; }
      .carousel-text { padding:15px 16px 17px; }
      .carousel-text-title { font-size:1.42rem; }
      .carousel-text-desc { font-size:.88rem; }
    }

  
    /* STMIE Homepage V5: integrated hero + featured carousel, compact navigation */
    .site-header .header-inner{min-height:66px}
    .site-header .brand-img{max-height:52px;width:auto;object-fit:contain}
    .home-shell{display:flex;flex-direction:column;gap:clamp(12px,1.6vw,22px)}
    .v5-hero-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(12px,1.5vw,20px);align-items:stretch}
    .v5-hero-layout>.home-hero{display:block;min-width:0;height:100%}
    .v5-hero-layout .home-hero-copy{height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:clamp(10px,1.2vw,16px);padding:clamp(20px,2.6vw,38px)}
    .v5-hero-layout .home-hero-copy>*{margin-top:0;margin-bottom:0;grid-column:auto;grid-row:auto}
    .v5-hero-layout .home-hero h1{font-size:clamp(1.85rem,2.75vw,3.15rem);line-height:1.12;max-width:18ch}
    .v5-hero-layout .home-hero-lead{font-size:clamp(.94rem,1.1vw,1.07rem);line-height:1.6;max-width:54ch}
    .v5-hero-layout .hero-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:9px}
    .v5-hero-layout .hero-btn{min-height:43px;padding:.75rem 1rem;width:auto}
    .v5-hero-layout .home-hero-facts{display:flex;justify-content:flex-start;gap:6px 13px;flex-wrap:wrap;font-size:.76rem;padding-top:10px;margin-top:3px;border-top:1px solid #e7e9ee}
    .v5-hero-layout>.carousel-card{margin:0;min-width:0;display:flex;flex-direction:column;padding:clamp(13px,1.6vw,20px)}
    .v5-hero-layout .carousel-card .section-heading{margin-bottom:9px}
    .v5-hero-layout .carousel-card .section-heading h2{font-size:clamp(1.18rem,1.55vw,1.6rem)}
    .v5-hero-layout .carousel-card .section-heading>p{display:none}
    .v5-hero-layout .carousel-card .carousel{flex:1;min-height:0}
    .v5-hero-layout .carousel-card .carousel-inner{min-height:275px;height:100%}
    .v5-hero-layout .carousel-card .owl-carousel .item{min-height:275px;padding:1.1rem 1.6rem;gap:.9rem}
    .v5-hero-layout .carousel-text-title{font-size:clamp(1.15rem,1.6vw,1.65rem)}
    .v5-hero-layout .carousel-text-desc{font-size:.9rem;line-height:1.48}
    .v5-hero-layout .carousel-img-wrap{flex-basis:38%}
    .v5-hero-layout .carousel-img-wrap img{max-height:245px}
    .v5-hero-layout .carousel-footer{margin-top:auto}
    .topics-section .topic-toolbar{gap:12px}
    .topics-section #topicSearch{min-width:min(320px,75vw)}
    .paths-card .path-grid{gap:12px}
    .how-card .how-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
    .how-card .how-step{min-width:0}
    @media(max-width:1050px){
      .v5-hero-layout{grid-template-columns:1fr}
      .v5-hero-layout .home-hero h1{max-width:32ch}
      .v5-hero-layout .carousel-card .carousel-inner{min-height:280px}
    }
    @media(max-width:700px){
      .site-header .header-inner{min-height:60px}
      .v5-hero-layout .home-hero-copy{padding:20px;gap:11px}
      .v5-hero-layout .home-hero h1{font-size:clamp(1.65rem,6vw,2.3rem)}
      .v5-hero-layout .carousel-card .owl-carousel .item{flex-direction:column;padding:15px;gap:8px}
      .v5-hero-layout .carousel-img-wrap{order:1;width:100%;max-height:165px;flex-basis:auto}
      .v5-hero-layout .carousel-img-wrap img{max-height:160px}
      .v5-hero-layout .carousel-text{order:2;width:100%}
      .v5-hero-layout .carousel-card .carousel-inner{min-height:0}
      .how-card .how-steps{grid-template-columns:1fr}
    }
    @media(max-width:430px){
      .v5-hero-layout .hero-actions{width:100%;flex-direction:column}
      .v5-hero-layout .hero-btn{width:100%}
      .v5-hero-layout .home-hero-facts{font-size:.7rem}
    }

  
    /* STMIE V6 — unified top section and balanced brand/header */
    :root{--header-min-h:78px}
    .site-header .header-inner{max-width:1680px;min-height:78px;padding:8px clamp(16px,3.5vw,60px)}
    .site-header .brand{flex:0 0 auto;min-width:104px}
    .site-header .brand picture{display:flex;align-items:center}
    .site-header .brand .brand-img{display:block;width:auto;height:66px;max-height:66px;max-width:122px;object-fit:contain}
    .site-header .top-nav{align-items:center}
    .site-header .top-nav a.admin-btn{padding:.55rem .7rem}
    .site-header .top-nav .admin-glyph{font-size:1.22rem}
    .v5-hero-layout{grid-template-columns:minmax(0,.91fr) minmax(0,1.09fr);gap:0;background:#fff;border:1px solid #e2e5eb;border-radius:20px;box-shadow:0 6px 22px rgba(24,35,50,.035);overflow:hidden}
    .v5-hero-layout>.home-hero,.v5-hero-layout>.carousel-card{border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;margin:0!important}
    .v5-hero-layout>.home-hero{min-height:430px}
    .v5-hero-layout .home-hero-copy{padding:clamp(28px,3.1vw,54px);justify-content:center;gap:clamp(12px,1.3vw,19px)}
    .v5-hero-layout .home-hero h1{font-size:clamp(2.1rem,3.0vw,3.5rem);max-width:17ch;line-height:1.13}
    .v5-hero-layout .home-hero-lead{max-width:52ch}
    .v5-hero-layout>.carousel-card{border-left:1px solid #e8e9ed!important;padding:clamp(18px,2.1vw,30px)}
    .v5-hero-layout .carousel-card .section-heading{margin-bottom:12px}
    .v5-hero-layout .carousel-card .carousel-inner{min-height:270px}
    .v5-hero-layout .carousel-card .owl-carousel .item{border:1px solid #e9ebef;border-radius:14px;min-height:265px}
    .v5-hero-layout .carousel-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px}
    .v5-hero-layout .carousel-dots,.v5-hero-layout .carousel-nav-row{margin:0}
    .v6-social-area{display:flex;justify-content:center;position:relative;margin:-4px auto 2px}
    .v6-social-area .social-bar{margin:0 auto;padding:5px 8px;border-radius:11px}
    .v6-social-area .social-btn{width:36px;height:36px;min-width:36px;flex-basis:36px}
    .v6-social-area .social-panel{position:absolute;top:100%;left:50%;right:auto;transform:translateX(-50%);z-index:30}
    .v6-social-area .social-panel.open{transform:translateX(-50%)}
    @media(max-width:1050px){
      .v5-hero-layout{grid-template-columns:1fr}
      .v5-hero-layout>.home-hero{min-height:0}
      .v5-hero-layout>.carousel-card{border-left:0!important;border-top:1px solid #e8e9ed!important}
      .v5-hero-layout .home-hero h1{max-width:28ch}
    }
    @media(max-width:700px){
      :root{--header-min-h:66px}
      .site-header .header-inner{min-height:66px;padding:7px 14px}
      .site-header .brand .brand-img{height:49px;max-height:49px;max-width:94px}
      .v5-hero-layout{border-radius:15px}
      .v5-hero-layout .home-hero-copy{padding:23px}
      .v5-hero-layout>.carousel-card{padding:17px}
      .v6-social-area .social-panel{width:min(95vw,650px)}
    }

  
    /* STMIE V7 — refined, responsive homepage */
    .site-header .header-inner{min-height:70px;padding-top:7px;padding-bottom:7px}
    .site-header .brand{min-width:0;line-height:1;display:inline-flex;align-items:center;text-decoration:none}
    .v7-wordmark{display:flex;align-items:baseline;gap:.28em;white-space:nowrap;color:#12151b;font-family:"Montserrat","Poppins",Arial,sans-serif;font-size:clamp(17px,1.55vw,24px);font-weight:800;letter-spacing:-.035em;line-height:1.12}
    .v7-wordmark-red{color:#a52d34;font-weight:900}
    .v5-hero-layout>.home-hero{min-height:0}
    .v5-hero-layout .home-hero-copy{padding:clamp(20px,2.4vw,36px);gap:12px}
    .v5-hero-layout .home-hero h1{font-size:clamp(2rem,2.65vw,3.1rem);line-height:1.12}
    .v5-hero-layout .home-hero-lead{line-height:1.55}
    .v5-hero-layout>.carousel-card{padding:clamp(16px,1.7vw,25px)}
    .v5-hero-layout .carousel-card .carousel-inner{min-height:240px}
    .v5-hero-layout .carousel-card .owl-carousel .item{min-height:240px;padding:1rem 1.4rem}
    .v5-hero-layout .carousel-img-wrap img{max-height:225px}
    .v5-hero-layout .carousel-footer{min-height:45px;padding-top:7px}
    .topics-section .section-heading{margin-bottom:9px}
    .topics-section .topic-toolbar{display:flex;align-items:end;justify-content:space-between;gap:12px}
    .topics-section .topic-search-label{min-width:min(330px,100%)}
    .topics-section #topicSearch{width:100%;min-width:0}
    .topics-section .topic-cloud-stage{padding:clamp(13px,1.5vw,20px)}
    .topics-section .topic-cloud-all{gap:7px}
    .topics-section .cloud-word{padding:.47rem .68rem;min-height:36px}
    .paths-card .path-item{display:flex;flex-direction:column;gap:7px}
    .paths-card .path-item a{margin-top:auto}
    .how-card{display:block}
    .how-card h2{font-size:1.22rem;margin:0 0 14px;min-width:0}
    .how-card .how-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
    .site-footer{max-width:var(--container);padding:18px clamp(16px,3vw,36px);margin:16px auto 0;border-top:1px solid #e2e6ed;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px 25px;align-items:center}
    .v7-footer-brand{display:flex;flex-direction:column;gap:4px;white-space:nowrap}
    .v7-footer-brand strong{font-size:.86rem;color:#161b25;letter-spacing:-.025em}
    .v7-footer-brand strong span{color:#a52d34}
    .v7-footer-brand small{font-size:.73rem;color:#64748b}
    .v7-footer-social{position:relative;min-width:0}
    .v7-footer-social .social-bar{position:static;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;width:auto;margin:0;padding:0;background:transparent;border:0;box-shadow:none;transform:none;overflow:visible}
    .v7-footer-social .social-btn{width:34px;height:34px;min-width:34px;flex-basis:34px}
    .v7-footer-social .social-panel{position:absolute;top:auto;bottom:calc(100% + 12px);left:50%;right:auto;transform:translateX(-50%);z-index:60}
    .v7-footer-social .social-panel.open{transform:translateX(-50%)}
    @media(max-width:1050px){
      .v5-hero-layout .home-hero-copy{padding:25px}
      .v5-hero-layout .carousel-card .carousel-inner{min-height:245px}
    }
    @media(max-width:700px){
      .site-header .header-inner{min-height:62px}
      .v7-wordmark{font-size:clamp(13px,3.5vw,18px);gap:.18em;letter-spacing:-.04em}
      .v5-hero-layout .home-hero-copy{padding:20px}
      .topics-section .topic-toolbar{align-items:stretch}
      .topics-section .topic-search-label{width:100%}
      .how-card .how-steps{grid-template-columns:1fr}
      .site-footer{grid-template-columns:1fr;justify-items:center;text-align:center;gap:14px}
      .site-footer nav{justify-content:center;flex-wrap:wrap}
      .v7-footer-social .social-panel{width:min(94vw,600px)}
    }
    @media(max-width:430px){
      .v7-wordmark{font-size:12px}
    }

  
    /* STMIE V8: final layout and accessibility polish */
    .v5-hero-layout .home-hero-copy{padding:clamp(18px,2vw,30px);gap:10px}
    .v5-hero-layout .home-hero h1{font-size:clamp(1.95rem,2.55vw,2.95rem)}
    .v5-hero-layout .home-hero-lead{line-height:1.48}
    .v5-hero-layout .home-hero-facts{padding-top:8px;gap:5px 11px}
    .v5-hero-layout>.carousel-card{padding:clamp(14px,1.5vw,22px)}
    .v5-hero-layout .carousel-card .carousel-inner{height:265px;min-height:0}
    .v5-hero-layout .carousel-card .owl-carousel .item{min-height:265px}
    .v5-hero-layout .carousel-img-wrap img{max-height:225px}
    .v5-hero-layout .carousel-footer{min-height:40px;padding-top:5px}
    .topics-section .section-heading{margin-bottom:5px}
    .topics-section .topic-toolbar{margin-top:-3px;margin-bottom:10px;align-items:center}
    .topics-section .topic-scope{margin:0}
    .topics-section .topic-search-label{gap:4px}
    .topics-section .topic-cloud-stage{padding:15px 18px}
    .paths-card .path-item{min-height:155px;padding:14px 16px}
    .paths-card .path-item .status-subline{margin-top:3px}
    .paths-card .path-item a{color:#a72d34}
    .dashboard-card .dashboard-item a,.dashboard-card .dashboard-item a:link,.dashboard-card .dashboard-item a:visited{color:#a52d34!important;opacity:1!important;font-weight:750;text-decoration:none}
    .dashboard-card .dashboard-item a:hover,.dashboard-card .dashboard-item a:focus-visible{color:#7d2027!important;text-decoration:underline}
    .dashboard-card .dashboard-item a:focus-visible{outline:2px solid #a52d34;outline-offset:4px;border-radius:3px}
    .site-footer{max-width:var(--container);margin:14px auto 0;padding:18px clamp(18px,3vw,38px);grid-template-columns:minmax(0,1fr) auto auto;justify-items:stretch;gap:20px}
    .site-footer .v7-footer-brand{justify-self:start}
    .site-footer .v7-footer-social{justify-self:center}
    .site-footer nav{justify-self:end;display:flex;gap:20px;align-items:center}
    @media(max-width:1050px){
      .v5-hero-layout .carousel-card .carousel-inner{height:auto;min-height:250px}
      .v5-hero-layout .carousel-card .owl-carousel .item{min-height:250px}
    }
    @media(max-width:700px){
      .v5-hero-layout .carousel-card .carousel-inner{height:auto;min-height:0}
      .v5-hero-layout .carousel-card .owl-carousel .item{min-height:0}
      .topics-section .topic-toolbar{margin-top:0;align-items:stretch}
      .paths-card .path-item{min-height:0}
      .site-footer{grid-template-columns:1fr;justify-items:center;gap:13px;text-align:center}
      .site-footer .v7-footer-brand,.site-footer .v7-footer-social,.site-footer nav{justify-self:center}
    }

  
    /* STMIE V9 — final rhythm, discovery and accessibility refinements */
    .home-shell{gap:clamp(18px,1.5vw,26px);margin-top:16px;margin-bottom:24px}
    .home-shell>section{margin-top:0}
    .v5-hero-layout .home-hero-copy{padding:clamp(20px,1.8vw,28px);gap:10px}
    .v5-hero-layout .home-hero h1{font-size:clamp(1.9rem,2.45vw,2.85rem)}
    .v5-hero-layout .home-hero-lead{line-height:1.48}
    .v5-hero-layout>.carousel-card{padding:clamp(14px,1.45vw,22px)}
    .v5-hero-layout .carousel-card .carousel-inner{height:248px;min-height:0}
    .v5-hero-layout .carousel-card .owl-carousel .item{min-height:248px}
    .v5-hero-layout .carousel-img-wrap{flex-basis:35%}
    .v5-hero-layout .carousel-img-wrap img{max-height:210px}
    .v5-hero-layout .carousel-text{min-width:0}
    .topics-section,.paths-card,.how-card,.dashboard-card,.account-card{padding:clamp(19px,1.6vw,27px)}
    .v9-topic-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}
    .v9-topic-heading{display:flex;flex-direction:column;gap:5px;min-width:0}
    .v9-topic-heading .section-kicker,.v9-topic-heading h2,.v9-topic-heading p{margin:0}
    .v9-topic-heading h2{font-size:clamp(1.3rem,1.65vw,1.55rem)}
    .v9-topic-heading>p:last-child{font-size:.87rem;color:#4b5870}
    .topics-section .topic-search-label{flex:0 1 360px;min-width:250px;display:flex;flex-direction:column;gap:5px;font-size:.8rem;color:#35445a}
    .topics-section #topicSearch{min-width:0;width:100%;min-height:42px}
    .topics-section .topic-cloud-stage{padding:15px 18px}
    .topics-section .topic-cloud-all{gap:8px}
    .paths-card .path-grid{gap:15px}
    .paths-card .path-item{min-height:135px;padding:16px;gap:6px}
    .paths-card .path-item a{margin-top:auto}
    .paths-card .path-item .status-chip{align-self:flex-start}
    .how-card h2{margin-bottom:15px}
    .dashboard-card .dashboard-grid{gap:15px}
    .dashboard-card .dashboard-item a:focus-visible,.paths-card .path-item a:focus-visible,.cloud-word:focus-visible,.topic-show-more:focus-visible,.hero-btn:focus-visible{outline:3px solid #a52d34;outline-offset:3px;border-radius:5px}
    .dashboard-card .dashboard-item p,.dashboard-card .dashboard-pill,.topic-cloud-bottom,.how-step small{color:#475569}
    @media(max-width:1050px){
      .v5-hero-layout .carousel-card .carousel-inner{height:auto;min-height:245px}
      .v5-hero-layout .carousel-card .owl-carousel .item{min-height:245px}
    }
    @media(max-width:700px){
      .home-shell{gap:14px;margin-top:10px}
      .v9-topic-header{align-items:stretch;flex-direction:column;gap:12px}
      .topics-section .topic-search-label{flex:auto;min-width:0;width:100%}
      .v5-hero-layout .carousel-card .carousel-inner{height:auto;min-height:0}
      .v5-hero-layout .carousel-card .owl-carousel .item{min-height:0}
      .paths-card .path-item{min-height:0}
    }

  
    /* V9.1: shorter pathway cards and explicit dashboard progress */
    .paths-card .path-item{min-height:116px;padding:12px 15px;gap:5px}
    .paths-card .path-grid{gap:13px}
    .paths-card .path-item p{line-height:1.35}
    .paths-card .path-item a{min-height:26px}
    .paths-card .path-item .status-subline{margin-top:1px}
    .dashboard-card .dashboard-stats{gap:7px;flex-wrap:wrap}
    @media(max-width:700px){.paths-card .path-item{min-height:0;padding:12px}}

  
    /* STMIE V10 — first-time learner discovery, less boxed-in page rhythm */
    .home-shell{gap:0;margin-bottom:36px}
    .home-shell > section{margin-top:clamp(24px,2.3vw,34px)}
    .home-shell > .v5-hero-layout + .topics-section{margin-top:clamp(26px,2.6vw,38px)}
    .v5-hero-layout{box-shadow:0 8px 30px rgba(25,35,50,.045)}
    .v5-hero-layout .home-hero-copy{gap:12px}
    .v10-skill-chooser{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:18px 0 18px}
    .v10-skill-btn{appearance:none;border:1px solid #e0e5ed;border-radius:13px;background:#fff;padding:13px 14px;min-height:82px;text-align:left;display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-content:center;cursor:pointer;color:#182438;transition:border-color .15s,background .15s,transform .15s}
    .v10-skill-btn:hover{border-color:#b24b51;transform:translateY(-1px)}
    .v10-skill-btn.active{border-color:#a52d34;background:#fff4f4;box-shadow:inset 0 0 0 1px #a52d34}
    .v10-skill-icon{grid-row:1/3;width:32px;height:32px;border-radius:10px;background:#f5e6e7;color:#a52d34;display:grid;place-items:center;font-weight:800}
    .v10-skill-btn strong{font-size:.94rem;line-height:1.25}
    .v10-skill-btn small{font-size:.74rem;color:#526075;line-height:1.35}
    .v10-skill-btn:focus-visible{outline:3px solid #a52d34;outline-offset:3px}
    .topics-section{padding:clamp(20px,2.1vw,32px)!important}
    .topics-section .topic-cloud-stage{background:#fafbfc;border-color:#e8ebef}
    .paths-card{border:0!important;box-shadow:none!important;background:transparent!important;padding:4px 0!important}
    .paths-card .path-grid{gap:14px}
    .paths-card .path-item{background:#fff;box-shadow:0 3px 12px rgba(25,35,50,.025);min-height:118px}
    .how-card{background:#f1f3f6!important;box-shadow:none!important;border-color:transparent!important}
    .how-card .how-step{background:#fff}
    .account-card{border:1px solid #ecd9da!important;background:#fff8f8!important;box-shadow:none!important}
    .account-card h2{font-weight:750}
    .account-card .register-cta{white-space:nowrap}
    @media(max-width:1050px){.v10-skill-chooser{grid-template-columns:repeat(3,minmax(0,1fr))}}
    @media(max-width:700px){.v10-skill-chooser{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.v10-skill-btn{padding:11px;min-height:74px}.v10-skill-btn small{font-size:.7rem}.home-shell > section{margin-top:23px}}
    @media(max-width:370px){.v10-skill-chooser{grid-template-columns:1fr}}

    /* V13.1: ensure database-managed slide descriptions remain visible. */
    .v5-hero-layout .carousel-card .owl-carousel .item .carousel-text-desc {
      display: block !important;
      visibility: visible !important;
      opacity: 1 !important;
      height: auto !important;
      max-height: none !important;
      overflow: visible !important;
      -webkit-line-clamp: unset !important;
      margin: .55rem 0 .85rem;
      color: #475569;
      line-height: 1.5;
      flex: 0 0 auto;
    }
