/*
Theme Name: Kamp Dush
Theme URI: https://clairekampdush.com
Author: Claire Kamp Dush
Description: Custom block theme for clairekampdush.com. Plum and marigold, Fraunces and Inter, single-column and prose-first.
Version: 1.0.0
Requires at least: 6.2
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: kampdush
*/

body{
  -webkit-font-smoothing:antialiased;
}
a{
  text-decoration:none;
}
a:hover{
  text-decoration:underline;
  text-decoration-thickness:1.5px;
  text-underline-offset:3px;
}
a:focus-visible{
  outline:2px solid var(--wp--preset--color--plum);
  outline-offset:3px;
  border-radius:2px;
}

/* ---------- Header / nav ---------- */
.ckd-header{
  border-bottom:1px solid var(--wp--preset--color--hairline);
  position:sticky;
  top:0;
  background:rgba(251,248,241,.94);
  backdrop-filter:blur(6px);
  z-index:50;
}
.ckd-nav-inner{
  padding-top:16px;
  padding-bottom:16px;
}
.ckd-wordmark,
.ckd-wordmark a{
  font-family:var(--wp--preset--font-family--fraunces);
  font-style:italic;
  font-weight:500;
  font-size:21px;
  color:var(--wp--preset--color--ink);
}
.ckd-links a{
  color:var(--wp--preset--color--ink-soft);
}
.ckd-links a:hover{
  color:var(--wp--preset--color--plum);
}
.ckd-links .current-menu-item a{
  color:var(--wp--preset--color--plum);
  font-weight:600;
}

/* ---------- Type helpers ---------- */
.ckd-eyebrow{
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--wp--preset--color--plum);
  font-weight:600;
}
.ckd-lede{
  color:var(--wp--preset--color--ink-soft);
}
.ckd-note{
  font-size:14.5px;
  color:var(--wp--preset--color--ink-soft);
}
.ckd-more a{
  font-weight:600;
  font-size:15px;
}
.ckd-more a::after{
  content:" \2192";
}

/* Marigold marker highlight */
.ckd-hl{
  background-image:linear-gradient(transparent 58%, var(--wp--preset--color--marigold-soft) 58%, var(--wp--preset--color--marigold-soft) 94%, transparent 94%);
  background-repeat:no-repeat;
  background-size:0% 100%;
  transition:background-size 1.1s cubic-bezier(.25,.6,.3,1) .25s;
}
html:not(.ckd-anim) .ckd-hl,
.ckd-hl.ckd-on{
  background-size:100% 100%;
}

/* ---------- Sections ---------- */
.ckd-section{
  border-top:1px solid var(--wp--preset--color--hairline);
  padding-top:64px;
  padding-bottom:64px;
}
.ckd-hero{
  padding-top:72px;
  padding-bottom:64px;
}
.ckd-portrait img{
  border-radius:14px;
}
.ckd-photo-break img{
  border-radius:16px;
}
.ckd-caption{
  font-size:13px;
  color:var(--wp--preset--color--ink-soft);
  text-align:right;
  margin-top:10px;
}

/* ---------- Theme cards ---------- */
.ckd-card{
  background:#ffffff;
  border:1px solid var(--wp--preset--color--hairline);
  border-radius:14px;
  padding:24px 24px 26px;
}
.ckd-card h3{
  color:var(--wp--preset--color--plum);
  font-size:19px;
  line-height:1.3;
  margin-bottom:10px;
}
.ckd-card p{
  font-size:15px;
  line-height:1.65;
  color:var(--wp--preset--color--ink-soft);
}

/* ---------- Deep plum data panel ---------- */
.ckd-panel{
  background:var(--wp--preset--color--plum-deep);
  border-radius:18px;
  padding:48px;
  color:var(--wp--preset--color--paper-deep);
}
.ckd-panel h2,
.ckd-panel h3{
  color:var(--wp--preset--color--paper);
}
.ckd-panel p{
  color:#D9C8D3;
}
.ckd-panel .ckd-eyebrow{
  color:var(--wp--preset--color--marigold);
}
.ckd-panel a{
  color:var(--wp--preset--color--marigold-soft);
}
.ckd-chips{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.ckd-chip{
  display:inline-block;
  border:1px solid var(--wp--preset--color--plum);
  border-radius:999px;
  padding:7px 18px;
  font-size:13.5px;
  color:var(--wp--preset--color--marigold-soft);
  font-weight:500;
}

/* ---------- Publications & lists ---------- */
.ckd-pub{
  font-size:15.5px;
  line-height:1.7;
  padding-left:1.5em;
  text-indent:-1.5em;
  margin-bottom:0.9em;
}
.ckd-person{
  font-size:16px;
  margin-bottom:0.7em;
}
.ckd-person strong{
  font-weight:600;
}

/* ---------- Footer ---------- */
.ckd-footer{
  border-top:1px solid var(--wp--preset--color--hairline);
  margin-top:64px;
}
.ckd-footer-inner{
  padding-top:28px;
  padding-bottom:28px;
  font-size:13.5px;
  color:var(--wp--preset--color--ink-soft);
}
.ckd-footmark{
  font-family:var(--wp--preset--font-family--fraunces);
  font-style:italic;
  font-size:16px;
  color:var(--wp--preset--color--ink);
}

/* ---------- Scroll reveal (JS adds .ckd-anim to <html>) ---------- */
html.ckd-anim .ckd-reveal{
  opacity:0;
  transform:translateY(14px);
  transition:opacity .7s ease, transform .7s ease;
}
html.ckd-anim .ckd-reveal.ckd-revealed{
  opacity:1;
  transform:none;
}
@media (prefers-reduced-motion: reduce){
  html.ckd-anim .ckd-reveal{
    opacity:1;
    transform:none;
    transition:none;
  }
  .ckd-hl{
    background-size:100% 100%;
    transition:none;
  }
}

@media (max-width:781px){
  .ckd-hero{
    padding-top:40px;
  }
  .ckd-panel{
    padding:36px 28px;
  }
}
