.life-page{min-height:calc(100 * var(--layout-vh, 1vh));background:#fff;color:#191919}
.life-layout{display:grid;grid-template-columns:220px minmax(0,1fr);column-gap:58px;row-gap:22px;padding-top:40px;padding-bottom:90px}
.life-back{grid-column:1;grid-row:1;margin-top:18px;margin-bottom:0;margin-left:15px;justify-self:start}
.life-sidebar{position:sticky;top:108px;grid-column:1;grid-row:2;align-self:first baseline;padding-top:0}
.life-sidebar-label,.life-panel-kicker{font:600 10px/1.3 Helvetica,"Helvetica Neue",Arial,sans-serif;letter-spacing:.15em;color:#888;text-transform:uppercase}
.life-sidebar-label{margin:0 0 24px 15px}
.life-tab{width:100%;display:flex;align-items:center;justify-content:space-between;padding:17px 15px;border:0;border-top:1px solid #e9e6e6;background:transparent;color:#777;text-align:left;font:500 21px/1.1 Helvetica,"Helvetica Neue",Arial,sans-serif;cursor:pointer;transition:color .2s,padding .2s,border-color .2s}
.life-tab:last-child{border-bottom:1px solid #e9e6e6}
.life-tab span{color:#e59aa8;font-size:17px;opacity:0;transform:translate(-4px,4px);transition:opacity .2s,transform .2s}
.life-tab:hover,.life-tab.is-active{padding-left:20px;color:#191919;border-color:#e6b8c0}
.life-tab.is-active span{opacity:1;transform:translate(0,0)}
.life-content{min-width:0;grid-column:2;grid-row:2;align-self:first baseline;padding-top:0}
.life-panel{animation:life-panel-in .36s ease both}
.life-panel[hidden]{display:none}
.life-panel-heading{display:flex;align-items:baseline;gap:15px;padding-bottom:21px;border-bottom:1px solid #e7e5e5}
.life-panel-heading .index{font:500 11px/1 Helvetica,"Helvetica Neue",Arial,sans-serif;color:#e59aa8;letter-spacing:.1em}
.life-panel-heading h1{margin:0;font:600 clamp(30px,calc(4 * var(--layout-vw, 1vw)),44px)/.98 Helvetica,"Helvetica Neue",Arial,sans-serif;letter-spacing:-.06em}
.life-panel-kicker{margin-left:auto;white-space:nowrap}
.travel-blog{display:flex;flex-direction:column;gap:38px;margin-top:30px}
.travel-entry{display:grid;grid-template-columns:minmax(230px,.82fr) minmax(0,1fr);align-items:center;gap:32px;margin:0;min-width:0}
.travel-entry:nth-child(even){grid-template-columns:minmax(0,1fr) minmax(230px,.82fr)}
.travel-entry:nth-child(even) figure{grid-column:2;grid-row:1}
.travel-entry:nth-child(even) .travel-entry-copy{grid-column:1;grid-row:1}
.travel-entry figure{height:245px;margin:0;overflow:hidden;border-radius:13px;background:#f7f6f6;box-shadow:0 8px 22px rgba(48,32,37,.08)}
.travel-entry figure img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.travel-entry:nth-child(3) figure img{object-position:center 70%}
.travel-entry:hover figure img{transform:scale(1.035)}
.travel-entry-copy{padding:15px 3px 0}
.travel-entry-meta{margin:0 0 7px;color:#e59aa8;font:600 10px/1.2 Helvetica,"Helvetica Neue",Arial,sans-serif;letter-spacing:.13em}
.travel-entry h2{margin:0 0 8px;font:600 25px/.98 Helvetica,"Helvetica Neue",Arial,sans-serif;letter-spacing:-.045em}
.travel-entry-note{max-width:390px;margin:0;color:#737070;font:400 14px/1.55 Helvetica,"Helvetica Neue",Arial,sans-serif}
.dog-gallery{display:flex;flex-direction:column;gap:38px;margin-top:30px}
.puppy-memory{display:grid;grid-template-columns:minmax(230px,.82fr) minmax(0,1fr);align-items:center;gap:32px;min-width:0}
.puppy-memory:nth-child(even){grid-template-columns:minmax(0,1fr) minmax(230px,.82fr)}
.puppy-memory:nth-child(even) figure{grid-column:2;grid-row:1}
.puppy-memory:nth-child(even) .puppy-note{grid-column:1;grid-row:1}
.puppy-note{max-width:390px;margin:0;color:#737070;font:400 14px/1.55 Helvetica,"Helvetica Neue",Arial,sans-serif}
.puppy-note:empty{min-height:3em}
.dog-gallery figure{position:relative;width:100%;height:245px;min-width:0;min-height:0;margin:0;overflow:hidden;border:1px solid #f0ebec;border-radius:13px;background:#fff;box-shadow:0 8px 22px rgba(48,32,37,.07)}
.dog-gallery img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.puppy-memory:first-child img{object-position:center 85%}
.puppy-memory:nth-child(4) img{object-position:center 72%}
.dog-gallery figure:hover img{transform:scale(1.035)}
@keyframes life-panel-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){
 .life-layout{grid-template-columns:1fr;gap:27px;padding-top:24px;padding-bottom:60px}
 .life-back{grid-column:1;grid-row:1;margin-top:0;margin-left:3px}
 .life-content{grid-column:1;grid-row:3;align-self:start;padding-top:0}
 .life-sidebar{position:static;grid-column:1;grid-row:2;align-self:start;display:grid;grid-template-columns:1fr 1fr;padding:0}
 .life-sidebar-label{grid-column:1/-1;margin:0 0 8px 3px}
 .life-tab{padding:13px 10px;font-size:18px}
 .life-tab:hover,.life-tab.is-active{padding-left:14px}
 .life-tab:last-child{border-bottom:0}
 .life-panel-heading{gap:10px;padding-bottom:15px}
 .life-panel-kicker{font-size:8px;letter-spacing:.1em}
 .travel-blog{gap:28px;margin-top:22px}
 .travel-entry,.travel-entry:nth-child(even){display:flex;flex-direction:column;align-items:stretch;gap:14px}
 .travel-entry:nth-child(even) figure,.travel-entry:nth-child(even) .travel-entry-copy{order:initial}
 .travel-entry figure{height:260px}
 .travel-entry h2{font-size:23px}
 .life-panel-heading h1{font-size:34px}
 .dog-gallery{gap:28px;margin-top:22px}
 .puppy-memory,.puppy-memory:nth-child(even){display:flex;flex-direction:column;align-items:stretch;gap:14px}
 .puppy-note{font-size:14px;line-height:1.65}
 .dog-gallery figure{height:260px;border-radius:10px}
}
@media(prefers-reduced-motion:reduce){.life-panel{animation:none}.life-tab,.life-tab span{transition:none}}

.puppy-intro{margin:24px 0 0;color:#737070;font:400 16px/1.7 Helvetica,"Helvetica Neue",Arial,sans-serif}

.puppy-heading{padding-bottom:21px;border-bottom:1px solid #e7e5e5}
.puppy-heading .life-panel-heading{padding-bottom:0;border-bottom:0}
