
:root{
  --paper:#f6e6ad;
  --paper-light:#fff7dc;
  --paper-deep:#e8c765;
  --burgundy:#641f2b;
  --red:#9b2731;
  --gold:#b58635;
  --ink:#34231d;
  --muted:#71584c;
  --line:rgba(100,31,43,.22);
  --shadow:0 18px 50px rgba(71,38,18,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-width:320px;color:var(--ink);background:var(--paper);font-family:Georgia,"Times New Roman",serif;line-height:1.65}
a{color:inherit}
img{display:block;max-width:100%}
.site-header{position:sticky;top:0;z-index:50;background:linear-gradient(180deg,#f0d77e,#e6c25c);border-bottom:1px solid rgba(86,40,22,.3);box-shadow:0 2px 14px rgba(70,35,20,.08)}
.brand-row{width:100%;max-width:1800px;margin:auto;min-height:84px;display:flex;align-items:center;gap:22px;padding:10px clamp(16px,3vw,52px)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--burgundy);white-space:nowrap;flex:0 0 auto}
.brand strong{display:block;font-size:1.12rem;letter-spacing:.16em;white-space:nowrap}
.brand small{display:block;font:700 .62rem Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#79502e}
.seal-logo{width:56px;height:56px;flex:0 0 56px;filter:drop-shadow(0 2px 2px rgba(70,24,20,.16))}
nav{display:flex;justify-content:flex-end;align-items:center;gap:clamp(12px,1.25vw,22px);margin-left:auto;min-width:0}
nav a{text-decoration:none;font:700 1rem Arial,sans-serif;text-transform:none;letter-spacing:.018em;color:#563020;white-space:nowrap;border-bottom:2px solid transparent;padding:10px 0}
nav a:hover{color:var(--burgundy);border-color:var(--red)}
.menu-button{display:none;margin-left:auto;border:0;background:var(--burgundy);color:white;padding:10px 14px;font-weight:700}

.hero{width:100%;display:grid;grid-template-columns:minmax(0,48%) minmax(0,52%);align-items:stretch;background:linear-gradient(90deg,#f7e9b6 0%,#f4dda0 48%,#ead075 100%);border-bottom:1px solid var(--line)}
.hero-copy{min-width:0;display:flex;flex-direction:column;justify-content:center;padding:clamp(56px,7vw,118px) clamp(28px,5.6vw,110px);position:relative;z-index:2}
.hero-copy h1{margin:14px 0 18px;color:var(--burgundy);font-weight:500;font-size:clamp(3.25rem,5.7vw,7.4rem);line-height:.92;letter-spacing:.01em;white-space:nowrap}
.roles{margin:0 0 11px;font:700 clamp(.78rem,1vw,.98rem) Arial,sans-serif;letter-spacing:.075em;color:#67432d}
.mission{max-width:650px;margin:0 0 28px;color:var(--muted);font-size:clamp(1rem,1.3vw,1.22rem);font-style:italic}
.kicker{font:700 .74rem Arial,sans-serif;letter-spacing:.19em;text-transform:uppercase;color:var(--red)}
.hero-image-wrap{min-width:0;position:relative;overflow:hidden;background:#d7b65c}
.hero-image{width:100%;height:100%;min-height:680px;object-fit:cover;object-position:center 26%}
.button-row{display:flex;flex-wrap:wrap;gap:12px}
.button{display:inline-block;border:1px solid var(--burgundy);background:var(--burgundy);color:#fff8dd;text-decoration:none;padding:12px 18px;font:700 .76rem Arial,sans-serif;letter-spacing:.075em;text-transform:uppercase;cursor:pointer}
.button.secondary{background:transparent;color:var(--burgundy)}

.chapter-nav{padding:62px clamp(18px,3vw,48px) 74px;background:linear-gradient(rgba(255,248,221,.55),rgba(255,248,221,.55)),repeating-linear-gradient(90deg,rgba(150,95,28,.04) 0 1px,transparent 1px 18px);border-bottom:1px solid var(--line)}
.chapter-nav h2{text-align:center;margin:0 0 34px;color:var(--burgundy);font-size:clamp(2.2rem,4vw,4rem);font-weight:500}
.chapter-grid{width:100%;max-width:1650px;margin:auto;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px}
.chapter{min-width:0;min-height:145px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px;background:#fff8df;border:1px solid rgba(145,91,34,.42);box-shadow:0 8px 25px rgba(72,38,17,.05);text-decoration:none;transition:.18s ease}
.chapter:hover{transform:translateY(-3px);background:white;box-shadow:var(--shadow)}
.chapter small{margin-bottom:7px;color:var(--gold);font:700 .62rem Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.chapter strong{color:var(--burgundy);font-size:clamp(1.2rem,1.7vw,1.85rem);font-weight:500;line-height:1.12}

.section{width:100%;max-width:1580px;margin:auto;padding:82px clamp(22px,4vw,72px)}
.section.alt{max-width:none;background:#fff3ce;border-block:1px solid var(--line);padding-inline:max(clamp(22px,4vw,72px),calc((100vw - 1580px)/2 + 72px))}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:38px;margin-bottom:34px}
.section-heading h2,.section h2{margin:.12em 0;color:var(--burgundy);font-size:clamp(2.25rem,4.2vw,4.6rem);font-weight:500;line-height:1.03}
.section-heading p{max-width:620px;margin:0;color:var(--muted)}
.about-section{display:grid;grid-template-columns:250px minmax(0,1fr);gap:46px;align-items:center}
.about-art img{width:225px;height:225px;object-fit:cover;border-radius:50%;border:9px solid rgba(255,249,225,.7);box-shadow:var(--shadow)}
.text-link{color:var(--burgundy);font-weight:700}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px;align-items:center}
.image-frame{padding:10px;background:#fff4cf;border:1px solid var(--gold);box-shadow:var(--shadow)}
.image-frame img{width:100%;height:420px;object-fit:cover}
.notice{padding:15px;background:#fff2c8;border:1px dashed var(--gold);color:#6f5034}
.book-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.book-mini{min-width:0;display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;padding:15px;background:#fff9e6;border:1px solid var(--line);box-shadow:0 7px 24px rgba(71,36,18,.055)}
.book-image img,.text-cover{width:120px;height:165px;object-fit:contain;background:#efe3bd}
.text-cover{display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;background:linear-gradient(145deg,#75232d,#b88739);color:#fff0bd;font-size:1rem;line-height:1.2}
.book-mini h3{margin:2px 0 8px;color:var(--burgundy);font-size:1.25rem;line-height:1.2}
.book-tag{color:#7c5429;font:700 .64rem Arial,sans-serif;letter-spacing:.11em;text-transform:uppercase}
.favorite-note{color:var(--red);font-weight:700;font-size:.93rem}
.book-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.book-links a{padding:7px 9px;border:1px solid var(--burgundy);color:var(--burgundy);text-decoration:none;font:700 .64rem Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.link-note{color:var(--muted);font-size:.78rem;font-style:italic}
.author-page-note{text-align:center;margin-top:30px}
.speaking-grid{display:grid;grid-template-columns:minmax(300px,430px) minmax(0,1fr);gap:44px;align-items:center}
.small-tedx{padding:10px;background:#fff4cf;border:1px solid var(--gold)}
.small-tedx img{width:100%;max-height:285px;object-fit:cover;object-position:center 25%}
.small-tedx p{margin:9px 3px 2px;color:var(--muted);font-size:.84rem}
.grid-3,.grid-4{display:grid;gap:22px}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.feature-card{min-width:0;padding:23px;background:#fff9e6;border:1px solid var(--line);box-shadow:0 9px 28px rgba(68,36,16,.06)}
.feature-card h3{margin:5px 0;color:var(--burgundy);font-size:1.35rem}
.feature-card p{color:var(--muted)}
.feature-card a{color:var(--burgundy);font-weight:700}
.image-card img{width:100%;height:235px;object-fit:cover;margin-bottom:14px}
.photo-card{margin:0;padding:9px;background:#fff9e6;border:1px solid var(--line)}
.photo-card img{width:100%;height:350px;object-fit:cover}
.photo-card figcaption{padding:10px;color:var(--burgundy);font-size:1.15rem}
.contact-section{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:48px;align-items:start}
.contact-form{padding:28px;background:#fff8df;border:1px solid var(--line);box-shadow:var(--shadow)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.contact-form label{display:block;margin-bottom:15px;color:var(--burgundy);font:700 .72rem Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase}
.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid rgba(101,30,42,.35);background:#fffdf5;color:var(--ink);font:1rem Georgia,serif}
.contact-form textarea{resize:vertical}
.honeypot{position:absolute!important;left:-9999px!important}
.form-note{margin-bottom:0;color:var(--muted);font-size:.8rem}
footer{margin-top:55px;padding:46px clamp(20px,4vw,70px);background:var(--burgundy);color:#fff1c4}
.footer-inner{width:100%;max-width:1580px;margin:auto}
.footer-sign{display:flex;align-items:center;gap:16px}
.footer-sign .seal-logo{width:50px;height:50px;flex-basis:50px}
.footer-sign strong{letter-spacing:.14em;white-space:nowrap}
.footer-sign p{margin:2px 0}
.footer-links{display:flex;flex-wrap:wrap;gap:18px;margin:27px 0 18px}
.footer-links a{color:white}
.copyright{margin:4px 0;opacity:.82;font-size:.83rem}

@media (max-width:1500px){
  nav{display:none;position:absolute;left:0;right:0;top:84px;padding:24px 28px;background:#efd27a;flex-wrap:wrap;justify-content:center;gap:18px 28px;border-bottom:1px solid rgba(86,40,22,.2)}
  nav.open{display:flex}
  .menu-button{display:block}
  .hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .hero-copy{padding-inline:clamp(26px,4.5vw,60px)}
  .hero-copy h1{font-size:clamp(3rem,5.35vw,5.4rem)}
  .chapter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:940px){
  .hero{display:flex;flex-direction:column}
  .hero-copy{order:1;padding:52px clamp(24px,6vw,64px) 42px}
  .hero-copy h1{font-size:clamp(3.1rem,10vw,6rem);white-space:nowrap}
  .hero-image-wrap{order:2;width:100%}
  .hero-image{height:auto;min-height:0;max-height:none;aspect-ratio:16/10;object-fit:cover;object-position:center 23%}
  .book-list{grid-template-columns:1fr}
  .about-section,.contact-section,.speaking-grid{grid-template-columns:1fr}
  .about-art img{margin:auto}
  .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
  .brand-row{min-height:72px;padding:8px 14px}
  .seal-logo{width:46px;height:46px;flex-basis:46px}
  .brand strong{font-size:.86rem;letter-spacing:.12em}
  .brand small{font-size:.55rem}
  nav{top:72px}
  .hero-copy{padding:38px 18px 34px}
  .hero-copy h1{font-size:clamp(2.35rem,11.4vw,4.2rem);letter-spacing:0}
  .roles{font-size:.72rem;line-height:1.55}
  .mission{font-size:1rem}
  .hero-image{aspect-ratio:4/5;object-position:center 22%}
  .chapter-grid,.grid-3,.grid-4,.split,.form-grid{grid-template-columns:1fr}
  .chapter{min-height:115px}
  .section,.section.alt{padding:62px 18px}
  .section-heading{display:block}
  .section-heading p{margin-top:14px}
  .book-mini{grid-template-columns:88px minmax(0,1fr);gap:14px}
  .book-image img,.text-cover{width:88px;height:126px}
  .image-frame img{height:320px}
  .photo-card img{height:310px}
}
@media (max-width:390px){
  .hero-copy h1{font-size:2.28rem}
  .brand span small{display:none}
  .book-mini{grid-template-columns:74px minmax(0,1fr)}
  .book-image img,.text-cover{width:74px;height:108px}
}


.linked-roles{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.34em;
}
.linked-roles a{
  color:inherit;
  text-decoration:none;
  border-bottom:1px solid rgba(101,30,42,.34);
  transition:color .18s ease,border-color .18s ease;
}
.linked-roles a:hover,
.linked-roles a:focus{
  color:var(--burgundy);
  border-bottom-color:var(--burgundy);
}


.youtube-nav{
  color:#8f1f27;
}
.youtube-button{
  background:#a22a2e;
  color:#fff7dc;
  border-color:#a22a2e;
}
.youtube-button:hover,
.youtube-button:focus{
  background:#7f1c24;
  border-color:#7f1c24;
}
.channel-url{
  margin:.9rem 0 0;
  font:700 .9rem Arial,sans-serif;
}
.channel-url a{
  color:var(--burgundy);
  overflow-wrap:anywhere;
}


/* V14: larger, clearer navigation on desktop and phone */
.site-header .brand-row{
  max-width:1600px;
  min-height:0;
  padding:10px 30px 12px;
  flex-wrap:wrap;
}
.site-header nav{
  order:3;
  width:100%;
  display:flex;
  justify-content:center;
  gap:clamp(14px,1.7vw,30px);
  margin:3px auto 0;
}
.site-header nav a{
  font-size:1rem !important;
  text-transform:none !important;
  letter-spacing:.018em !important;
  padding:8px 0 !important;
}
.menu-button{display:none}

.hero{
  max-width:1600px;
  width:100%;
  grid-template-columns:minmax(520px,.95fr) minmax(460px,1.05fr);
  gap:clamp(38px,5vw,88px);
  padding:54px clamp(28px,5vw,86px) 56px;
}
.hero-copy{min-width:0}
.hero-copy h1{
  white-space:nowrap;
  font-size:clamp(3.6rem,6.4vw,7.1rem);
}
.linked-roles{display:flex;flex-wrap:wrap;gap:.34em;align-items:center}
.linked-roles a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(101,30,42,.35)}
.linked-roles a:hover{color:var(--burgundy);border-bottom-color:var(--burgundy)}

.essay-photo-frame img.essay-photo{
  height:420px;
  object-position:center 9% !important;
}

/* Bigger, more visual Books section */
.book-list{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:22px !important;
}
.book-mini{
  display:flex !important;
  flex-direction:column;
  padding:16px !important;
}
.book-image{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:290px;
  background:#f3e6bf;
  border:1px solid rgba(101,30,42,.13);
}
.book-image img,.book-image .text-cover{
  width:100% !important;
  height:290px !important;
  object-fit:contain !important;
}
.book-image .text-cover{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  text-align:center;
}
.book-copy{padding-top:13px}
.history-label{
  display:inline-block;
  font:700 .66rem Arial,sans-serif;
  text-transform:uppercase;
  letter-spacing:.06em;
  padding:7px 9px;
  border:1px solid rgba(101,30,42,.28);
  color:#735449;
  background:#fbf1d2;
}
.book-photo-strip{
  margin-top:30px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.book-photo-strip figure{margin:0;background:#fff9e6;border:1px solid var(--line);padding:7px}
.book-photo-strip img{width:100%;height:220px;object-fit:cover}
.book-photo-strip figcaption{padding:8px 4px;color:var(--burgundy);font-weight:700}
.amazon-note{max-width:950px;margin:28px auto 5px;text-align:center;color:var(--muted)}
.supplied-links{max-width:900px;margin:20px auto 0;background:#fff8df;border:1px solid var(--line);padding:12px 16px}
.supplied-links summary{cursor:pointer;color:var(--burgundy);font-weight:700}
.supplied-links a{display:inline-block;margin:8px 12px 0 0;color:var(--burgundy)}

.podcast-media-row{
  margin-top:28px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.mini-photo,.mini-video{background:#fff9e6;border:1px solid var(--line);padding:9px}
.mini-photo img{width:100%;height:300px;object-fit:cover}
.mini-video video{width:100%;height:300px;background:#111;object-fit:contain}
.mini-video p{margin:8px 4px 2px;color:var(--burgundy)}

.speaking-feature{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);
  gap:42px;
  align-items:center;
}
.powells-photo{
  padding:10px;
  background:#fff4cf;
  border:1px solid var(--gold);
  box-shadow:var(--shadow);
}
.powells-photo img{width:100%;height:520px;object-fit:cover;object-position:center 36%}
.mini-kicker{font:700 .7rem Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
.topic-list h3,.speaking-card h3{font-size:1.8rem;color:var(--burgundy);margin:.2em 0}
.speaking-highlights{
  margin-top:28px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}
.speaking-card{
  display:grid;
  grid-template-columns:220px 1fr;
  gap:18px;
  align-items:center;
  padding:12px;
  background:#fff9e6;
  border:1px solid var(--line);
}
.speaking-card img{width:220px;height:190px;object-fit:cover}
.tedx-card{border-color:rgba(159,40,48,.45)}

.photo-mosaic{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  grid-auto-rows:250px;
  gap:12px;
}
.photo-mosaic figure{margin:0;position:relative;overflow:hidden;background:#ead9ae;border:1px solid var(--line)}
.photo-mosaic figure.wide{grid-column:span 2}
.photo-mosaic img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.photo-mosaic figure:hover img{transform:scale(1.025)}
.photo-mosaic figcaption{
  position:absolute;left:0;right:0;bottom:0;
  padding:24px 10px 8px;
  color:white;
  font-weight:700;
  background:linear-gradient(transparent,rgba(54,27,20,.76));
}

/* Responsive */
@media (max-width:1100px){
  .site-header nav{display:none;position:static;width:100%;padding:14px 0 4px;flex-wrap:wrap}
  .site-header nav.open{display:flex}
  .menu-button{display:block;margin-left:auto}
  .hero{grid-template-columns:1fr;gap:30px}
  .hero-copy h1{font-size:clamp(3.3rem,10vw,6rem)}
  .hero-image{height:min(68vh,720px)}
  .book-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .book-photo-strip{grid-template-columns:repeat(2,1fr)}
  .speaking-feature{grid-template-columns:1fr}
  .photo-mosaic{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:760px){
  .hero{padding:34px 20px 40px}
  .hero-copy h1{font-size:clamp(2.55rem,12vw,4.2rem)}
  .roles{font-size:.84rem}
  .book-list{grid-template-columns:1fr !important}
  .book-photo-strip,.podcast-media-row,.speaking-highlights{grid-template-columns:1fr}
  .speaking-card{grid-template-columns:1fr}
  .speaking-card img{width:100%;height:260px}
  .powells-photo img{height:390px}
  .photo-mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:210px}
}
@media (max-width:520px){
  .brand strong{font-size:.9rem}
  .hero-copy h1{font-size:2.45rem;letter-spacing:0}
  .linked-roles{line-height:1.9}
  .photo-mosaic{grid-template-columns:1fr;grid-auto-rows:260px}
  .photo-mosaic figure.wide{grid-column:span 1}
  .book-photo-strip{grid-template-columns:1fr}
}


/* V15 corner update: upper-right artwork + larger upper-left seal */
.site-header{
  overflow:hidden;
}
.site-header .brand-row{
  position:relative;
  padding-top:0 !important;
  padding-right:0 !important;
  padding-bottom:10px !important;
  padding-left:18px !important;
}
.site-header .brand{
  position:relative;
  z-index:2;
  align-self:flex-start;
  padding-top:4px;
}
.site-header .seal-logo{
  width:84px !important;
  height:84px !important;
  flex-basis:84px !important;
}
.site-header .brand strong{
  font-size:1.05rem;
}
.corner-art{
  position:absolute;
  top:0;
  right:0;
  width:112px;
  height:112px;
  object-fit:cover;
  border-radius:50%;
  display:block;
  z-index:1;
}
.site-header nav{
  position:relative;
  z-index:2;
}
.menu-button{
  position:relative;
  z-index:2;
}
@media (max-width:1100px){
  .site-header .brand-row{
    padding-left:14px !important;
  }
  .site-header .seal-logo{
    width:72px !important;
    height:72px !important;
    flex-basis:72px !important;
  }
  .corner-art{
    width:92px;
    height:92px;
  }
}
@media (max-width:760px){
  .site-header .brand-row{
    padding-left:12px !important;
    padding-bottom:8px !important;
  }
  .site-header .seal-logo{
    width:64px !important;
    height:64px !important;
    flex-basis:64px !important;
  }
  .corner-art{
    width:78px;
    height:78px;
  }
}


/* Annie Wang Family page — uses existing V15 visual system */
.family-hero .hero-copy h1{font-size:clamp(2.8rem,5vw,5.8rem)}
.family-hero-image{object-position:center center}
.family-hero + .section{padding-top:72px}
@media(max-width:760px){
  .family-hero .hero-copy h1{font-size:clamp(2.35rem,10vw,4rem)}
}
