:root{
  --paper:#f6efe3;
  --paper-2:#efe5d5;
  --panel:#fffaf2;
  --panel-soft:#fbf4ea;
  --ink:#211a16;
  --ink-2:#332820;
  --muted:#71665c;
  --soft:#9b8d7e;
  --line:#d8c9b7;
  --line-dark:#b9a791;
  --wine:#7a1220;
  --wine-2:#9a2836;
  --header:#2b211c;
  --header-soft:#3a2d25;
  --max:1160px;
  --gutter:clamp(18px,4vw,44px);
  --serif:Georgia,"Times New Roman",serif;
  --sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--sans);
  color:var(--ink);
  background:
    linear-gradient(180deg,rgba(255,250,242,.72),rgba(246,239,227,.82)),
    radial-gradient(circle at 90% 8%,rgba(122,18,32,.07),transparent 26rem),
    var(--paper);
  line-height:1.62;
  text-rendering:optimizeLegibility;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(90deg,rgba(33,26,22,.035) 1px,transparent 1px);
  background-size:86px 86px;
  opacity:.55;
}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit;color:inherit}
.wrap{width:min(var(--max),calc(100% - var(--gutter)*2));margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:12px;background:#fff;color:#000;padding:10px 14px;z-index:40}.skip-link:focus{left:12px}
.site-header{
  position:sticky;
  top:0;
  z-index:30;
  background:var(--header);
  color:var(--paper);
  border-bottom:1px solid rgba(255,250,242,.16);
  box-shadow:0 10px 30px rgba(28,20,15,.18);
}
.header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:13px;min-width:0}
.brand-mark{
  width:44px;height:44px;display:grid;place-items:center;
  background:var(--paper);
  color:var(--ink);
  border:1px solid rgba(255,250,242,.55);
  box-shadow:inset 6px 0 0 var(--wine);
  font-family:var(--serif);
  font-size:15px;
  letter-spacing:.04em;
}
.brand-caption{font-size:13px;color:#d8c9b7;white-space:nowrap}
.site-nav{display:flex;align-items:center;gap:2px}
.site-nav a{font-size:14px;color:#e5d9c8;padding:10px 13px;border:1px solid transparent}
.site-nav a:hover,.site-nav a[aria-current="page"]{background:rgba(255,250,242,.08);border-color:rgba(255,250,242,.16);color:#fff}
.nav-toggle{display:none;width:44px;height:44px;background:transparent;border:1px solid rgba(255,250,242,.24);padding:0}.nav-toggle span{display:block;width:21px;height:1px;background:var(--paper);margin:6px auto}
main{position:relative;z-index:1}
.hero{
  padding:clamp(56px,9vw,108px) 0 clamp(44px,7vw,82px);
  border-bottom:1px solid var(--line);
}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:clamp(34px,7vw,86px);align-items:end}
.kicker{margin:0 0 22px;color:var(--wine);font-size:15px;font-weight:650;letter-spacing:.01em}
h1,.page-title h1{font-family:var(--serif);font-weight:500;letter-spacing:-.045em;line-height:.94;margin:0;color:var(--ink)}
.hero h1{font-size:clamp(52px,8.4vw,112px);max-width:850px}
.lead{font-family:var(--serif);font-size:clamp(23px,2.65vw,35px);line-height:1.22;letter-spacing:-.018em;margin:28px 0 0;max-width:770px;color:#3b3028}
.intro-note{max-width:670px;color:var(--muted);font-size:17px;margin:20px 0 0}
.action-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.button-primary,.button-secondary{display:inline-flex;align-items:center;min-height:46px;padding:0 17px;border:1px solid var(--ink);font-weight:650}.button-primary{background:var(--ink);color:var(--paper)}.button-primary:hover{background:var(--wine);border-color:var(--wine)}.button-secondary{background:transparent}.button-secondary:hover{background:var(--panel)}
.contents-card{
  background:rgba(255,250,242,.78);
  border:1px solid var(--line-dark);
  border-top:5px solid var(--wine);
  padding:28px 30px 22px;
  box-shadow:0 18px 44px rgba(52,39,26,.08);
}
.contents-card h2{font-size:16px;margin:0 0 10px;color:var(--muted);font-weight:650}
.contents-card a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px 0;border-top:1px solid var(--line)}
.contents-card a:first-of-type{border-top:0}.contents-card strong{font-family:var(--serif);font-size:28px;line-height:1.1;font-weight:500;letter-spacing:-.02em}.contents-card span{color:var(--muted);font-size:15px}.contents-card a:hover strong{color:var(--wine)}
.home-sections{padding:54px 0;border-bottom:1px solid var(--line)}
.section-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.section-tile{background:rgba(255,250,242,.66);min-height:208px;padding:26px;display:flex;flex-direction:column;justify-content:space-between;transition:.16s ease}.section-tile:hover{background:var(--panel)}.section-tile h2{font-family:var(--serif);font-size:34px;line-height:1.02;margin:0;font-weight:500;letter-spacing:-.025em}.section-tile p{color:var(--muted);margin:20px 0 0;max-width:300px}.section-tile em{font-style:normal;font-size:13px;color:var(--wine);font-weight:700}.section-tile.wide{grid-column:span 2}
.preview{display:grid;grid-template-columns:minmax(260px,.55fr) minmax(0,1fr);gap:clamp(30px,6vw,80px);padding:clamp(54px,7vw,88px) 0}.section-heading{border-top:4px solid var(--ink);padding-top:22px}.section-heading h2{font-family:var(--serif);font-weight:500;font-size:clamp(42px,5.8vw,76px);letter-spacing:-.045em;line-height:.95;margin:0}.section-heading p{color:var(--muted);font-size:17px;margin:20px 0 0}.preview-body>p{font-size:18px;max-width:760px;margin:0 0 22px}.inline-tags{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 28px}.tag-pill,.pub-tags a,.active-filters span{font-size:13px;border:1px solid var(--line-dark);background:rgba(255,250,242,.65);padding:7px 10px}.tag-pill:hover,.pub-tags a:hover{border-color:var(--wine);color:var(--wine);background:var(--panel)}
.random-card{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:24px 0 26px;display:grid;grid-template-columns:190px minmax(0,1fr);gap:28px}.random-card h3{font-family:var(--serif);font-size:29px;line-height:1.06;letter-spacing:-.02em;text-transform:none;margin:0}.random-card p{color:var(--muted);margin:12px 0 0}.random-card .label{font-size:14px;color:var(--muted);margin:0 0 16px}.text-button{background:none;border:0;padding:0;color:var(--wine);border-bottom:1px solid currentColor;cursor:pointer;font-weight:650}.text-button:hover{color:var(--ink)}
.page-title{padding:clamp(52px,8vw,92px) 0 38px;border-bottom:1px solid var(--line)}.page-title h1{font-size:clamp(54px,8.2vw,112px)}.page-title p:not(.kicker){max-width:760px}.publication-title{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.42fr);gap:34px;align-items:end}.publication-title .lead{grid-column:1}.pub-summary{grid-column:2;grid-row:1 / span 2;border-left:1px solid var(--line-dark);padding-left:24px;display:grid;gap:12px}.pub-summary span{font-size:15px;color:var(--muted)}.pub-summary strong{display:block;font-family:var(--serif);font-size:29px;color:var(--ink);font-weight:500;line-height:1.05}
.publication-shell{display:grid;grid-template-columns:300px minmax(0,1fr);gap:34px;padding:38px 0 80px}.filter-panel{align-self:start;position:sticky;top:96px;border:1px solid var(--line-dark);background:rgba(255,250,242,.78);padding:20px}.filter-title{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:18px}.filter-title h2{font-size:16px;margin:0;font-weight:700}.reset-button{border:0;background:none;color:var(--wine);padding:0;border-bottom:1px solid currentColor;cursor:pointer}.filter-panel label{display:block;font-size:13px;color:var(--muted);margin-top:14px}.filter-panel input,.filter-panel select{width:100%;min-height:42px;margin-top:6px;border:1px solid var(--line);background:var(--panel);padding:8px 10px;color:var(--ink);border-radius:0}.filter-panel input:focus,.filter-panel select:focus{outline:2px solid rgba(122,18,32,.18);border-color:var(--wine)}
.results-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid var(--ink);padding-bottom:18px;margin-bottom:18px}#results-count{margin:0;font-weight:700}.active-filters{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.view-switch{display:flex;border:1px solid var(--line-dark)}.view-switch button{min-height:38px;border:0;background:transparent;padding:0 11px;cursor:pointer}.view-switch button+button{border-left:1px solid var(--line-dark)}.view-switch button.is-active{background:var(--ink);color:var(--paper)}
.publications-list{display:grid;gap:0;border-top:1px solid var(--line)}.publication-card{display:grid;grid-template-columns:78px minmax(0,1fr);gap:22px;padding:24px 0;border-bottom:1px solid var(--line)}.publication-card h2{font-family:var(--serif);font-size:clamp(24px,2.7vw,34px);line-height:1.08;letter-spacing:-.02em;margin:0;font-weight:500;text-transform:none}.publication-card h2 a:hover{color:var(--wine)}.publication-card p{color:var(--muted);margin:10px 0 0}.publication-year{font-family:var(--serif);font-size:26px;color:var(--wine);line-height:1.1}.pub-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.pub-meta span{font-size:13px;color:var(--muted);border:1px solid var(--line);padding:5px 8px;background:rgba(255,250,242,.55)}.pub-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.publications-list.compact .publication-card{grid-template-columns:62px minmax(0,1fr);padding:14px 0}.publications-list.compact .publication-card h2{font-size:20px}.publications-list.compact .pub-tags{display:none}.empty{padding:30px;border:1px solid var(--line);background:var(--panel)}
.fragments{padding:38px 0 80px;display:grid;gap:18px}.fragment-card{display:grid;grid-template-columns:230px minmax(0,1fr) auto;gap:24px;align-items:start;border-top:1px solid var(--line-dark);padding:24px 0}.fragment-meta h2{font-family:var(--serif);font-size:30px;line-height:1.05;margin:0;font-weight:500}.fragment-meta span{color:var(--wine);font-weight:700;font-size:13px}.fragment-text p{margin:0 0 12px;color:#3f342c}.copy-button{border:1px solid var(--ink);background:var(--ink);color:var(--paper);min-height:42px;padding:0 13px;cursor:pointer}.copy-button:hover,.copy-button.copied{background:var(--wine);border-color:var(--wine)}
.profile-list,.contact-composition{padding:42px 0 82px}.profile-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.profile-card{background:rgba(255,250,242,.72);min-height:220px;padding:26px;display:flex;flex-direction:column;justify-content:space-between}.profile-card h2{font-family:var(--serif);font-size:32px;margin:0;font-weight:500;letter-spacing:-.02em}.profile-card p{color:var(--muted);margin:12px 0 0}.profile-card:hover{background:var(--panel)}
.contact-composition{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:50px;align-items:start}.contact-card{font-style:normal;border:1px solid var(--line-dark);border-top:5px solid var(--wine);background:rgba(255,250,242,.74);padding:28px}.contact-card a{display:block;font-family:var(--serif);font-size:30px;margin-top:12px;letter-spacing:-.02em}.contact-card a:hover{color:var(--wine)}
.site-footer{position:relative;z-index:1;background:var(--header);color:#e8ddcc;margin-top:36px}.footer-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:14px}.footer-inner a{border-bottom:1px solid rgba(255,250,242,.45)}
@media (max-width:900px){.header-inner{height:auto;min-height:68px}.brand-caption{display:none}.nav-toggle{display:block}.site-nav{position:absolute;left:0;right:0;top:100%;display:none;flex-direction:column;align-items:stretch;background:var(--header);border-top:1px solid rgba(255,250,242,.14);padding:8px var(--gutter) 14px}.site-nav.is-open{display:flex}.site-nav a{padding:13px}.hero-grid,.preview,.publication-shell,.publication-title,.contact-composition{grid-template-columns:1fr}.pub-summary{grid-column:auto;grid-row:auto;border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.filter-panel{position:relative;top:auto}.section-grid,.profile-list{grid-template-columns:1fr}.section-tile.wide{grid-column:auto}.publication-card{grid-template-columns:1fr}.publication-year{font-size:18px}.random-card{grid-template-columns:1fr}.fragment-card{grid-template-columns:1fr}.copy-button{justify-self:start}.footer-inner{flex-direction:column;align-items:flex-start;justify-content:center;padding:18px 0}}
@media (max-width:560px){.hero{padding-top:44px}.hero h1{font-size:48px}.lead{font-size:23px}.contents-card{padding:22px}.contents-card a{grid-template-columns:1fr}.section-heading h2,.page-title h1{font-size:46px}.view-switch{display:none}.publication-shell{padding-top:26px}.fragment-meta h2{font-size:26px}}

/* Refinement after visual review: quieter book-and-scholarship composition */
:root{
  --header:#26372f;
  --header-soft:#31463b;
  --paper:#f5efe5;
  --paper-2:#ede2d2;
  --panel:#fffaf2;
  --line:#d9cab8;
  --wine:#7d1422;
  --max:1080px;
}
body{
  background:
    radial-gradient(circle at 12% 0%, rgba(125,20,34,.055), transparent 25rem),
    linear-gradient(180deg,#f8f2e8 0%,#f2eadf 100%);
}
body::before{
  background-image:none;
  opacity:0;
}
.site-header{
  background:linear-gradient(180deg,#2d4036 0%,#23342d 100%);
  border-bottom:1px solid rgba(255,250,242,.2);
  box-shadow:0 12px 32px rgba(31,24,18,.18);
}
.header-inner{height:70px;}
.brand{gap:0;}
.brand-mark{
  width:46px;
  height:46px;
  background:#f6efe4;
  border-color:rgba(246,239,228,.75);
  box-shadow:inset 6px 0 0 var(--wine),0 2px 0 rgba(0,0,0,.08);
}
.site-nav a{
  color:#eadfce;
  border-radius:0;
}
.site-nav a:hover,.site-nav a[aria-current="page"]{
  background:rgba(255,250,242,.1);
  border-color:rgba(255,250,242,.22);
}
.hero{
  padding:clamp(54px,7.5vw,92px) 0 clamp(42px,6vw,70px);
}
.hero-grid{
  grid-template-columns:minmax(0,1fr) minmax(300px,420px);
  align-items:center;
  gap:clamp(30px,6vw,72px);
}
.hero h1{
  font-size:clamp(48px,6.8vw,88px);
  line-height:.98;
  letter-spacing:-.038em;
  max-width:720px;
}
.lead{
  font-size:clamp(22px,2.2vw,30px);
  line-height:1.24;
  max-width:680px;
  margin-top:26px;
}
.intro-note{
  max-width:690px;
  font-size:16px;
}
.contents-card{
  justify-self:end;
  width:100%;
  max-width:420px;
  padding:26px 28px 18px;
  background:rgba(255,250,242,.86);
  border-color:#cdbba5;
  border-top:4px solid var(--wine);
  box-shadow:0 20px 48px rgba(53,41,27,.09);
}
.contents-card h2{
  margin-bottom:12px;
  color:#6d6258;
}
.contents-card a{
  display:block;
  padding:16px 0;
  border-top:1px solid var(--line);
}
.contents-card strong{
  display:block;
  font-size:25px;
  line-height:1.12;
  letter-spacing:-.018em;
}
.contents-card span{
  display:block;
  margin-top:5px;
  font-size:14px;
  line-height:1.42;
  color:#74685e;
}
.preview{
  grid-template-columns:minmax(240px,.48fr) minmax(0,1fr);
  padding:clamp(46px,6vw,72px) 0;
}
.section-heading h2{
  font-size:clamp(38px,4.9vw,64px);
  line-height:.98;
}
.random-card{
  grid-template-columns:160px minmax(0,1fr);
  gap:24px;
}
.random-card h3{
  font-size:clamp(22px,2.2vw,30px);
  line-height:1.12;
}
.random-card .pub-meta.single span{
  display:inline-block;
}
.page-title{
  padding:clamp(46px,7vw,78px) 0 34px;
}
.page-title h1{
  font-size:clamp(48px,6.6vw,88px);
  line-height:.98;
}
@media (max-width:900px){
  .header-inner{height:auto;min-height:66px;}
  .hero-grid,.preview{grid-template-columns:1fr;}
  .contents-card{justify-self:start;max-width:none;}
  .site-nav{background:#26372f;}
}
@media (max-width:560px){
  .hero h1{font-size:44px;}
  .lead{font-size:22px;}
  .random-card{grid-template-columns:1fr;}
}

/* Final hero status and contents tuning */
.hero-status{margin:0 0 18px;color:var(--wine);font-size:16px;font-weight:650;letter-spacing:.01em}
.contents-card h2{color:#4f463f;font-weight:700}
@media (max-width:560px){.hero-status{font-size:15px;margin-bottom:14px}}

/* Structure update: personal academic site sections */
.site-nav{gap:0; flex-wrap:wrap; justify-content:flex-end}
.site-nav a{font-size:13px; padding:9px 10px; white-space:nowrap}
.home-updates{display:grid;grid-template-columns:minmax(240px,.45fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);padding:44px 0 22px;border-bottom:1px solid var(--line)}
.compact-heading{border-top:3px solid var(--ink);padding-top:18px}.compact-heading h2{font-size:clamp(36px,4.2vw,58px)}
.updates-list{display:grid;gap:14px}.update-card{border:1px solid var(--line-dark);background:rgba(255,250,242,.76);padding:22px 24px}.update-card time{font-size:13px;color:var(--wine);font-weight:700}.update-card h3{font-family:var(--serif);font-size:28px;line-height:1.08;font-weight:500;letter-spacing:-.02em;margin:4px 0 0}.update-card p{color:var(--muted);margin:10px 0 0}.update-card a{display:inline-block;margin-top:12px;color:var(--wine);border-bottom:1px solid currentColor;font-weight:650}
.tag-block{margin-top:18px}.tag-block p{margin:0 0 9px;font-size:13px;color:var(--muted)}.tag-list{max-height:260px;overflow:auto;display:flex;flex-wrap:wrap;gap:6px;padding:2px 2px 8px}.tag-button{border:1px solid var(--line-dark);background:rgba(255,250,242,.74);padding:6px 9px;font-size:13px;cursor:pointer;text-align:left}.tag-button span{color:var(--muted);font-size:12px}.tag-button:hover,.tag-button.is-active{border-color:var(--wine);background:var(--wine);color:var(--paper)}.tag-button.is-active span,.tag-button:hover span{color:rgba(255,250,242,.74)}
.publication-link{display:inline-flex;align-items:center;border:1px solid var(--line-dark);padding:5px 9px;font-size:13px;color:var(--wine);background:rgba(255,250,242,.7)}.publication-link:hover{background:var(--wine);border-color:var(--wine);color:var(--paper)}
.publication-card.has-image{grid-template-columns:78px 96px minmax(0,1fr)}.pub-image{margin:0;width:96px;aspect-ratio:3/4;border:1px solid var(--line);background:var(--panel);overflow:hidden}.pub-image img{width:100%;height:100%;object-fit:cover;display:block}.random-image{margin:0 0 12px;width:90px;aspect-ratio:3/4;border:1px solid var(--line);background:var(--panel);overflow:hidden}.random-image img{width:100%;height:100%;object-fit:cover;display:block}
.useful-nav{display:flex;flex-wrap:wrap;gap:8px;padding:24px 0 8px}.useful-nav a{border:1px solid var(--line-dark);background:rgba(255,250,242,.72);padding:9px 12px;font-size:14px}.useful-nav a:hover{border-color:var(--wine);color:var(--wine);background:var(--panel)}.useful-section{padding:34px 0 44px;border-bottom:1px solid var(--line)}.useful-section .fragments{padding:22px 0 0}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:24px}.resource-grid.two{grid-template-columns:repeat(2,1fr)}.resource-card{background:rgba(255,250,242,.76);padding:24px;min-height:190px}.resource-card h3{font-family:var(--serif);font-size:29px;line-height:1.08;font-weight:500;letter-spacing:-.02em;margin:0}.resource-card p{color:var(--muted);margin:14px 0 0}
.teaching-list{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);margin-top:38px;margin-bottom:82px}.teaching-card{background:rgba(255,250,242,.76);padding:28px;display:grid;grid-template-columns:minmax(220px,.45fr) minmax(0,1fr) 190px;gap:24px;align-items:start}.teaching-card h2{font-family:var(--serif);font-size:34px;line-height:1.04;font-weight:500;letter-spacing:-.02em;margin:0}.teaching-card p{margin:0;color:#3f342c}.teaching-card span{color:var(--muted);font-size:14px}
.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:38px;margin-bottom:82px}.video-card{background:rgba(255,250,242,.76);padding:24px;min-height:320px}.video-placeholder{height:170px;border:1px solid var(--line-dark);background:linear-gradient(135deg,rgba(38,55,47,.12),rgba(125,20,34,.08));display:grid;place-items:center;font-family:var(--serif);font-size:32px;color:var(--muted);margin-bottom:20px}.video-card h2{font-family:var(--serif);font-size:31px;line-height:1.07;font-weight:500;letter-spacing:-.02em;margin:0}.video-card p{color:var(--muted);margin:12px 0}.video-card a{color:var(--wine);border-bottom:1px solid currentColor;font-weight:650}
.contact-links{grid-template-columns:360px minmax(0,1fr)}.link-column{border-top:1px solid var(--ink);padding-top:20px}.link-column h2{font-family:var(--serif);font-size:32px;line-height:1.08;font-weight:500;letter-spacing:-.02em;margin:0 0 16px}.link-column h2:not(:first-child){margin-top:34px}.profile-row{display:block;border-top:1px solid var(--line);padding:16px 0}.profile-row strong{display:block;font-family:var(--serif);font-size:25px;font-weight:500;letter-spacing:-.02em}.profile-row span,.muted-note{display:block;color:var(--muted);font-size:15px;margin-top:4px}.profile-row:hover strong{color:var(--wine)}
@media (max-width:1120px){.site-nav a{font-size:12.5px;padding:8px 7px}.header-inner{gap:12px}.brand-mark{width:42px;height:42px}}
@media (max-width:900px){.site-nav a{font-size:14px;padding:13px}.home-updates,.contact-links{grid-template-columns:1fr}.publication-card.has-image{grid-template-columns:1fr}.pub-image{width:110px}.resource-grid,.resource-grid.two,.video-grid{grid-template-columns:1fr}.teaching-card{grid-template-columns:1fr}.tag-list{max-height:none}.filter-panel{position:relative}.contact-card{max-width:none}}
@media (max-width:560px){.update-card,.resource-card,.video-card,.teaching-card{padding:20px}.video-placeholder{height:140px}.compact-heading h2{font-size:38px}}

/* Social posts placeholder */
.social-feed{display:grid;grid-template-columns:minmax(240px,.45fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);padding:44px 0 22px;border-bottom:1px solid var(--line)}
.social-feed-body{min-width:0}.social-posts{display:grid;gap:14px}.social-post-card{border:1px solid var(--line-dark);background:rgba(255,250,242,.76);padding:22px 24px}.social-post-card.is-placeholder{background:linear-gradient(135deg, rgba(255,250,242,.9), rgba(239,229,211,.72))}.social-post-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:13px;color:var(--wine);font-weight:700}.social-post-card h3{font-family:var(--serif);font-size:28px;line-height:1.08;font-weight:500;letter-spacing:-.02em;margin:6px 0 0}.social-post-card p{color:var(--muted);margin:10px 0 0}.social-post-card code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em;color:var(--ink)}.social-post-card a{display:inline-block;margin-top:12px;color:var(--wine);border-bottom:1px solid currentColor;font-weight:650}.social-channel-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.social-channel-links a{display:inline-flex;align-items:center;min-height:40px;border:1px solid var(--ink);padding:0 14px;font-weight:700;background:var(--paper)}.social-channel-links a:hover{background:var(--ink);color:var(--paper)}.social-channel-links a.is-disabled{color:var(--muted);border-color:var(--line-dark);cursor:default;background:rgba(255,250,242,.45)}
@media (max-width:900px){.social-feed{grid-template-columns:1fr}}
@media (max-width:560px){.social-post-card{padding:20px}.social-channel-links a{width:100%;justify-content:center}}


/* Final home-page refinements */
.home .hero h1{
  font-size:clamp(42px,5.1vw,66px);
  line-height:1.04;
  letter-spacing:-.032em;
  max-width:620px;
}
.home .hero-status{
  margin-bottom:18px;
}
.home .lead{
  font-size:clamp(20px,1.8vw,26px);
  line-height:1.34;
  max-width:620px;
  margin-top:24px;
}
.home .intro-note{
  font-size:15px;
  line-height:1.7;
  max-width:650px;
  margin-top:24px;
}
.home .hero{
  padding:clamp(42px,6vw,72px) 0 clamp(34px,5vw,56px);
}
.home .contents-card strong{
  font-size:23px;
}
.home .contents-card span{
  font-size:13.5px;
}
.home .contents-card a{
  padding:14px 0;
}
.home .preview{
  grid-template-columns:minmax(230px,.42fr) minmax(0,1fr);
}
.home .section-heading h2{
  font-size:clamp(36px,4.2vw,58px);
}
.random-card .label{
  color:var(--wine);
  font-weight:700;
}
.social-feed-controls{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:14px;
  color:var(--muted);
  font-size:14px;
}
.social-feed-controls[hidden]{
  display:none;
}
.social-feed-controls button:disabled{
  color:var(--muted);
  opacity:.48;
  cursor:default;
}
.social-post-card.is-placeholder h3{
  color:var(--ink);
}
.social-post-card.is-placeholder p{
  max-width:620px;
}
@media (max-width:900px){
  .home .hero h1{font-size:clamp(40px,10vw,58px);}
  .home .preview{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .home .hero h1{font-size:40px;}
  .home .lead{font-size:20px;}
}
