/* AI Article Studio v17 — public 1200px editorial system. Scoped, leaves FAQ unchanged. */
.ai-editorial-section,.ai-article-page,.ai-archive-public{--ai-espresso:#302018;--ai-coffee:#65472f;--ai-gold:#b78946;--ai-cream:#fbf6ec;color:var(--ai-espresso);font-family:inherit}
.ai-editorial-section *,.ai-article-page *,.ai-archive-public *{box-sizing:border-box}
.ai-editorial-section{background:linear-gradient(160deg,#fffdf9 0%,#f8f0e5 65%,#fffaf2 100%);padding:70px 0 76px;border-top:1px solid #ecdfce;border-bottom:1px solid #ecdfce}
.ai-editorial-container,.ai-article-wrap,.ai-archive-wrap{width:min(1200px,calc(100% - 40px));margin:0 auto}
.ai-section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:27px}.ai-overline,.ai-article-overline{font-size:11px;letter-spacing:.20em;font-weight:900;color:#9a6a36;text-transform:uppercase}.ai-section-head h2,.ai-archive-hero h1{font-size:clamp(30px,3.3vw,49px)!important;line-height:1.13;letter-spacing:-.03em;margin:9px 0 10px!important;color:#302018}.ai-section-head p{margin:0;max-width:700px;color:#725d4d;line-height:1.8;font-size:15px}.ai-all-link{flex-shrink:0;border:1px solid #dfcdb6;border-radius:999px;padding:12px 19px;background:#fff;color:#654226;font-weight:850;box-shadow:0 8px 20px #3c2a1b10;text-decoration:none}.ai-all-link:hover{color:#a57432;border-color:#b78946}
.ai-public-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.ai-public-card{min-width:0;background:#fff;border:1px solid #eadfcf;border-radius:22px;overflow:hidden;box-shadow:0 16px 40px #4f32140d;transition:transform .2s,box-shadow .2s}.ai-public-card:hover{transform:translateY(-5px);box-shadow:0 21px 42px #4f321426}.ai-public-card a{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}.ai-public-cover{aspect-ratio:2/1;overflow:hidden;background:linear-gradient(135deg,#f2dfbf,#d9b581)}.ai-public-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}.ai-public-card:hover img{transform:scale(1.035)}.ai-public-card-body{display:flex;flex-direction:column;flex:1;padding:20px 18px 18px;gap:10px}.ai-card-tag{font-size:11px;letter-spacing:.1em;font-weight:900;color:#9f753c;text-transform:uppercase}.ai-public-card h3{font-size:18px!important;line-height:1.5!important;margin:0!important;color:#342116!important;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ai-public-card p{font-size:13px;line-height:1.75;color:#745d49;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ai-read-more{margin-top:auto;padding-top:12px;font-size:13px;font-weight:900;color:#754a2c;border-top:1px solid #efe6dd;display:flex;justify-content:space-between;gap:8px}.ai-read-more b{font-size:18px}
.ai-archive-public{background:#fbf6ed;min-height:100vh;padding:40px 0 80px}.ai-archive-hero{padding:39px 44px;background:linear-gradient(110deg,#2b1b12,#674329);color:#fff;border-radius:28px;margin:24px 0 27px;position:relative;overflow:hidden}.ai-archive-hero::after{content:"";position:absolute;width:340px;height:340px;border-radius:100%;right:-135px;top:-130px;background:radial-gradient(circle,#c9a06477,transparent 70%)}.ai-archive-hero h1{color:#fff!important}.ai-archive-hero p{max-width:690px;color:#f5e7d7;line-height:1.8}.ai-archive-hero .ai-overline{color:#daba80}.ai-archive-public .ai-public-grid{margin-top:27px}
.ai-article-page{background:#faf5ed;min-height:100vh;padding:24px 0 78px}.ai-article-nav{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:10px 0 23px}.ai-article-nav a{font-weight:850;color:#5d3b24;text-decoration:none;border-bottom:1px solid transparent}.ai-article-nav a:hover{border-color:#8f633c}.ai-article-nav small{color:#947b66;font-weight:750}.ai-article-head{background:linear-gradient(138deg,#fffefb 0%,#f5ead9 100%);padding:clamp(28px,5vw,62px);border-radius:29px 29px 0 0;border:1px solid #e8d6bd;border-bottom:0;text-align:left}.ai-article-head h1{font-size:clamp(33px,4.4vw,60px)!important;line-height:1.18!important;margin:14px 0 17px!important;color:#2f1d12!important;overflow-wrap:anywhere}.ai-article-head>p{font-size:clamp(16px,1.7vw,20px);line-height:1.85;color:#6f5743;max-width:970px;margin:0}.ai-article-byline{display:flex;gap:12px;align-items:center;flex-wrap:wrap;color:#8e7056;font-size:13px;font-weight:750;margin-top:22px}.ai-article-byline .dot{width:5px;height:5px;background:#ae8b61;border-radius:50%}.ai-article-feature{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;border:1px solid #e7d4bd;border-top:0;background:#e9d9c1}.ai-article-layout{display:grid;grid-template-columns:minmax(0,1fr) 288px;gap:24px;align-items:start;margin-top:24px}.ai-article-main,.ai-article-aside-card{background:#fff;border:1px solid #eadbc8;border-radius:22px;box-shadow:0 12px 40px #5d422011}.ai-article-main{padding:clamp(22px,4vw,48px)}.ai-article-intro{font-size:18px;line-height:2;color:#5c4837;margin:0 0 30px}.ai-article-main section{scroll-margin-top:108px;padding:17px 0 18px;border-top:1px solid #ede1d2}.ai-article-main section h2{font-size:clamp(22px,2.3vw,31px)!important;line-height:1.35!important;color:#36231a!important;margin:8px 0 18px!important}.ai-article-main section p{font-size:16px;line-height:2.05;color:#544436;margin:0 0 16px}.ai-section-index{color:#bb8b4d;font-size:12px;font-weight:900;letter-spacing:.13em}.ai-article-aside{position:sticky;top:85px;display:grid;gap:15px}.ai-article-aside-card{padding:22px}.ai-article-aside-card h2{font-size:19px!important;margin:0 0 13px!important;line-height:1.35!important}.ai-article-aside-card a{display:block;color:#5e4633;text-decoration:none;font-size:13px;line-height:1.65;padding:8px 0;border-bottom:1px solid #efe5da}.ai-article-aside-card a:last-child{border-bottom:0}.ai-article-aside-card a:hover{color:#ae7c40}.ai-summary-box{border:1px solid #e3d0b0;border-radius:20px;background:#fbf5e8;padding:25px;margin-top:20px}.ai-summary-box h2{font-size:23px!important;margin:0 0 13px!important}.ai-summary-box ul{margin:0;padding-left:24px;color:#574634;line-height:1.95}.ai-summary-box li{margin:7px 0}.ai-article-faq{margin-top:28px}.ai-article-faq h2{font-size:26px!important}.ai-article-faq details{box-shadow:none;border:1px solid #eee3d8;margin-top:10px;border-radius:14px;padding:0;background:#fff}.ai-article-faq summary{padding:15px 17px;line-height:1.6;cursor:pointer}.ai-article-faq p{margin:0;padding:0 18px 17px;line-height:1.9;color:#594737}.ai-article-share{background:linear-gradient(110deg,#39251c,#67442f);color:#fff;border-radius:19px;padding:23px;margin-top:32px}.ai-article-share h2{color:#fff!important;font-size:23px!important;margin:0 0 6px!important}.ai-article-share p{margin:0 0 16px;color:#ecdece;font-size:14px}.ai-share-actions{display:flex;flex-wrap:wrap;gap:9px}.ai-share-actions button,.ai-share-actions a{appearance:none;background:#fff;border:1px solid #fff6;border-radius:11px;padding:10px 15px;font:inherit;color:#342015;font-weight:850;font-size:13px;cursor:pointer;text-decoration:none}.ai-share-actions a:hover,.ai-share-actions button:hover{background:#ead9b9}.ai-share-actions .ai-share-line{background:#0fb64d;color:white;border-color:#32cf6c}.ai-share-actions .ai-share-line:hover{background:#009e39}.ai-article-related{margin-top:45px}.ai-article-related .ai-section-head{margin-bottom:22px}.ai-article-related .ai-public-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1000px){.ai-public-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-article-layout{grid-template-columns:minmax(0,1fr) 240px}.ai-article-related .ai-public-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:750px){.ai-article-layout{grid-template-columns:1fr}.ai-article-aside{position:static}.ai-article-aside-card{display:none}.ai-article-nav small{display:none}.ai-article-head{border-radius:22px 22px 0 0}}
@media(max-width:600px){.ai-editorial-container,.ai-article-wrap,.ai-archive-wrap{width:calc(100% - 28px)}.ai-editorial-section{padding:48px 0 52px}.ai-section-head{display:block}.ai-all-link{display:inline-flex;margin-top:16px}.ai-public-grid,.ai-article-related .ai-public-grid{grid-template-columns:1fr;gap:14px}.ai-public-card{display:block}.ai-public-cover{aspect-ratio:2/1}.ai-public-card-body{padding:16px}.ai-public-card h3{font-size:17px!important}.ai-archive-hero{padding:28px 22px;border-radius:22px}.ai-article-page{padding-top:12px}.ai-article-head{padding:26px 20px}.ai-article-main{padding:22px 19px}.ai-article-feature{aspect-ratio:2/1}.ai-article-share{padding:20px 15px}.ai-share-actions>*{flex-grow:1;text-align:center}}
@media(prefers-reduced-motion:reduce){.ai-public-card,.ai-public-cover img{transition:none}}

/* Reused brand masthead on archive/article pages. */
.ai-site-header{background:#fffefb;border-bottom:1px solid #ecdfcd;color:#422b20;font-family:inherit}.ai-site-header-inner{max-width:1200px;width:calc(100% - 40px);margin:auto;min-height:77px;display:flex;align-items:center;justify-content:space-between;gap:18px}.ai-site-brand{display:flex;align-items:center;gap:11px;color:#3f291d;text-decoration:none;font-size:17px;line-height:1.35}.ai-site-brand img{display:block;width:65px;height:55px;object-fit:contain}.ai-site-nav{display:flex;align-items:center;gap:24px}.ai-site-nav a{font-size:13px;font-weight:900;color:#775a43;text-decoration:none;white-space:nowrap}.ai-site-nav .ai-site-contact{border-radius:999px;padding:11px 17px;background:#0a9c3d;color:#fff}.ai-site-nav a:hover{color:#ae7b40}.ai-site-nav .ai-site-contact:hover{background:#098938;color:#fff}
@media(max-width:600px){.ai-site-header-inner{width:calc(100% - 26px);padding:8px 0}.ai-site-brand{font-size:13px}.ai-site-brand img{width:47px;height:40px}.ai-site-nav{gap:12px}.ai-site-nav a{font-size:11px}.ai-site-nav .ai-site-contact{display:none}}

/* v17.4: two restrained, topic-aware links inside AI article body text. */
.ai-article-main section p strong > a.ai-article-selflink {
  color:#704821;
  font-weight:800;
  text-decoration:underline;
  text-decoration-color:#c89d5b;
  text-decoration-thickness:1.5px;
  text-underline-offset:3px;
  overflow-wrap:anywhere;
  transition:color .15s ease,text-decoration-color .15s ease;
}
.ai-article-main section p strong > a.ai-article-selflink:hover {
  color:#9a672e;
  text-decoration-color:#9a672e;
}
.ai-article-main section p strong > a.ai-article-selflink:focus-visible {
  outline:2px solid #986d3e;
  outline-offset:3px;
  border-radius:2px;
}
@media (prefers-reduced-motion: reduce) {
  .ai-article-main section p strong > a.ai-article-selflink { transition:none; }
}
