@font-face{font-family:Inter;src:url('/fonts/inter-latin-wght-normal.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:'Source Serif 4';src:url('/fonts/source-serif-4-latin-wght-normal.woff2') format('woff2');font-weight:200 900;font-display:swap}
:root{--slate:#1f2a2e;--slate2:#2b393d;--sage:#6b8362;--sage2:#dfe7d9;--ivory:#f8f5ec;--paper:#fffdf8;--terra:#c66c4b;--terra2:#f2ded5;--teal:#3f7f85;--teal2:#dceced;--mustard:#e0b54a;--mustard2:#f7edce;--ink:#182022;--muted:#647074;--line:#dcd9cf;--safe:#3f7354;--danger:#ad503d;--shadow:0 18px 55px rgba(31,42,46,.10);--radius:24px;--serif:'Source Serif 4',Georgia,serif;--sans:Inter,system-ui,sans-serif}
*{box-sizing:border-box}html{background:var(--ivory);color:var(--ink);font-family:var(--sans);-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;min-height:100vh;background:linear-gradient(180deg,#fbf8f1 0,#f4f1e9 100%)}button,a{font:inherit}button{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid rgba(63,127,133,.42);outline-offset:3px}[hidden]{display:none!important}
.sitebar{height:68px;padding:10px clamp(16px,4vw,44px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(248,245,236,.94);backdrop-filter:blur(14px);position:sticky;top:0;z-index:50}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--sage);color:white;font-weight:900;font-size:13px;letter-spacing:.04em}.brand strong{font-family:var(--serif);font-size:21px}.private-chip{font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:850;padding:7px 10px;border-radius:999px;background:var(--slate);color:white}.site-actions{display:flex;align-items:center;gap:10px}.site-actions a{font-size:12px;font-weight:750;text-decoration:none;color:var(--slate)}
.landing{max-width:1180px;margin:0 auto;padding:clamp(34px,6vw,76px) clamp(18px,5vw,52px) 76px;display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.88fr);gap:clamp(28px,6vw,72px);align-items:center}.eyebrow{margin:0 0 12px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:850;color:var(--sage)}.landing h1{font-family:var(--serif);font-size:clamp(44px,6.8vw,78px);line-height:.94;letter-spacing:-.035em;margin:0;max-width:780px}.landing h1 span{color:var(--terra)}.lead{font-size:clamp(19px,2.5vw,27px);line-height:1.38;margin:24px 0 12px;max-width:700px;font-weight:620;color:#2e3a3d}.sublead{max-width:680px;font-size:15px;line-height:1.7;color:var(--muted)}.facts{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 28px}.fact{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:rgba(255,255,255,.65);border-radius:999px;padding:8px 11px;font-size:11px;font-weight:750}.fact i{width:8px;height:8px;border-radius:50%;background:var(--sage)}.start-row{display:flex;gap:10px;flex-wrap:wrap}.btn{border:0;border-radius:14px;padding:14px 18px;font-weight:800;cursor:pointer;transition:.18s transform,.18s background,.18s box-shadow}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--sage);color:#fff;box-shadow:0 10px 25px rgba(107,131,98,.24)}.btn-primary:hover{background:#57724f}.btn-secondary{background:transparent;border:1px solid var(--line)}.privacy{font-size:11px;color:var(--muted);margin-top:12px}.hero-stack{position:relative}.hero-photo{position:relative;border-radius:30px;overflow:hidden;box-shadow:var(--shadow);min-height:500px;background:var(--slate)}.hero-photo img{width:100%;height:100%;min-height:500px;object-fit:cover;display:block;filter:saturate(.88) contrast(1.02)}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,rgba(31,42,46,.82) 100%)}.hero-status{position:absolute;left:18px;right:18px;bottom:18px;z-index:2;background:rgba(248,245,236,.95);border:1px solid rgba(255,255,255,.6);border-radius:18px;padding:15px 16px;display:grid;grid-template-columns:76px 1fr;gap:14px;align-items:center}.hero-temp{font-size:35px;font-weight:900;color:var(--danger);letter-spacing:-.05em}.hero-status small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:850;color:var(--muted)}.hero-status strong{font-size:14px}.hero-float{position:absolute;right:-16px;top:24px;background:var(--mustard);padding:12px 15px;border-radius:12px;transform:rotate(4deg);font-size:12px;font-weight:900;box-shadow:0 10px 26px rgba(31,42,46,.18);z-index:3}.hero-float em{font-family:var(--serif);font-size:17px}.hero-mini{position:absolute;left:-26px;top:68px;background:var(--slate);color:white;border-radius:16px;padding:11px 13px;font-size:11px;font-weight:800;z-index:3;box-shadow:0 10px 28px rgba(31,42,46,.2)}
.course{max-width:940px;margin:0 auto;padding:14px clamp(14px,4vw,26px) 70px}.topbar{position:sticky;top:68px;z-index:35;display:grid;grid-template-columns:44px 1fr 44px;gap:12px;align-items:center;padding:12px 0 14px;background:linear-gradient(180deg,var(--ivory) 72%,rgba(248,245,236,0))}.icon-btn{width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:rgba(255,253,248,.92);cursor:pointer;font-weight:850}.progress-meta{display:flex;justify-content:space-between;font-size:10px;font-weight:800;color:var(--muted);margin-bottom:6px}.progress-track{height:7px;background:#e2dfd6;border-radius:999px;overflow:hidden}.progress-fill{height:100%;width:0;background:linear-gradient(90deg,var(--sage),var(--teal));border-radius:inherit;transition:width .3s ease}.screen{max-width:780px;margin:0 auto}.card{background:var(--paper);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);overflow:hidden}.card-head{padding:clamp(22px,5vw,42px)}.kicker{font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:900;color:var(--sage);margin:0 0 9px}.title{font-family:var(--serif);font-size:clamp(34px,5.6vw,54px);line-height:1.02;letter-spacing:-.025em;margin:0 0 14px}.intro{font-size:16px;line-height:1.65;color:var(--muted);margin:0}.micro{font-size:11px;color:var(--muted);line-height:1.55}.media-card{position:relative;background:var(--slate);min-height:260px;overflow:hidden}.media-card img,.media-card video{width:100%;height:100%;min-height:260px;object-fit:cover;display:block}.media-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(31,42,46,.78) 100%);pointer-events:none}.media-tag{position:absolute;z-index:2;top:16px;left:16px;border-radius:999px;padding:7px 10px;background:rgba(248,245,236,.92);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.media-overlay{position:absolute;z-index:2;left:18px;right:18px;bottom:16px;color:white;display:flex;justify-content:space-between;align-items:end;gap:12px}.media-overlay strong{font-size:28px;letter-spacing:-.04em}.media-overlay span{font-size:11px;opacity:.85}.choices{display:grid;gap:10px;margin-top:24px}.choice{width:100%;border:1px solid var(--line);border-radius:16px;background:#fbfaf6;padding:15px 16px;text-align:left;display:grid;grid-template-columns:34px 1fr;gap:12px;cursor:pointer;transition:.16s}.choice:hover{border-color:#aab3a4;transform:translateY(-1px)}.choice .key{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:var(--sage2);font-size:11px;font-weight:900;color:var(--sage)}.choice .txt{font-size:14px;line-height:1.45;font-weight:660;padding-top:4px}.choice.correct{border-color:#8caf97;background:#edf5ee}.choice.correct .key{background:var(--safe);color:white}.choice.wrong{border-color:#d69b88;background:#fbefea}.choice.wrong .key{background:var(--danger);color:white}.feedback{border-radius:16px;padding:16px;margin-top:14px;font-size:13px;line-height:1.55}.feedback.good{background:#edf5ee;border:1px solid #bdd2c2}.feedback.bad{background:#fbefea;border:1px solid #e2b7a8}.feedback strong{display:block;margin-bottom:4px}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.continue{border:0;border-radius:13px;background:var(--slate);color:white;padding:13px 17px;font-weight:850;cursor:pointer}.continue:disabled{opacity:.35;cursor:not-allowed}.continue:hover:not(:disabled){background:var(--teal)}
.control-loop{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-top:22px}.loop-step{border:1px solid #bac4b5;background:#f3f6f0;border-radius:16px;padding:13px 10px;text-align:center;cursor:pointer;min-height:114px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px}.loop-step .n{font-size:10px;font-weight:900;color:var(--sage)}.loop-step strong{font-size:12px}.loop-step span{font-size:10px;color:var(--muted);display:none;line-height:1.35}.loop-step.open{background:var(--slate);color:white;border-color:var(--slate)}.loop-step.open span{display:block;color:#cfdbd5}.loop-step.open .n{color:var(--mustard)}
.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:22px}.metric-card{border:1px solid var(--line);border-radius:18px;background:#fff;padding:18px}.metric-value{font-size:42px;font-weight:900;letter-spacing:-.06em;color:var(--teal)}.metric-card.hot .metric-value{color:var(--terra)}.metric-card p{font-size:12px;color:var(--muted);line-height:1.5;margin:5px 0 12px}.mini-buttons{display:flex;gap:7px}.mini-buttons button{flex:1;border:1px solid var(--line);background:#f8f7f2;border-radius:10px;padding:9px 6px;font-size:10px;font-weight:850;cursor:pointer}.mini-buttons button.sel{background:var(--slate);color:white;border-color:var(--slate)}
.rule-card{margin-top:18px;border-radius:18px;padding:17px;background:var(--teal2);border:1px solid #bad5d7}.rule-card strong{color:var(--teal)}.note-card{margin-top:16px;border-left:4px solid var(--mustard);background:#fff8df;padding:14px 15px;border-radius:0 14px 14px 0;font-size:12px;line-height:1.55;color:#5d5642}.video-row{display:grid;grid-template-columns:200px 1fr;gap:18px;align-items:center;margin-top:22px}.short-video{border-radius:20px;overflow:hidden;background:var(--slate);position:relative;aspect-ratio:1}.short-video video{width:100%;height:100%;object-fit:cover;display:block;image-rendering:auto}.short-video:after{content:'AI SHORT · 3 SEC LOOP';position:absolute;left:9px;bottom:9px;background:rgba(31,42,46,.82);color:white;padding:6px 8px;border-radius:8px;font-size:8px;font-weight:900;letter-spacing:.08em}.video-copy h3{font-family:var(--serif);font-size:25px;margin:0 0 7px}.video-copy p{font-size:13px;line-height:1.55;color:var(--muted)}
.temp-diagram{margin-top:22px;border-radius:20px;background:var(--slate);color:white;padding:18px}.temp-diagram svg{width:100%;height:auto;display:block}.legend{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px;font-size:10px;color:#cfd8d4}.legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px}.legend .actual{background:var(--teal)}.legend .limit{background:var(--mustard)}
.sequence-source,.sequence-picked{display:grid;gap:8px;margin-top:18px}.seq{border:1px solid var(--line);background:#fff;border-radius:14px;padding:12px 13px;font-size:12px;font-weight:700;text-align:left;cursor:pointer}.seq:disabled{opacity:.42}.sequence-picked .seq{background:var(--sage2);border-color:#b5c5af}.seq-num{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--slate);color:white;margin-right:8px;font-size:10px}.hotspot-wrap{position:relative;margin-top:20px;border-radius:20px;overflow:hidden;background:var(--slate)}.hotspot-wrap img{width:100%;display:block;min-height:280px;object-fit:cover;filter:saturate(.78) contrast(1.02)}.hotspot{position:absolute;width:44px;height:44px;border-radius:50%;border:3px solid white;background:var(--terra);color:white;font-size:22px;font-weight:900;box-shadow:0 8px 18px rgba(0,0,0,.25);cursor:pointer;animation:pulse 1.8s infinite}.hotspot.found{background:var(--safe);animation:none}.hotspot[data-i="0"]{left:13%;top:18%}.hotspot[data-i="1"]{right:16%;top:45%}.hotspot[data-i="2"]{left:43%;bottom:14%}@keyframes pulse{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(198,108,75,.5)}50%{transform:scale(1.05);box-shadow:0 0 0 10px rgba(198,108,75,0)}}.risk-list{display:grid;gap:8px;margin-top:12px}.risk{display:none;border-radius:13px;padding:12px;background:#f7f4ec;border:1px solid var(--line);font-size:12px}.risk.show{display:block}.record-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.record{border:1px solid var(--line);background:white;border-radius:18px;padding:16px;cursor:pointer}.record h3{margin:0 0 9px;font-size:14px}.record code{font-family:var(--sans);display:block;font-size:11px;line-height:1.55;color:var(--muted);white-space:normal}.record.selected{border:2px solid var(--sage);background:#f1f6ee}.quiz-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.quiz-count{font-size:10px;font-weight:900;color:var(--muted)}.quiz-score{font-size:11px;font-weight:800;color:var(--sage)}.quiz-result{text-align:center;padding:8px 0 4px}.quiz-result .score{font-family:var(--serif);font-size:64px;line-height:1;color:var(--sage);font-weight:650}.quiz-result h3{font-size:20px}.missed{margin:14px 0;text-align:left;background:#fbefea;border:1px solid #e2b7a8;border-radius:14px;padding:12px 14px;font-size:12px;line-height:1.5}.bridge{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.bridge-step{border-radius:16px;background:#eef3ec;border:1px solid #cad7c5;padding:15px}.bridge-step b{display:block;font-size:10px;color:var(--sage);margin-bottom:5px}.bridge-step strong{font-size:12px}.bridge-step p{font-size:10px;line-height:1.45;color:var(--muted);margin:6px 0 0}.product-panel{margin-top:18px;border-radius:20px;background:var(--slate);color:white;padding:19px;display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}.product-panel h3{font-family:var(--serif);font-size:25px;margin:0 0 6px}.product-panel p{font-size:11px;color:#cbd5d1;line-height:1.5;margin:0}.product-panel a{display:inline-block;text-decoration:none;background:var(--mustard);color:var(--ink);font-size:11px;font-weight:900;padding:11px 13px;border-radius:11px}.complete-icon{width:82px;height:82px;border-radius:24px;background:var(--sage2);display:grid;place-items:center;margin-bottom:18px;color:var(--safe);font-size:38px}.reference{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:20px}.ref{border:1px solid var(--line);border-radius:14px;padding:13px;background:#fff}.ref b{display:block;font-size:18px;color:var(--teal)}.ref span{font-size:10px;color:var(--muted);line-height:1.35}.source-box{margin-top:18px;padding:14px;border-radius:14px;background:#f5f2ea;border:1px solid var(--line);font-size:10px;line-height:1.5;color:var(--muted)}.source-box a{color:var(--teal);font-weight:750}.unit-banner{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding:12px 14px;border-radius:14px;background:#edf2ea}.unit-banner .pill{background:var(--sage);color:white;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:900}.unit-banner strong{font-size:12px}.unit-banner span{font-size:10px;color:var(--muted)}
@media(max-width:800px){.landing{grid-template-columns:1fr;padding-top:30px}.hero-stack{order:-1}.hero-photo{min-height:310px}.hero-photo img{min-height:310px}.hero-float{right:8px}.hero-mini{left:8px}.landing h1{font-size:48px}.control-loop{grid-template-columns:1fr}.loop-step{min-height:0;align-items:flex-start;text-align:left}.metric-grid,.record-grid,.bridge,.reference{grid-template-columns:1fr}.video-row{grid-template-columns:130px 1fr}.product-panel{grid-template-columns:1fr}.hotspot-wrap img{min-height:250px}.site-actions .private-chip{display:none}}
@media(max-width:480px){.landing h1{font-size:42px}.hero-photo{min-height:280px}.hero-photo img{min-height:280px}.hero-status{grid-template-columns:62px 1fr}.hero-temp{font-size:29px}.card-head{padding:22px 18px}.title{font-size:36px}.video-row{grid-template-columns:1fr}.short-video{max-width:190px}.sitebar{height:62px}.topbar{top:62px}.course{padding-inline:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Course 01 mobile review fixes — hero proportions, crisp graphics, guided sequencing */
.brand{color:var(--slate)}
.hero-photo{height:500px;min-height:0}
.hero-photo img{width:100%;height:100%;min-height:0;object-fit:cover;object-position:center 36%}
.hero-photo .hero-status{max-width:calc(100% - 36px)}
.probe-lesson{margin-top:22px;border:1px solid #b8c9c2;border-radius:20px;overflow:hidden;background:#f0f2e9}
.probe-visual{background:#eef2eb}
.probe-top{display:flex;justify-content:space-between;gap:12px;padding:12px 16px;background:#203538;color:white;font-size:10px;letter-spacing:.08em;font-weight:850}
.probe-visual svg{display:block;width:100%;height:auto;max-height:360px}
.probe-animated{transform-origin:315px 204px;transition:transform .4s ease}
.probe-animated.is-active{animation:probe-step 1.6s ease-in-out both}
@keyframes probe-step{from{transform:translate(15px,-18px)}to{transform:translate(0,0)}}
.probe-core.is-active{animation:probe-ring 1.6s ease-in-out infinite}
@keyframes probe-ring{50%{stroke-width:9;opacity:.55}}
.probe-stage{display:flex;gap:16px;align-items:flex-start;padding:16px;background:#fffdf8}
.probe-stage-number{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:12px;background:var(--sage);color:white;font-weight:850}
.probe-stage strong{font-size:16px}
.probe-stage p{font-size:14px;line-height:1.55;margin:5px 0 0;color:#4b5853}
.probe-steps{padding:10px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.probe-tab{display:flex;align-items:center;justify-content:center;gap:7px;min-height:55px;padding:10px 7px;border:1px solid #c9d5ca;border-radius:12px;background:#fffdf8;font-size:12px;font-weight:750;line-height:1.3;cursor:pointer}
.probe-tab span{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:#e2eadc;color:var(--safe);font-size:11px;font-weight:900}
.probe-tab.active{background:var(--slate);border-color:var(--slate);color:white}
.probe-tab.active span{background:var(--mustard);color:#25312b}
.probe-question{margin-top:24px}
.probe-question>strong{display:block;font-size:17px;line-height:1.4}
.probe-answer{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.probe-answer button{border:1px solid var(--line);background:white;border-radius:14px;padding:14px;font-size:13px;font-weight:750;line-height:1.4;text-align:left;cursor:pointer}
.probe-answer button.correct{background:#e6f1e6;border-color:#91b59b}
.probe-answer button.wrong{background:#f9eae5;border-color:#cb9785}
.cooling-panel{margin-top:22px;background:var(--slate);color:#fff;border-radius:20px;padding:clamp(14px,3vw,24px);overflow:hidden}
.cooling-banner{display:flex;flex-direction:column;gap:7px}
.cooling-banner span{font-size:10px;font-weight:850;letter-spacing:.1em;color:#d1e1da}
.cooling-banner strong{font-size:clamp(17px,3.2vw,25px);line-height:1.3}
.cooling-vector{display:block;width:100%;height:auto;margin:10px auto 0;max-width:620px;overflow:visible}
.cooling-readings{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:6px}
.cooling-readings>div{border:1px solid #526466;border-radius:12px;padding:11px 7px;background:#314146;text-align:center}
.cooling-readings span{display:block;font-size:10px;line-height:1.35;color:#e0e8e5;font-weight:800}
.cooling-readings strong{display:block;font-size:clamp(22px,5vw,32px);line-height:1.2;margin-top:5px;color:white}
.cooling-readings .reading-warning{border-color:#e2b54e;background:#4b4636}
.cooling-readings .reading-warning strong{color:#ffd46d}
.cooling-compare{display:flex;justify-content:space-between;gap:12px;margin-top:13px;border-top:1px solid #65777a;padding-top:14px}
.cooling-compare span{font-size:12px;line-height:1.4;color:#e0e9e6}
.cooling-compare b{display:block;margin-top:3px;font-size:20px;color:#f4d574}
.cooling-question{font-size:18px;font-weight:750;line-height:1.45;margin:23px 0 -8px}
.cooling-detail{margin-top:18px;border-left:4px solid var(--mustard);background:#fff8df;padding:12px 16px;border-radius:0 14px 14px 0;color:#5d5642;font-size:12px;line-height:1.55}
.cooling-detail summary{cursor:pointer;font-weight:850}
.cooling-detail p{margin:9px 0 0}
.sequence-intro{margin-top:20px;padding:14px 16px;border-radius:15px;background:#edf3e9;border:1px solid #cad9c5}
.sequence-intro strong{display:block;font-size:15px}
.sequence-intro>span{display:block;margin-top:5px;font-size:13px;line-height:1.5}
.sequence-count{margin-top:10px;font-size:11px;font-weight:800;color:var(--sage)}
.sequence-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}
.sequence-slot{display:grid;grid-template-columns:29px 1fr;gap:7px;min-height:81px;align-content:center;align-items:center;padding:11px 10px;border:1px dashed #c7cbbf;background:#f8f7f3;border-radius:14px}
.sequence-slot.locked{background:#dcebd5;border:1px solid #9ebc94}
.sequence-slot.solved{background:#e5f2e6;border:1px solid #9ebd9e}
.sequence-slot.current{background:#fff8e6;border:2px solid #d8b45b}
.slot-number{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--slate);color:#fff;font-size:12px;font-weight:900}
.sequence-slot.locked .slot-number{background:var(--safe)}
.slot-text{font-size:12px;line-height:1.3;font-weight:750}
.sequence-slot.empty .slot-text{color:#7c8580}
.slot-state{grid-column:2;font-size:9px;font-weight:850;letter-spacing:.07em;color:var(--safe)}
.sequence-prompt{font-size:15px;margin:22px 0 8px}
.sequence-choices{display:grid;gap:9px}
.sequence-choices button{border:1px solid var(--line);background:#fff;border-radius:13px;padding:14px;text-align:left;display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:13px;font-weight:700;line-height:1.35;min-height:54px;cursor:pointer}
.sequence-choices button:hover{border-color:var(--sage)}
.sequence-choices button span{font-size:19px;color:var(--sage)}
.hint-toggle{display:inline-block;margin-top:13px;padding:10px 12px;background:#fff7df;border:1px solid #ead9a1;border-radius:12px;font-size:13px;font-weight:800;cursor:pointer}
.sequence-hint{margin-top:9px;padding:14px;border-radius:12px;background:#fff6d9;color:#615039;font-size:13px;line-height:1.5}
@media(max-width:800px){
.hero-stack{width:100%;max-width:560px;margin:0 auto}
.hero-photo{height:clamp(260px,65vw,375px);min-height:0}
.hero-photo img{height:100%;min-height:0;object-fit:cover;object-position:center 38%}
.hero-float{top:14px;right:10px;padding:8px 11px;font-size:10px;transform:rotate(2deg)}
.hero-float em{font-size:14px}
.hero-mini{top:14px;left:10px;padding:8px 10px;font-size:9px}
.hero-status{left:12px;right:12px;bottom:12px;padding:11px 13px}
}
@media(max-width:480px){
.hero-photo{height:265px;min-height:0;border-radius:22px}
.hero-photo img{height:100%;min-height:0;object-position:center 36%}
.hero-status{grid-template-columns:54px 1fr;gap:8px}
.hero-temp{font-size:27px}
.hero-status small{font-size:9px}
.hero-status strong{font-size:12px;line-height:1.35}
.hero-mini{display:none}
.probe-top{font-size:9px}
.probe-stage{padding:12px;gap:11px}
.probe-stage strong{font-size:15px}
.probe-stage p{font-size:13px}
.probe-steps{grid-template-columns:1fr}
.probe-tab{min-height:46px;justify-content:flex-start;padding:8px 12px}
.probe-answer{grid-template-columns:1fr}
.cooling-panel{padding:12px}
.cooling-readings{gap:5px}
.cooling-readings span{font-size:8.5px}
.cooling-readings strong{font-size:22px}
.cooling-compare span{font-size:11px}
.cooling-compare b{font-size:17px}
.sequence-guide{gap:6px}
.sequence-slot{padding:9px 8px;grid-template-columns:24px 1fr;gap:5px;min-height:78px}
.slot-number{width:24px;height:24px;font-size:11px}
.slot-text{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.probe-animated.is-active,.probe-core.is-active{animation:none!important}}


/* Course 01 V3: native responsive learning canvas and operational risk scan */
.hero-photo{height:clamp(340px,35vw,445px);min-height:0}
.hero-photo img{height:100%;width:100%;min-height:0;object-fit:cover;object-position:center center;image-rendering:auto}
.hero-status{bottom:14px;left:14px;right:14px}
.landing{gap:clamp(28px,4vw,55px)}
.risk-scan{margin-top:16px}
.risk-scan-intro{border:1px solid #c7d7ca;background:#eaf2e7;padding:15px 17px;border-radius:16px;line-height:1.45}
.risk-scan-intro strong{font-weight:850;font-size:15px;display:block}
.risk-scan-intro span{display:block;margin-top:4px;color:#495c52;font-size:13px}
.risk-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:13px}
.risk-station{padding:0;border:1px solid #d2d7cf;border-radius:17px;background:#f8f8f3;overflow:hidden;display:flex;flex-direction:column;min-width:0;cursor:pointer;text-align:left;transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease}
.risk-station:hover{transform:translateY(-2px);border-color:var(--sage);box-shadow:0 12px 20px rgba(31,42,46,.09)}
.risk-station:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.risk-station.risk-found{background:#ecf4ec;border-color:#77a080}
.risk-station-top{display:flex;justify-content:space-between;align-items:center;gap:5px;font-size:11px;font-weight:900;padding:10px 12px;text-transform:uppercase;letter-spacing:.035em;background:#e5e9e3;color:#2b3936}
.risk-found .risk-station-top{background:#d9e8d7}
.risk-found-icon{display:grid;place-items:center;width:25px;height:25px;border:2px solid #67816d;background:var(--paper);border-radius:50%;font-weight:900;font-size:16px}
.risk-found .risk-found-icon{background:var(--safe);color:white;border-color:var(--safe)}
.risk-station-visual{position:relative;height:140px;padding:12px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;background:linear-gradient(150deg,#3c5659,#192f35);color:#fff}
.risk-station.cool .risk-station-visual{background:linear-gradient(145deg,#344844,#203137)}
.risk-station.dessert .risk-station-visual{background:linear-gradient(145deg,#537677,#243b42)}
.risk-reading{position:relative;z-index:2;align-self:flex-start;font-weight:900;font-size:clamp(25px,3.1vw,43px);line-height:1;color:#ffbe8b;text-shadow:0 0 20px rgba(248,132,85,.26)}
.risk-station.cool .risk-reading{color:#ffd367}
.risk-station.dessert .risk-reading{color:#ffb08d}
.fridge-racks{position:absolute;bottom:8px;left:12px;right:12px;height:72px;background:linear-gradient(to bottom,transparent 20%,#76959b 21%,#76959b 23%,transparent 24%,transparent 64%,#76959b 65%,#76959b 67%,transparent 68%);opacity:.65}
.fridge-racks i{display:block;position:absolute;bottom:7px;width:20%;height:24px;border-radius:5px;background:#b3d4c8}
.fridge-racks i:nth-child(1){left:11%;bottom:8px}.fridge-racks i:nth-child(2){left:40%;bottom:39px;background:#d6b992}.fridge-racks i:nth-child(3){left:68%;bottom:8px;background:#e6bd7c}
.batch-curve{position:absolute;inset:15px 10px 7px;opacity:.66}
.batch-curve svg{display:block;width:100%;height:100%}
.dessert-cups{display:flex;gap:11px;position:absolute;bottom:20px;left:10px;right:10px;justify-content:center;opacity:.7}
.dessert-cups i{width:25%;height:35px;border-radius:3px 3px 11px 11px;background:linear-gradient(#f5ece3 5px,#b47f65 6px,#c79779);border:3px solid #f4e6d6}
.risk-station-info{display:flex;flex-direction:column;gap:7px;padding:12px;min-height:99px}
.risk-station-info strong{font-size:12px;line-height:1.3}
.risk-station-info small{font-size:11px;color:#5b665e;line-height:1.35}
.risk-feedback-panel{display:grid;gap:8px;margin-top:12px}
.risk-start{font-size:13px;color:var(--muted);background:#f0f2eb;padding:13px;border-radius:12px;margin:0}
.risk-feedback-item{display:flex;gap:11px;background:#e9f3e9;border:1px solid #bcd1c0;border-radius:13px;padding:13px}
.risk-check{width:25px;height:25px;flex:0 0 25px;display:grid;place-items:center;background:var(--safe);color:white;border-radius:50%;font-weight:850}
.risk-feedback-item strong{display:block;font-size:13px}
.risk-feedback-item p{margin:4px 0 0;font-size:12px;line-height:1.5;color:#45574d}
.risk-progress{margin-top:14px;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:800;color:#44594c}
.risk-dots{display:flex;gap:7px}
.risk-dots i{width:9px;height:9px;border-radius:50%;background:#cbd2ca}
.risk-dots i.active{background:var(--safe)}

@media(min-width:900px){
 .landing{max-width:1360px;grid-template-columns:minmax(480px,1fr) minmax(485px,.95fr);padding-top:42px;padding-bottom:44px}
 .hero-photo{height:min(510px,calc(100svh - 190px));min-height:395px}
 .hero-photo img{height:100%;object-position:center 48%}
 .hero-mini{left:12px;top:22px}
 .hero-float{right:14px}
 .course{max-width:1290px;padding:14px 26px 40px}
 .topbar{top:68px;max-width:1260px}
 .screen{max-width:none}
 .card{border-radius:26px}
 .card-head:has(>.lesson-intro){display:grid;grid-template-columns:minmax(270px,.77fr) minmax(435px,1.23fr);gap:0 34px;padding:28px 32px 30px;align-items:start}
 .card-head:has(>.lesson-intro)>.lesson-intro{grid-column:1;grid-row:1 / span 30;align-self:start}
 .card-head:has(>.lesson-intro)>:not(.lesson-intro){grid-column:2;min-width:0}
 .card-head .lesson-intro .title{font-size:clamp(35px,3.5vw,49px);line-height:1.08}
 .card-head .lesson-intro .intro{font-size:14px;line-height:1.6}
 .card-head .choices{margin-top:0}
 .card-head .control-loop{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}
 .card-head .loop-step{min-height:90px}
 .card-head .metric-grid{margin-top:0}
 .card-head .sequence-intro{margin-top:0}
 .card-head .probe-lesson{margin-top:0}
 .card-head .cooling-panel{margin-top:0}
 .card-head .risk-scan{margin-top:0}
 .card-head .record-grid{margin-top:0}
 .card-head .bridge{margin-top:0;grid-template-columns:repeat(2,minmax(0,1fr))}
 .card-head>.rule-card{margin-top:14px}
 .card-head>.actions{margin-top:18px}
 .card:has(>.media-card){display:grid;grid-template-columns:minmax(385px,.92fr) minmax(470px,1.08fr);min-height:490px}
 .card:has(>.media-card)>.media-card{height:100%;min-height:490px}
 .card:has(>.media-card)>.media-card img{height:100%;min-height:0;position:absolute;inset:0;object-position:center}
 .card:has(>.media-card)>.card-head{display:block;padding:30px}
 .card:has(>.media-card) .lesson-intro{margin-bottom:18px}
 .card:has(>.media-card) .title{font-size:clamp(35px,3vw,46px)}
 .card:has(>.media-card) .choices{margin-top:18px}
 .card:has(>.media-card) .continue{max-width:220px}
 .risk-board{gap:8px}
 .risk-station-visual{height:125px}
 .risk-station-info{min-height:85px;padding:11px}
 .risk-station-info strong{font-size:11px}
 .risk-station-info small{font-size:10px}
 .card-head .probe-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
 .card-head .probe-tab{font-size:11px}
 .card-head .sequence-guide{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(min-width:760px) and (max-width:899px) and (orientation:landscape){
 .course{max-width:1100px;padding:12px 16px 32px}
 .screen{max-width:none}
 .card-head:has(>.lesson-intro){display:grid;grid-template-columns:minmax(210px,.78fr) minmax(390px,1.22fr);gap:0 22px;padding:20px 24px}
 .card-head:has(>.lesson-intro)>.lesson-intro{grid-column:1;grid-row:1 / span 30}
 .card-head:has(>.lesson-intro)>:not(.lesson-intro){grid-column:2;min-width:0}
 .card-head .lesson-intro .title{font-size:34px}
 .card-head .lesson-intro .intro{font-size:13px}
 .card-head .choices,.card-head .probe-lesson,.card-head .cooling-panel,.card-head .risk-scan,.card-head .sequence-intro{margin-top:0}
 .risk-board{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:899px) and (orientation:portrait){
 .hero-photo{height:clamp(270px,56vw,400px);min-height:0}
 .hero-photo img{height:100%;min-height:0;object-position:center}
}
@media(max-width:640px){
 .risk-board{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
 .risk-station-top{padding:8px 7px;font-size:8.5px;min-height:43px}
 .risk-found-icon{width:21px;height:21px;font-size:14px}
 .risk-station-visual{height:100px;padding:6px}
 .risk-reading{font-size:25px}
 .risk-station-info{min-height:88px;padding:8px 6px;gap:4px}
 .risk-station-info strong{font-size:10px}
 .risk-station-info small{font-size:9px}
 .fridge-racks{height:48px}
 .dessert-cups i{height:25px}
}
@media(max-width:390px){
 .risk-board{grid-template-columns:1fr}
 .risk-station{display:grid;grid-template-columns:130px 1fr}
 .risk-station-top{grid-column:1 / -1}
 .risk-station-visual{height:115px}
 .risk-station-info{justify-content:center}
 .risk-reading{font-size:35px}
}


/* Keep risk judgments legible on phone instead of shrinking three cards to tiny tiles */
@media (max-width:640px){
 .risk-board{grid-template-columns:1fr;gap:9px}
 .risk-station{display:grid;grid-template-columns:minmax(125px,.9fr) minmax(0,1.1fr)}
 .risk-station-top{grid-column:1 / -1;padding:9px 12px;font-size:11px;min-height:36px}
 .risk-station-visual{height:112px;padding:10px}
 .risk-reading{font-size:32px}
 .risk-station-info{justify-content:center;min-height:112px;padding:12px;gap:6px}
 .risk-station-info strong{font-size:13px}
 .risk-station-info small{font-size:11px;line-height:1.4}
 .fridge-racks{height:55px}
 .dessert-cups i{height:30px}
}
@media(max-width:390px){
 .risk-station{grid-template-columns:120px minmax(0,1fr)}
 .risk-station-visual{height:115px}
}


/* Public Course 01 landing: crawlable learning outcomes and FSSAI source context */
.landing .academy-public-info{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,3vw,45px);margin-top:8px;padding:28px 0 8px;border-top:1px solid var(--line)}
.academy-public-intro h2{font:700 clamp(25px,3vw,38px)/1.16 var(--serif);margin:0 0 14px;max-width:660px}
.academy-public-intro>p:not(.eyebrow){font-size:14px;line-height:1.7;max-width:640px;color:var(--muted)}
.academy-public-intro>a{font-size:13px;font-weight:850;color:var(--teal);text-decoration:underline;text-underline-offset:3px}
.academy-public-faq{border-radius:20px;background:var(--paper);border:1px solid var(--line);padding:22px}
.academy-public-faq h3{font-size:16px;margin:0 0 10px}
.academy-public-faq details{border-top:1px solid var(--line);padding:12px 0}
.academy-public-faq summary{font-size:13px;font-weight:800;cursor:pointer;line-height:1.4}
.academy-public-faq details p{font-size:12px;color:var(--muted);line-height:1.6}
.academy-public-source{font-size:11px;color:var(--muted);line-height:1.6;margin:12px 0 0}
.academy-public-source a{color:var(--teal)}
.academy-back{font-size:12px;color:var(--sage);font-weight:800;text-decoration:none}
@media(max-width:800px){.landing .academy-public-info{grid-template-columns:1fr;gap:20px;padding-top:24px}.academy-public-faq{padding:18px}}
@media(max-width:480px){.site-actions .academy-back{display:none}}
