/* Gut Feeling — airy sage + dark-forest concept, translated from approved design.
   Homepage wording is stored separately in site-settings.js. */
:root {--paper:#f8faf6;--ink:#16352a;--green:#0b503c;--green2:#2b7657;--line:#e4ebe4;--muted:#63776d;}
body {background:#f7f9f4;color:#16352a;background-attachment:initial;}
body::before {opacity:.13;mix-blend-mode:multiply;}
.sidebar {width:270px;background:#f7f9f4;border-right:1px solid #dee9dd;color:#16352a; padding:29px 21px;}
.sidebar .brand {color:#103528;margin:0 0 55px 9px;font-size:23px;}
.sidebar .brand-mark {background:#0d4b37;color:#f6fff9;box-shadow:0 5px 15px #1b624433;}
.sidebar .brand-dot{color:#5eac85;}
.side-label {color:#5c7464;}
.sidebar .nav-link {color:#52675d;font-size:13px; padding:14px 13px;}
.sidebar .nav-link:hover,.sidebar .nav-link.active {color:#11382c;background:#dbe9db;}
.sidebar .nav-link.active {border-radius:12px;}
.sidebar-note {background:#edf3ec;border:1px solid #e4ece1;color:#183d30;border-radius:18px;margin-top:auto;box-shadow:0 7px 22px #2d4c2c0a;padding:20px;}
.sidebar-note strong{color:#19392d;font-size:14px;}
.sidebar-note .note-icon{color:#3e9a6e;}
.sidebar-note p{color:#5b7065;font-size:12px;}
.account-mini {border-color:#e2e9de;}
.account-mini .avatar{background:#dceade;color:#12513b;}
.account-mini strong{color:#173c2b;}.account-mini small{color:#64756b;}
.main {margin-left:270px;padding:0 54px;max-width:none;background:#f8faf6;color:#17382c;}
.topbar {height:84px;margin:0 -54px;padding:0 54px;position:relative;z-index:2;border-bottom:0;background:linear-gradient(105deg,#dfeade 0%,#c2d9c8 32%,#689b7f 64%,#123b2c 100%);}
.breadcrumb,.breadcrumb b {color:#254d3e;}.breadcrumb span{color:#658c7a;}
.top-actions .text-button{color:#f2fff5;}
.top-actions .small-primary{background:#15513c;color:#f1fff6;border:1px solid #70a889;border-radius:22px;padding:10px 21px;}
.top-actions .small-primary:hover {background:#0b4130;}
.customize-button {background:#15543f;color:#f4fff7;border:1px solid #549674;}
.page {color:#163b2f;}
#page-home {padding-top:0;}
.hero {margin:0 -54px;border:0;border-radius:0;min-height:410px;padding:40px 54px 52px;background:linear-gradient(105deg,#dfeadd 0%,#d5e5d6 26%,#a3c5ac 47%,#4e816a 73%,#123d30 100%);box-shadow:none;}
.hero-copy {max-width:630px;flex:1 1 54%;}
.hero .eyebrow {color:#38634d;font-size:11px;letter-spacing:2px;}
.hero .eyebrow-dot {background:#5db47d;}
.hero h1 {color:#0a3124;font-size:clamp(38px,4vw,65px);line-height:1.12;letter-spacing:-1.75px;margin:24px 0 21px;}
.hero h1 em {color:#17523c;font-style:italic;background:none;-webkit-text-fill-color:#17523c;animation:none;}
.hero-copy>p{color:#2f5645;font-size:15px;line-height:1.68;max-width:490px;margin-bottom:27px;}
.hero .primary-button{background:#0b503a;color:#f5fff8;border:1px solid #458b65;border-radius:50px;padding:16px 25px;font-size:14px;box-shadow:0 7px 22px #13523923;}
.hero .primary-button:hover{background:#06412f;}
.hero-art {width:44%;min-width:295px;max-width:560px;height:350px;flex:0 1 44%;filter:drop-shadow(0 16px 17px #153d2a28);}
.hero-art .microbiome-illustration {inset:-9% -1%;width:103%;height:115%;-webkit-mask-image:radial-gradient(ellipse 60% 60% at 50% 50%,#000 51%,transparent 100%);mask-image:radial-gradient(ellipse 60% 60% at 50% 50%,#000 51%,transparent 100%);}
.hero-art .art-caption{color:#eef9e9;bottom:0;}
.hero-art .orbit{border-color:#d7f6d566;}
.hero::after {opacity:.35;}
.welcome-row{margin:27px 0 24px;}
.welcome-row h2,.section-heading h3,.page-intro h1,.admin-toolbar h2{color:#11382b;}
.welcome-row h2{font-size:23px;}
.section-kicker,.section-heading .muted{color:#3c785e;}
.progress-summary strong{color:#13382a;}.progress-summary small{color:#65786d;}
.progress-ring{border-color:#cddace;border-top-color:#649e78;color:#123d2b;background:#eff5ee;}
.content-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,1fr);gap:24px;align-items:start;}
.section-heading{margin-bottom:15px;}
.section-heading h3{font-size:17px;}
.subtle-link,.back-link{color:#1d7651;}
.path-card,.topic-card,.lesson-row,.lesson-article,.quiz-panel,.admin-item,.admin-editor{background:#fffefa;color:#17372b;border-color:#e2eae0;box-shadow:0 10px 28px #344d3512;}
.path-card {border-radius:18px;min-height:227px;grid-template-columns:49% 1fr;}
.path-visual{min-height:227px;}
.path-info{padding:27px 21px;}
.path-info h3{color:#123e2e;}
.right-column{display:flex;flex-direction:column;gap:16px;}
.right-column .second-heading{margin:0 0 4px;}
.right-column .section-heading .muted {color:#72877a;}
.right-column .topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.right-column .topic-card{min-height:175px;border-radius:14px;padding:16px 11px;text-align:left;}
.right-column .topic-card strong{font-size:12px;}
.right-column .topic-card small{font-size:10px;line-height:1.5;color:#597365;}
.right-column .topic-card .topic-icon{height:50px;width:50px;border-radius:50%;}
.daily-card {background:#f0f6eb;border-color:#e1eadb;border-radius:16px;box-shadow:0 8px 25px #36503712;}
.daily-card h3{color:#16412f;}
.disclaimer-card {background:#eaf3e9;color:#567463;border:1px solid #d9e6d9;}
.disclaimer-card p{color:#567463;}.disclaimer-card strong{color:#204a35;}
.page-intro p,.flash-count{color:#617b6c;}
footer{color:#72877b;border-color:#e0e9dd;}
/* All other functional pages retain their established components on an easier-to-read canvas. */
@media(max-width:1150px){
 .sidebar{width:238px;} .main{margin-left:238px;padding:0 27px;}
 .topbar{margin:0 -27px;padding:0 27px;}
 .hero{margin:0 -27px;padding:38px 27px 46px;}
 .hero h1{font-size:clamp(34px,3.8vw,54px);}
 .hero-art{min-width:250px;}
 .content-grid{grid-template-columns:minmax(0,1fr) minmax(260px,.9fr);gap:18px;}
 .right-column .topic-card{padding:13px 9px;}
}
@media(max-width:800px){
 .sidebar{width:250px;}
 .main{margin:0;padding:0 19px;}
 .topbar{margin:0 -19px;padding:0 19px;}
 .hero{margin:0 -19px;padding:42px 27px;min-height:420px;}
 .hero-art{position:absolute;right:-80px;width:360px;min-width:0;max-width:none;height:330px;opacity:.37;}
 .hero-copy{position:relative;z-index:2;max-width:640px;}
 .hero h1{font-size:clamp(35px,6vw,54px);}
 .hero-copy>p{max-width:475px;}
 .content-grid{grid-template-columns:minmax(0,1fr);}
 .right-column .topic-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
 .sidebar-note{margin-top:auto;}
 .mobile-menu{color:#1d503c;}
 .top-actions .text-button{color:#ecfff3;}
}
@media(max-width:520px){
 .topbar{height:70px;}
 .top-actions .text-button{display:none;}
 .top-actions .small-primary{padding:9px 11px;border-radius:12px;}
 .hero {padding:42px 20px;min-height:420px;}
 .hero h1{font-size:37px;}
 .hero-copy>p{font-size:13px;}
 .hero-art{right:-130px;opacity:.26;}
 .welcome-row{margin:25px 0;}
 .path-card{grid-template-columns:1fr;}
 .path-visual{min-height:145px;}
 .right-column .topic-card{min-height:140px;}
 .right-column .topic-card strong{font-size:10px;}
 .right-column .topic-card .topic-icon{height:40px;width:40px;}
}
/* Customizer's own layout controls still win over these responsive defaults. */
html.layout-columns-stacked .content-grid{grid-template-columns:minmax(0,1fr);}
html.layout-hero-left .hero {flex-direction:row-reverse;}
html.layout-hide-topics .right-column .second-heading, html.layout-hide-topics .right-column .topic-grid{display:none;}
