/* Homepage content styles. Navigation and footer use the shared site styles. */
.home-layout{
  --paper:#f5f3ec;--white:#faf9f5;--soft:#eae9df;--ink:#292c25;
  --ink-2:#43483d;--muted:#64685e;--line:#d8d8cc;--yellow:#ffd400;
  --max:1120px;font-family:'Cabinet Grotesk',ui-sans-serif,system-ui,sans-serif;
}
.home-layout.page-enter{animation:none}
.home-layout .shell{width:min(calc(100% - 80px),var(--max))}
.home-layout :focus-visible{outline:2px solid #526044;outline-offset:5px}
.home-layout .hero-kicker,.home-layout .kicker{font:600 11px/1.6 'Cabinet Grotesk',system-ui,sans-serif;letter-spacing:.11em;color:var(--muted)}
.home-page .home-hero{
  display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.7fr);
  align-items:center;gap:56px;padding:82px 0 88px;
}
.home-page .home-hero h1{
  font:800 clamp(60px,7.2vw,100px)/1.02 'Cabinet Grotesk',system-ui,sans-serif;
  letter-spacing:-.055em;margin:26px 0 0;max-width:760px;
}
.home-hero h1 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--ink);background:linear-gradient(transparent 80%,var(--yellow) 80%);padding-right:.04em}
.home-page .home-hero .hero-copy{max-width:510px;font-size:19px;line-height:1.65;margin:26px 0 0;color:var(--ink-2);text-wrap:pretty}
.home-page .home-hero .hero-actions{gap:28px;align-items:center;margin-top:32px}
.home-layout .hero-actions .button{min-height:52px;padding:7px 8px 7px 22px;border-radius:999px;background:var(--ink);color:var(--paper);gap:18px;font-size:15px;font-weight:650;transition:transform .35s ease}
.home-layout .hero-actions .button:hover{transform:translateY(-2px)}
.home-layout .button-icon{display:grid;place-items:center;width:36px;height:36px;background:rgba(255,255,255,.16);border-radius:50%;font-size:18px;transition:transform .45s ease}
.home-layout .hero-actions .button:hover .button-icon{transform:rotate(45deg)}
.home-text-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;font-size:15px;font-weight:550}
.home-text-link:hover{text-decoration:underline;text-underline-offset:5px}
.home-sketch{max-width:330px;justify-self:end;width:100%;transform:rotate(-5deg)}
.home-sketch svg{display:block;width:100%;height:auto}
.home-layout .home-projects{padding:58px 0 64px;scroll-margin-top:100px}
.home-projects-head{margin-bottom:30px;gap:24px}
.home-layout .home-projects-head h2,.home-layout .section-head h2{
  font:400 clamp(32px,3.4vw,43px)/1.15 Georgia,'Times New Roman',serif;
  letter-spacing:-.035em;margin:10px 0 0;
}
.home-layout .home-projects-head .kicker{margin:0}
.home-layout .home-projects-all{border:0;gap:20px;font-size:15px;font-weight:550}
.home-layout .home-project-list{gap:30px}
.home-layout .home-project-card{padding:0;background:transparent;border:0;border-radius:0;overflow:visible}
.home-layout .home-project-visual{aspect-ratio:16/10;border-radius:5px}
.home-layout .home-project-content{padding:20px 0 0}
.home-layout .home-project-meta{font-size:12px;gap:8px;margin-bottom:13px}
.home-layout .home-project-status{padding:3px 7px;letter-spacing:.035em;font-weight:550}
.home-layout .home-project-copy h3{font-size:26px;font-weight:600;line-height:1.2;margin-bottom:12px;letter-spacing:-.025em}
.home-layout .home-project-copy p{font-size:16px;line-height:1.6;margin-bottom:24px;color:var(--ink-2)}
.home-layout .home-project-action{font-size:14px;padding-top:13px;font-weight:550}
.home-layout .home-notes{padding:64px 0 72px;border-top:0}
.home-layout .section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}
.home-layout .section-head .kicker{margin:0}
.home-layout .home-journal .journal-entry{grid-template-columns:145px minmax(0,1fr);gap:36px;padding:26px 0}
.home-layout .journal-entry-meta{font-size:13px}
.home-layout .journal-entry h3{font-size:27px}
.home-layout .journal-entry p{font-size:16px;color:var(--ink-2);max-width:690px}
.home-layout .journal-entry-detail{display:none}
.home-layout .contact-finale{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:46px 0 54px;border-top:1px solid var(--line)}
.home-layout .contact-finale .kicker{margin:0 0 12px}
.home-layout .contact-finale h2{font:400 clamp(28px,3vw,38px)/1.25 Georgia,'Times New Roman',serif;letter-spacing:-.035em;margin:0}
.home-layout .contact-finale h2 em{color:#65704f}
.home-layout .contact-finale .home-text-link{flex-shrink:0}

@media(min-width:901px) and (prefers-reduced-motion:no-preference){
  .home-sketch{animation:sketch-arrive 1s ease-out both}
  @keyframes sketch-arrive{from{opacity:0;transform:translateY(10px) rotate(-5deg)}to{opacity:1;transform:rotate(-5deg)}}
}
@media(max-width:1023px){
  .home-layout .shell{width:calc(100% - 56px)}
  .home-page .home-hero{gap:28px;padding:64px 0 68px;grid-template-columns:minmax(0,1.6fr) minmax(0,.7fr)}
  .home-layout .home-project-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
  .home-layout .home-project-meta{align-items:flex-start;flex-direction:column}
  .home-layout .home-project-copy h3{font-size:23px}
}
@media(max-width:767px){
  .home-layout .shell{width:calc(100% - 40px)}
  .home-page .home-hero{display:block;padding:48px 0 48px}
  .home-page .home-hero h1{font-size:clamp(48px,11vw,76px);margin-top:22px;line-height:1.06}
  .home-page .home-hero .hero-copy{font-size:17px;max-width:520px;margin-top:22px}
  .home-page .home-hero .hero-actions{gap:16px 24px;margin-top:26px}
  .home-sketch{display:none}
  .home-layout .home-projects{padding:36px 0 42px;scroll-margin-top:88px}
  .home-layout .home-projects-head{gap:14px;margin-bottom:26px;flex-direction:row;align-items:flex-end}
  .home-layout .home-projects-head h2,.home-layout .section-head h2{font-size:32px}
  .home-layout .home-projects-head .kicker{max-width:170px;font-size:10px}
  .home-layout .home-projects-all{gap:10px;font-size:14px}
  .home-layout .home-project-list{grid-template-columns:minmax(0,1fr);gap:36px}
  .home-layout .home-project-visual{aspect-ratio:16/9}
  .home-layout .home-project-meta{flex-direction:row;align-items:center}
  .home-layout .home-project-copy h3{font-size:27px}
  .home-layout .home-project-copy p{margin-bottom:18px}
  .home-layout .home-notes{padding:42px 0 46px}
  .home-layout .section-head{gap:14px;margin-bottom:22px}
  .home-layout .home-journal .journal-entry{grid-template-columns:minmax(0,1fr);gap:13px;padding:23px 0}
  .home-layout .journal-entry-meta{flex-direction:row;gap:16px;padding:0}
  .home-layout .journal-entry h3{font-size:25px}
  .home-layout .contact-finale{display:block;padding:32px 0 36px}
  .home-layout .contact-finale .home-text-link{margin-top:18px}
}
@media(max-width:380px){
  .home-layout .home-projects-head{flex-direction:column;align-items:flex-start;gap:10px}
  .home-layout .home-projects-head .kicker{max-width:none}
  .home-layout .hero-kicker{font-size:10px;letter-spacing:.07em}
}
@media(prefers-reduced-motion:reduce){
  html:has(.home-layout){scroll-behavior:auto}
  .home-layout,.home-layout *{animation:none!important;transition:none!important}
}
