.guides-shell,.article-shell { width:min(calc(100% - 40px),1180px);margin:0 auto;flex:1; }
.guides-hero { display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);gap:32px;align-items:end;padding:42px 0 28px;border-bottom:1px solid var(--line); }
.guides-hero .eyebrow,.article-header .eyebrow,.article-not-found .eyebrow { color:var(--brand);font-size:12px;font-weight:800;letter-spacing:.18em; }
.guides-hero h1 { margin:8px 0 0;font-family:"Iowan Old Style",Georgia,"Microsoft JhengHei",serif;font-size:clamp(36px,4.5vw,54px);font-weight:400;line-height:1.05;letter-spacing:-.035em; }
.guides-hero > p:last-child { max-width:430px;color:var(--muted);font-size:16px;line-height:1.7; }
.guide-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 28px;padding:34px 0 96px; }
.guide-card { overflow:hidden;border:1px solid var(--line);border-radius:28px;background:rgba(255,255,255,.86);box-shadow:var(--shadow);transition:transform .25s ease,box-shadow .25s ease; }
.guide-card:hover { transform:translateY(-5px);box-shadow:0 30px 70px rgba(34,34,34,.13); }
.guide-card--lead { grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr); }
.guide-card-media { min-height:310px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#dbe8d8,#f7d7c3); }
.guide-card-media img { width:100%;height:100%;object-fit:cover;transition:transform .5s ease; }
.guide-card:hover .guide-card-media img { transform:scale(1.025); }
.guide-card-media span { color:rgba(34,34,34,.34);font-family:"Iowan Old Style",Georgia,serif;font-size:48px;line-height:.82;text-align:center;letter-spacing:-.04em; }
.guide-card-copy { display:flex;flex-direction:column;align-items:flex-start;padding:30px; }
.guide-card-meta,.article-date { color:var(--muted);font-size:13px;letter-spacing:.04em; }
.guide-card h2 { margin:13px 0 12px;font-family:"Iowan Old Style",Georgia,"Microsoft JhengHei",serif;font-size:clamp(25px,3vw,38px);font-weight:400;line-height:1.25; }
.guide-card-copy > p:not(.guide-card-meta) { color:var(--muted);line-height:1.75; }
.guide-read-more { margin-top:auto;padding-top:25px;color:var(--brand-deep);font-weight:750; }
.guide-read-more span { display:inline-block;margin-left:8px;transition:transform .2s; }.guide-read-more:hover span { transform:translateX(5px); }
.guides-empty,.article-not-found { margin:64px 0 100px;padding:70px;border:1px dashed rgba(34,34,34,.2);border-radius:30px;text-align:center;background:#fff; }
.guides-empty span { color:var(--brand);font-size:13px;font-weight:800;letter-spacing:.15em; }.guides-empty h2,.article-not-found h1 { margin:14px 0;font-family:"Iowan Old Style",Georgia,serif;font-size:40px;font-weight:400; }.guides-empty p,.article-not-found p { color:var(--muted); }
.article-breadcrumb { display:flex;gap:8px;padding:34px 0 0;color:var(--muted);font-size:14px; }.article-breadcrumb a:hover { color:var(--brand); }
.article-header { max-width:940px;margin:0 auto;padding:76px 0 46px;text-align:center; }.article-header h1 { margin:15px 0 22px;font-family:"Iowan Old Style",Georgia,"Microsoft JhengHei",serif;font-size:clamp(40px,6.5vw,76px);font-weight:400;line-height:1.1;letter-spacing:-.035em; }.article-deck { max-width:760px;margin:0 auto 20px;color:var(--muted);font-size:19px;line-height:1.8; }
.article-hero-image { overflow:hidden;aspect-ratio:16/8;border-radius:32px;background:var(--sand);box-shadow:var(--shadow); }.article-hero-image img { width:100%;height:100%;object-fit:cover; }
.article-layout { display:grid;grid-template-columns:minmax(0,760px) minmax(230px,1fr);gap:70px;align-items:start;max-width:1040px;margin:64px auto 110px; }
.article-content { font-size:18px;line-height:1.95; }.article-content p { margin:0 0 1.3em; }.article-content h2 { margin:2.25em 0 .7em;font-family:"Iowan Old Style",Georgia,"Microsoft JhengHei",serif;font-size:36px;font-weight:400;line-height:1.3; }.article-content h3 { margin:1.9em 0 .55em;font-size:23px;line-height:1.45; }.article-content ul,.article-content ol { margin:0 0 1.5em;padding-left:1.5em; }.article-content blockquote { margin:2em 0;padding:22px 25px;border-left:4px solid var(--brand);background:var(--brand-soft);border-radius:0 16px 16px 0; }.article-content a { color:var(--brand-deep);text-decoration:underline;text-underline-offset:3px; }
.article-aside { position:sticky;top:100px;padding:24px;border-top:3px solid var(--brand);background:#fff;border-radius:0 0 18px 18px;box-shadow:0 15px 40px rgba(34,34,34,.07); }.article-aside span { color:var(--brand);font-size:12px;font-weight:800;letter-spacing:.14em; }.article-aside p { margin:12px 0 18px;color:var(--muted);font-size:14px;line-height:1.75; }.article-aside a,.article-back { color:var(--brand-deep);font-weight:750; }
.article-not-found { margin-top:80px; }.article-back { display:inline-block;margin-top:25px; }
@media (max-width:820px) { .guides-hero,.guide-card--lead,.article-layout { grid-template-columns:1fr; }.guides-hero { gap:10px;padding:28px 0 22px; }.guide-grid { grid-template-columns:1fr;padding-top:24px; }.article-aside { position:static; }.article-header { padding:55px 0 34px; }.article-layout { gap:36px;margin-top:42px; } }
@media (max-width:560px) { .guides-shell,.article-shell { width:min(calc(100% - 28px),1180px); }.guides-hero h1 { font-size:36px; }.guide-card-copy { padding:24px; }.article-hero-image { border-radius:20px; }.article-content { font-size:17px; }.article-content h2 { font-size:30px; }.guides-empty,.article-not-found { padding:45px 22px; } }
