/* AICOAST 2026 · 实战学院主题
   用真实课堂、清晰层级和纸张质感替代泛科技视觉。 */
:root {
  --bg-deep: #f5f1e8;
  --bg-card: #fffdf8;
  --bg-card-2: #ece7da;
  --line: rgba(41, 66, 57, .20);
  --line-soft: rgba(41, 66, 57, .12);
  --gold: #a94832;
  --gold-soft: #c96a4e;
  --emerald: #1e5a4c;
  --text-1: #1d2924;
  --text-2: #53615a;
  --text-3: #79827c;
}

html { background: var(--bg-deep); scrollbar-color: rgba(30, 90, 76, .45) transparent; }
body { background: var(--bg-deep); color: var(--text-1); font-weight: 400; }
body::before {
  content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; opacity: .38;
  background-image: radial-gradient(rgba(29, 41, 36, .12) .55px, transparent .55px);
  background-size: 7px 7px;
}
.bg-glow, .fx-particles { display: none !important; }

/* Navigation */
nav { background: rgba(255, 253, 248, .94) !important; border-bottom: 1px solid var(--line-soft) !important; box-shadow: 0 2px 16px rgba(35, 47, 42, .05); }
.logo { color: var(--text-1) !important; }
.brand-logo { display: block; width: 178px; height: auto; object-fit: contain; }
.logo .brand-logo, .brand .brand-logo { width: 178px; }
.logo-mark { background: var(--emerald) !important; box-shadow: none !important; color: #fffdf8 !important; border-radius: 3px !important; }
.logo-text .en, .nav-links a:hover, .nav-links a.active, .mobile-menu a:hover, .mobile-menu a.active { color: var(--gold) !important; }
.nav-links a { color: var(--text-2) !important; }
.nav-links a.active::after { background: var(--gold) !important; }
.nav-cta { border-color: var(--emerald) !important; color: #fffdf8 !important; background: var(--emerald) !important; border-radius: 3px !important; }
.nav-cta:hover { background: #143f35 !important; color: #fffdf8 !important; }
.mobile-menu { background: #fffdf8 !important; border-color: var(--line-soft) !important; }
.mobile-menu a { color: var(--text-1) !important; border-color: var(--line-soft) !important; }

/* Common editorial system */
section { padding: 96px 0; }
h1, h2, h3, h4 { letter-spacing: 0 !important; }
.eyebrow {
  color: var(--emerald) !important; background: transparent !important; border: 0 !important; border-left: 3px solid var(--gold) !important;
  border-radius: 0 !important; padding: 0 0 0 10px !important; letter-spacing: 1.4px !important; font-weight: 600;
}
.eyebrow::before { display: none !important; }
.section-head { text-align: left; margin-left: 0; margin-right: 0; max-width: 760px; }
.section-title { color: var(--text-1); font-size: clamp(32px, 4vw, 48px); }
.section-sub { color: var(--text-2); }
.gold, .gold-text { color: var(--gold) !important; -webkit-text-fill-color: currentColor !important; background: none !important; }
.btn { border-radius: 3px !important; font-weight: 600 !important; padding: 14px 22px !important; }
.btn-primary { background: var(--emerald) !important; color: #fffdf8 !important; box-shadow: none !important; }
.btn-primary:hover { background: #143f35 !important; box-shadow: none !important; transform: translateY(-1px); }
.btn-ghost { color: var(--emerald) !important; border-color: var(--emerald) !important; background: transparent !important; }
.btn-ghost:hover { color: #fffdf8 !important; background: var(--emerald) !important; }

/* Shared cards and data surfaces */
.card, .cap-card, .role-card, .prog-card, .article-card, .activity-card, .channel-card,
.pillar-card, .advantage, .faculty, .story-card, .insight-card, .path-step,
.hero-stats-card, .principle-card, .flag-block, .flag-card, .module-card, .lecture-card,
.case-card, .highlight-card, .flow-card, .route-card, .product-card, .audience-card,
.deliver-card, .course-card, .faq-item {
  background: var(--bg-card) !important; border-color: var(--line-soft) !important; border-radius: 4px !important;
  box-shadow: 0 1px 0 rgba(29, 41, 36, .04);
}
.card:hover, .pillar-card:hover, .advantage:hover, .faculty:hover, .story-card:hover,
.insight-card:hover, .path-step:hover, .course-card:hover, .product-card:hover,
.audience-card:hover, .deliver-card:hover, .flow-card:hover, .route-card:hover {
  border-color: rgba(30, 90, 76, .55) !important; box-shadow: 0 10px 24px rgba(29, 41, 36, .08) !important;
}
.pillar-card.featured, .product-card.featured, .dark-block, .path-block, .featured-block, .cta-card {
  background: var(--bg-card) !important; border-color: var(--line) !important; border-radius: 4px !important; box-shadow: none !important;
}
.pillar-icon { border-color: rgba(30, 90, 76, .2) !important; background: #e4eee8 !important; color: var(--emerald) !important; border-radius: 3px !important; }
.pillar-more, .faculty .title, .product-tag, .course-tags span { color: var(--emerald) !important; }
.story-result, .product-fit, .course-output { color: var(--emerald) !important; background: #edf5f0 !important; border-color: var(--emerald) !important; }
.avatar, .story-avatar { background: #e4eee8 !important; color: var(--emerald) !important; border-color: rgba(30, 90, 76, .25) !important; }
.partner-cell { background: var(--bg-card) !important; color: var(--text-2) !important; }

/* Photo blocks */
.class-photo { border-radius: 3px !important; border-color: var(--line-soft) !important; }
.class-photo::after { background: linear-gradient(180deg, transparent 44%, rgba(19, 40, 33, .86) 100%) !important; }
.insight-cover::after { background: linear-gradient(180deg, transparent 30%, rgba(19, 40, 33, .7) 100%) !important; }
.insight-cover .tag { color: #fffdf8 !important; background: var(--emerald) !important; border: 0 !important; border-radius: 2px !important; }

/* Footer */
footer { background: #1d2924 !important; border-top: 0 !important; }
footer .logo, footer .footer-col h5 { color: #fffdf8 !important; }
footer .brand-logo { width: 184px; padding: 7px 10px; background: #fffdf8; border-radius: 3px; }
footer .footer-brand p, footer .footer-col a, footer .footer-bottom { color: #cdd5cc !important; }
footer .footer-col a:hover { color: #f5d7c9 !important; }

/* Remove the space/particle visual language from inner-page heroes. */
.page-hero[data-hero]::before { background-image: none !important; animation: none !important; opacity: 1 !important; filter: none !important; }
.page-hero[data-hero]::after { background: #e4eee8 !important; }
.page-hero h1, .page-hero h1 .gold-text { background: none !important; -webkit-text-fill-color: currentColor !important; color: var(--text-1) !important; }
.page-hero .tag { color: var(--text-2) !important; }

/* Home page: the first screen is a real classroom, not a product dashboard. */
.aicoast-workshop-theme .hero { min-height: 760px; padding-top: 148px; padding-bottom: 92px; }
.aicoast-workshop-theme .hero-bg img { filter: none !important; opacity: 1 !important; animation: none !important; object-position: center !important; }
.aicoast-workshop-theme .hero-bg::after {
  background: linear-gradient(90deg, rgba(18, 38, 31, .94) 0%, rgba(18, 38, 31, .85) 38%, rgba(18, 38, 31, .40) 72%, rgba(18, 38, 31, .20) 100%) !important;
}
.aicoast-workshop-theme .hero-inner { grid-template-columns: minmax(0, 1.15fr) minmax(280px, .55fr); gap: 84px; }
.aicoast-workshop-theme .hero h1 { color: #fffdf8; background: none !important; -webkit-text-fill-color: #fffdf8 !important; font-size: clamp(46px, 5.7vw, 74px); }
.aicoast-workshop-theme .hero h1 .gold-text { color: #f3c7b7 !important; -webkit-text-fill-color: #f3c7b7 !important; }
.aicoast-workshop-theme .hero-tag { color: rgba(255, 253, 248, .85); font-family: var(--sans); font-size: 18px; line-height: 1.9; }
.aicoast-workshop-theme .hero-tag em { color: #f3c7b7; }
.aicoast-workshop-theme .hero .eyebrow { color: #e5f0e8 !important; border-left-color: #e79c80 !important; }
.aicoast-workshop-theme .hero-card { padding: 0; background: transparent !important; border: 0 !important; border-top: 1px solid rgba(255, 253, 248, .55) !important; border-radius: 0 !important; color: #fffdf8; }
.aicoast-workshop-theme .hero-card-flag { display: block; padding: 18px 0 0; background: transparent; color: #f3c7b7; border-radius: 0; font-family: var(--sans); font-size: 12px; letter-spacing: 1px; }
.aicoast-workshop-theme .hero-card-flag::before { content: ""; }
.aicoast-workshop-theme .hero-card h3 { font-size: 26px; margin: 14px 0 8px; color: #fffdf8; }
.aicoast-workshop-theme .hero-card .sub { color: rgba(255, 253, 248, .78); line-height: 1.75; }
.aicoast-workshop-theme .hero-card-stats { grid-template-columns: 1fr; gap: 0; border: 0; margin: 20px 0 24px; padding: 0; }
.aicoast-workshop-theme .stat-mini { padding: 10px 0; border-top: 1px solid rgba(255, 253, 248, .22); }
.aicoast-workshop-theme .stat-mini .num { color: #fffdf8; font-size: 16px; font-family: var(--sans); }
.aicoast-workshop-theme .stat-mini .lbl { color: rgba(255, 253, 248, .68); }
.aicoast-workshop-theme .hero-card .btn { width: auto; color: #1d2924 !important; background: #f3c7b7 !important; }
.aicoast-workshop-theme .hero-left .btn-ghost { color: #fffdf8 !important; border-color: rgba(255, 253, 248, .72) !important; }
.aicoast-workshop-theme .hero-left .btn-ghost:hover { color: var(--emerald) !important; background: #fffdf8 !important; }

.aicoast-workshop-theme .boss-path { padding-top: 72px; }
.aicoast-workshop-theme .path-block { border-top: 4px solid var(--emerald) !important; padding: 48px 54px; }
.aicoast-workshop-theme .path-grid { gap: 0; border-top: 1px solid var(--line); }
.aicoast-workshop-theme .path-step { border: 0 !important; border-right: 1px solid var(--line-soft) !important; border-radius: 0 !important; box-shadow: none !important; padding: 26px 22px 12px; }
.aicoast-workshop-theme .path-step:last-child { border-right: 0 !important; }
.aicoast-workshop-theme .path-step:hover { transform: none; box-shadow: none !important; }
.aicoast-workshop-theme .path-step b { color: var(--gold); }

.aicoast-workshop-theme .featured-block { padding: 0; border: 0 !important; background: transparent !important; }
.aicoast-workshop-theme .featured-grid { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 72px; align-items: center; }
.aicoast-workshop-theme .featured-photo { position: relative; min-height: 540px; margin: 0; overflow: hidden; }
.aicoast-workshop-theme .featured-photo picture, .aicoast-workshop-theme .featured-photo img { display: block; width: 100%; height: 100%; }
.aicoast-workshop-theme .featured-photo img { position: absolute; inset: 0; object-fit: cover; }
.aicoast-workshop-theme .featured-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 52%, rgba(18, 38, 31, .86) 100%); }
.aicoast-workshop-theme .featured-photo figcaption { position: absolute; z-index: 1; bottom: 0; left: 0; right: 0; padding: 30px; color: #fffdf8; font-size: 16px; }
.aicoast-workshop-theme .featured-photo figcaption span { display: block; color: #f3c7b7; font-size: 12px; letter-spacing: 1.2px; margin-bottom: 7px; }
.aicoast-workshop-theme .featured-content .section-title { font-size: clamp(30px, 3.4vw, 44px) !important; }
.aicoast-workshop-theme .featured-list li { color: var(--text-1); border-color: var(--line-soft); }
.aicoast-workshop-theme .featured-list li::before { color: var(--gold); }

.aicoast-workshop-theme .advantage { border-top: 3px solid var(--emerald) !important; }
.aicoast-workshop-theme .advantage .num { color: var(--emerald) !important; background: none !important; -webkit-text-fill-color: var(--emerald) !important; }
.aicoast-workshop-theme .insight-card { border-radius: 3px !important; }
.aicoast-workshop-theme .cta-card { border: 0 !important; background: var(--emerald) !important; color: #fffdf8; text-align: left; }
.aicoast-workshop-theme .cta-card .eyebrow { color: #f3c7b7 !important; border-color: #f3c7b7 !important; }
.aicoast-workshop-theme .cta-quote, .aicoast-workshop-theme .cta-sub { color: #fffdf8; }
.aicoast-workshop-theme .cta-card .btn-primary { background: #f3c7b7 !important; color: #1d2924 !important; }
.aicoast-workshop-theme .cta-card .btn-ghost { color: #fffdf8 !important; border-color: #fffdf8 !important; }
.aicoast-workshop-theme .cta-card .btn-ghost:hover { color: var(--emerald) !important; background: #fffdf8 !important; }

/* Compact pages receive the same calm foundation even when they use self-contained CSS. */
body:not(.aicoast-workshop-theme) .hero { background: #e4eee8 !important; }
body:not(.aicoast-workshop-theme) .hero::before,
body:not(.aicoast-workshop-theme) .hero::after { display: none !important; }
body:not(.aicoast-workshop-theme) .hero h1,
body:not(.aicoast-workshop-theme) .hero h1 em { color: var(--text-1) !important; background: none !important; -webkit-text-fill-color: currentColor !important; }
body:not(.aicoast-workshop-theme) .hero p { color: var(--text-2) !important; }
body:not(.aicoast-workshop-theme) .section[style*="background"] { background: #e4eee8 !important; }
body:not(.aicoast-workshop-theme) .cta { background: var(--emerald) !important; color: #fffdf8 !important; }
body:not(.aicoast-workshop-theme) .cta h2,
body:not(.aicoast-workshop-theme) .cta p { color: #fffdf8 !important; }

@media (max-width: 640px) {
  section { padding: 68px 0; }
  .section-head { margin-bottom: 38px; }
  .nav-cta { padding: 8px 13px !important; }
  .logo .brand-logo, .brand .brand-logo { width: 142px; }
  .aicoast-workshop-theme .hero { min-height: auto; padding-top: 116px; padding-bottom: 58px; }
  .aicoast-workshop-theme .hero-inner, .aicoast-workshop-theme .featured-grid { grid-template-columns: 1fr; gap: 36px; }
  .aicoast-workshop-theme .hero-right { display: none; }
  .aicoast-workshop-theme .hero h1 { font-size: 36px; margin: 22px 0 20px; }
  .aicoast-workshop-theme .hero-tag { font-size: 15px; line-height: 1.75; margin-bottom: 20px; }
  .aicoast-workshop-theme .hero-cta { margin-top: 26px; }
  .aicoast-workshop-theme .path-block { padding: 32px 22px; }
  .aicoast-workshop-theme .path-grid { grid-template-columns: 1fr; }
  .aicoast-workshop-theme .path-step { border-right: 0 !important; border-bottom: 1px solid var(--line-soft) !important; }
  .aicoast-workshop-theme .featured-photo { min-height: 370px; }
}
