.interior-main {
  --interior-cream: #fff8ea;
  --interior-ink: #36302a;
  background: var(--interior-cream);
  color: var(--interior-ink);
  font-family: AvenirSite, Avenir, "Avenir Next", Arial, sans-serif;
}
.interior-hero {
  min-height: 300px;
  display: flex;
  align-items: center;
  background: linear-gradient(90deg, rgba(35,30,27,.66), rgba(35,30,27,.43)), var(--interior-hero-image, linear-gradient(120deg,#745e45,#4d453b));
  background-position: center;
  background-size: cover;
}
.interior-hero-inner { width: min(1248px, calc(100% - 56px)); margin: 0 auto; }
.interior-hero h1 {
  max-width: 650px;
  margin: 0;
  color: #fffdf5;
  font-family: Sanchez, Georgia, serif;
  font-size: clamp(38px, 4vw, 58px);
  font-weight: 400;
  line-height: 1.06;
  text-shadow: 0 1px 2px #0004;
}
.interior-copy {
  width: min(1248px, calc(100% - 56px));
  margin: 0 auto;
  padding: 54px 0 72px;
  font-size: 16px;
  line-height: 1.55;
}
.interior-copy p { margin: 0 0 18px; }
.interior-copy h2, .interior-faq-group h2 {
  margin: 48px 0 20px;
  font: 400 30px/1.2 Sanchez, Georgia, serif;
}
.interior-copy h2:first-child { margin-top: 0; }
.interior-copy .interior-detail { font-weight: 600; margin-bottom: 8px; }
.interior-page:not(.interior-en-faq) .interior-copy:not(:has(h2)) { max-width: 1030px; }
.interior-feature-sections { width: min(1248px, calc(100% - 56px)); margin: 0 auto; padding: 38px 0 72px; }
.interior-feature-row { position: relative; display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 0; min-height: 280px; margin: 0 0 44px; }
.interior-feature-row.reverse .interior-feature-card { order: 2; }
.interior-feature-row.reverse .interior-feature-photo { order: 1; }
.interior-feature-card { position: relative; z-index: 1; padding: 34px 40px; background: #FFF1B8; border-radius: 10px; }
.interior-feature-card h2 { margin: 0 0 20px; font: 400 29px/1.2 Sanchez, Georgia, serif; }
.interior-feature-card p { margin: 0 0 14px; line-height: 1.45; }
.interior-feature-photo { height: 320px; margin: 0; overflow: hidden; border-radius: 9px; }
.interior-feature-photo img { width: 100%; height: 100%; object-fit: cover; }
.interior-feature-row.has-photo:not(.reverse) .interior-feature-card { margin-right: -28px; }
.interior-feature-row.reverse.has-photo .interior-feature-card { margin-left: -28px; }
.interior-feature-row.text-only { display: block; }
.interior-feature-row.text-only .interior-feature-card { padding: 42px 48px; }
.interior-resource-intro { padding-bottom: 20px; }
.interior-resource-grid { width: min(1248px, calc(100% - 56px)); margin: 0 auto; padding: 0 0 56px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.interior-resource-card { background: #FFF1B8; border-radius: 10px; padding: 30px 34px; }
.interior-resource-card:nth-child(3n+2) { background: #FFDC83; }
.interior-resource-card h2 { margin: 0 0 12px; font: 400 25px/1.2 Sanchez, Georgia, serif; }
.interior-resource-card p { margin: 0; line-height: 1.45; }
.interior-faq-intro { padding-bottom: 0; }
.interior-faq-intro p { margin-bottom: 0; }
.interior-faq { width: min(1248px, calc(100% - 56px)); margin: 0 auto; padding: 20px 0 76px; }
.interior-faq-group { margin-bottom: 52px; }
.interior-faq-group h2 { margin: 0 0 18px; }
.interior-faq-item { border-top: 1px solid #dcd4c5; }
.interior-faq-item:last-child { border-bottom: 1px solid #dcd4c5; }
.interior-faq-item summary {
  position: relative;
  list-style: none;
  cursor: pointer;
  padding: 15px 34px 15px 0;
  font: 400 19px/1.35 Sanchez, Georgia, serif;
}
.interior-faq-item summary::-webkit-details-marker { display: none; }
.interior-faq-item summary::after { content: '⌄'; position: absolute; right: 4px; top: 12px; font: 22px/1 Arial,sans-serif; transition: transform .2s; }
.interior-faq-item[open] summary::after { transform: rotate(180deg); }
.interior-faq-answer { max-width: 1050px; padding: 0 40px 18px 0; font-size: 16px; line-height: 1.55; }
.interior-gallery { background: #332c28; padding: 56px 24px 48px; }
.interior-gallery-stage { position: relative; width: min(850px, 90vw); height: min(600px, 62vw); min-height: 280px; margin: 0 auto 22px; }
.interior-gallery-item { display: none; height: 100%; margin: 0; text-align: center; }
.interior-gallery-item.is-active { display: block; }
.interior-gallery-item img { max-width: 100%; width: 100%; height: 100%; object-fit: contain; }
.interior-gallery-controls { display: flex; justify-content: center; align-items: center; gap: 26px; }
.interior-gallery-controls > button { border: 0; background: none; color: #ddd5ca; font-size: 26px; cursor: pointer; }
.interior-gallery-thumbs { display: flex; gap: 8px; }
.interior-gallery-thumbs button { width: 62px; height: 48px; padding: 0; border: 1px solid transparent; background: transparent; opacity: .55; cursor: pointer; }
.interior-gallery-thumbs button.is-active { border-color: #fff8ea; opacity: 1; }
.interior-gallery-thumbs img { width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 700px) {
  .interior-hero { min-height: 250px; }
  .interior-hero-inner, .interior-copy, .interior-faq { width: calc(100% - 40px); }
  .interior-hero h1 { font-size: clamp(34px, 10vw, 46px); }
  .interior-copy { padding: 34px 0 48px; font-size: 15px; }
  .interior-copy h2, .interior-faq-group h2 { font-size: 26px; }
  .interior-faq { padding: 20px 0 50px; }
  .interior-faq-item summary { font-size: 17px; }
  .interior-faq-answer { font-size: 15px; }
  .interior-gallery { padding: 30px 10px; }
  .interior-gallery-stage { width: 94vw; height: 70vw; min-height: 230px; }
  .interior-feature-sections, .interior-resource-grid { width: calc(100% - 40px); }
  .interior-feature-sections { padding: 24px 0 48px; }
  .interior-feature-row { display: flex; flex-direction: column; gap: 0; margin-bottom: 30px; align-items: stretch; }
  .interior-feature-row.reverse .interior-feature-card, .interior-feature-row.reverse .interior-feature-photo { order: initial; }
  .interior-feature-card, .interior-feature-row.text-only .interior-feature-card { padding: 26px 24px; }
  .interior-feature-card h2 { font-size: 24px; }
  .interior-feature-photo { height: 250px; margin: 0 0 0 14%; width: 86%; }
  .interior-feature-row.has-photo:not(.reverse) .interior-feature-card, .interior-feature-row.reverse.has-photo .interior-feature-card { margin: 0 0 -12px; }
  .interior-feature-row.reverse .interior-feature-photo { margin: 0 14% 0 0; }
  .interior-resource-grid { grid-template-columns: 1fr; padding-bottom: 40px; }
}
.donation-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:32px 0 60px}.donation-card{background:#FFF1B8;border-radius:11px;padding:38px 48px}.donation-card h3{font-size:24px;margin:0 0 18px}.donation-card p:last-child{margin-bottom:0}@media(max-width:700px){.donation-cards{grid-template-columns:1fr}.donation-card{padding:28px}}
.caregiver-intro{padding-bottom:36px;max-width:1248px}.caregiver-intro p{max-width:860px}.caregiver-grid{width:min(1248px,calc(100% - 56px));margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.caregiver-card{border-radius:12px;background:#FFF1B8;padding:38px 42px}.caregiver-card:nth-child(2),.caregiver-card:nth-child(3){background:#FFDC83}.caregiver-card h2{font:400 27px/1.2 Sanchez,Georgia,serif;margin:0 0 18px}.caregiver-card p{line-height:1.5;margin:0}.caregiver-contact{padding-top:45px}@media(max-width:700px){.caregiver-grid{width:calc(100% - 40px);grid-template-columns:1fr}.caregiver-card{padding:28px}.caregiver-card h2{font-size:24px}}
.interior-en-caregiver-support .interior-hero,.interior-zh-caregiver-support .interior-hero{background:#FFF1B8 url('/assets/site/Bee_Flight1.webp') no-repeat 88% 50%;background-size:auto 80%}.interior-en-caregiver-support .interior-hero h1,.interior-zh-caregiver-support .interior-hero h1{color:#36302A;text-shadow:none;max-width:650px}@media(max-width:700px){.interior-en-caregiver-support .interior-hero,.interior-zh-caregiver-support .interior-hero{background-size:auto 50%;background-position:100% 80%}.interior-en-caregiver-support .interior-hero h1,.interior-zh-caregiver-support .interior-hero h1{max-width:82%}}
.interior-en-caregiver-support .interior-hero,.interior-zh-caregiver-support .interior-hero{background-position:95% 50%;background-size:auto 55%}.interior-en-caregiver-support .interior-hero h1,.interior-zh-caregiver-support .interior-hero h1{max-width:62%}@media(max-width:767px){.interior-en-caregiver-support .interior-hero,.interior-zh-caregiver-support .interior-hero{background-position:98% 55%;background-size:auto 38%}.interior-en-caregiver-support .interior-hero h1,.interior-zh-caregiver-support .interior-hero h1{max-width:70%;font-size:34px}}
/* Bee Buddies follows the original's alternating photos, rounded panels and lists. */
.interior-en-bee-buddies .interior-feature-sections,
.interior-zh-bee-buddies .interior-feature-sections{padding-top:48px}
.interior-en-bee-buddies .interior-feature-row,
.interior-zh-bee-buddies .interior-feature-row{align-items:start; margin-bottom:90px}
.interior-en-bee-buddies .interior-feature-row.has-photo .interior-feature-card,
.interior-zh-bee-buddies .interior-feature-row.has-photo .interior-feature-card{margin-top:54px}
.interior-en-bee-buddies .interior-feature-card,
.interior-zh-bee-buddies .interior-feature-card{padding:40px 44px; line-height:1.55}
.interior-en-bee-buddies .interior-feature-card p,
.interior-zh-bee-buddies .interior-feature-card p{line-height:1.55}
.interior-en-bee-buddies .interior-feature-card p:last-child,
.interior-zh-bee-buddies .interior-feature-card p:last-child{margin-bottom:0}
.buddies-list{margin:12px 0 18px; padding-left:1.35em; line-height:1.55}
.buddies-list li{padding-left:.15em; margin-bottom:.45em}
.buddies-list li:last-child{margin-bottom:0}
.buddies-list strong{font-weight:600}
.buddies-star{position:absolute;z-index:2; width:90px; height:auto; top:270px; right:14%}
.interior-feature-row.reverse .buddies-star{right:auto; left:18%}
@media(max-width:700px){
 .interior-en-bee-buddies .interior-feature-sections,.interior-zh-bee-buddies .interior-feature-sections{padding-top:30px}
 .interior-en-bee-buddies .interior-feature-row,.interior-zh-bee-buddies .interior-feature-row{margin-bottom:50px}
 .interior-en-bee-buddies .interior-feature-row.has-photo .interior-feature-card,.interior-zh-bee-buddies .interior-feature-row.has-photo .interior-feature-card{margin-top:0}
 .interior-en-bee-buddies .interior-feature-card,.interior-zh-bee-buddies .interior-feature-card{padding:28px 25px}
 .buddies-star{width:58px;top:auto;bottom:-20px;right:7%}
 .interior-feature-row.reverse .buddies-star{left:7%}
}
.interior-en-bee-buddies .interior-feature-row.text-only,.interior-zh-bee-buddies .interior-feature-row.text-only{min-height:0}
.interior-en-bee-buddies .interior-feature-row:last-child,.interior-zh-bee-buddies .interior-feature-row:last-child{margin-bottom:0}
.donation-impact-list{margin:0 0 28px;padding-left:1.45em;line-height:1.55}
.donation-impact-list li{padding-left:.15em;margin:0 0 .65em}
.donation-impact-list li:last-child{margin-bottom:0}
/* Keepers uses the original's spacious, numbered objectives layout. */
.keeper-sections{width:min(1200px,calc(100% - 56px));margin:0 auto;padding:58px 0 90px;display:grid;gap:12px}
.keeper-panel{background:#fff1b8;border-radius:11px;padding:64px 72px}
.keeper-panel h2{font:400 30px/1.2 Sanchez,Georgia,serif;margin:0 0 24px}
.keeper-panel p{line-height:1.55;margin:0 0 12px}
.keeper-panel p:last-child{margin-bottom:0}
.keeper-objectives{margin:0;padding-left:2.1em}
.keeper-objectives li{padding-left:.15em;margin:0 0 34px;line-height:1.55}
.keeper-objectives li:last-child{margin-bottom:0}
.keeper-objectives strong{font-weight:600}
.keeper-objectives p{margin:6px 0 0}
@media(max-width:700px){.keeper-sections{width:calc(100% - 40px);padding:30px 0 55px}.keeper-panel{padding:30px 26px}.keeper-panel h2{font-size:25px;line-height:1.25}.keeper-objectives{padding-left:1.6em}.keeper-objectives li{margin-bottom:25px}}
.interior-en-bee-keepers .interior-hero,.interior-zh-bee-keepers .interior-hero{min-height:360px;align-items:flex-end;padding-bottom:45px}
.interior-en-bee-keepers .interior-hero h1,.interior-zh-bee-keepers .interior-hero h1{font-size:clamp(38px,4.1vw,58px)}
@media(max-width:700px){.interior-en-bee-keepers .interior-hero,.interior-zh-bee-keepers .interior-hero{min-height:250px;padding-bottom:28px}.interior-en-bee-keepers .interior-hero h1,.interior-zh-bee-keepers .interior-hero h1{font-size:clamp(34px,10vw,46px)}}
.keeper-intro,.keeper-details{position:relative}
.keeper-intro{display:flex;align-items:center;gap:36px;overflow:visible}
.keeper-intro-copy{flex:1;min-width:0}
.keeper-bee{display:block;width:clamp(95px,12vw,145px);height:auto;flex:none;animation:keeper-float 4s ease-in-out infinite}
.keeper-star{position:absolute;display:block;height:auto;pointer-events:none}
.keeper-star-intro{width:55px;right:36px;top:-23px;transform:rotate(8deg)}
.keeper-star-details{width:58px;right:38px;top:-27px;transform:rotate(-8deg)}
.keeper-objectives li{transition:color .2s ease}
@media(hover:hover){.keeper-objectives li:hover{color:#8b4d00}}
@keyframes keeper-float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-7px) rotate(2deg)}}
@media(max-width:700px){.keeper-intro{gap:14px;align-items:flex-end}.keeper-bee{width:65px}.keeper-star-intro{width:38px;right:18px;top:-18px}.keeper-star-details{width:40px;right:20px;top:-20px}}
@media(max-width:390px){.keeper-intro{display:block}.keeper-bee{margin:10px 0 -6px auto;width:60px}}
@media(prefers-reduced-motion:reduce){.keeper-bee{animation:none}.keeper-objectives li{transition:none}}
