:root{--ink:#414942;--line:#d2d6c9;--paper:#faf8ef;--green:#747f66}
html{scroll-behavior:smooth}body{margin:0;color:var(--ink)}
body.homepage main{display:block!important}.front{max-width:1160px;margin:0 auto;padding:70px 36px 24px}
.front-top{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px;min-height:480px}
.front-intro h1{font-size:clamp(26px,2.8vw,39px);font-weight:400;line-height:1.7;letter-spacing:.08em;margin:0 0 32px}
.front-intro p{font-size:17px;line-height:2.1;letter-spacing:.06em;margin:0}
.front-intro #daily-word{margin-top:38px;font-size:15px;line-height:2.2;color:#747b6a;max-width:29em}
.front-latest h2{font-size:16px;font-weight:400;letter-spacing:.15em;margin:0 0 18px}
.latest-link{display:block;text-decoration:none;border:0!important}.latest-link img{display:block;width:100%;height:auto;aspect-ratio:1280/670;object-fit:cover}
.latest-link h3{font-size:20px;line-height:1.9;font-weight:400;letter-spacing:.04em;margin:18px 0 0}
.latest-link:hover h3{text-decoration:underline;text-underline-offset:6px}
.front-nav{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin:48px 0 20px}
.front-nav a{display:flex;align-items:center;justify-content:center;min-height:72px;padding:12px 9px;border:1px solid var(--line);border-radius:5px;text-align:center;text-decoration:none;font-size:15px;letter-spacing:.03em;background:#ffffff55}
.front-nav a:hover{background:#eaf0e2}.front-nav a:focus-visible,.latest-link:focus-visible{outline:2px solid var(--green);outline-offset:5px}
.homepage footer{margin-top:30px;padding:24px;font-size:12px;letter-spacing:.08em}
body.inner-page main>section{display:block!important;padding:45px 0 70px!important;min-height:70vh}
body.inner-page .page-back{max-width:1100px;margin:0 auto 45px;padding:0 28px}
body.inner-page .section-number,body.inner-page .section-keepsake{display:none!important}
body.inner-page footer{padding:25px;text-align:center;font-size:12px}
@media(max-width:760px){.front{padding:34px 24px 10px}.front-top{grid-template-columns:1fr;gap:38px;min-height:0}.front-intro h1{font-size:26px;margin-bottom:18px}.front-intro p{font-size:15px}.front-intro #daily-word{font-size:14px;margin-top:22px}.front-latest h2{font-size:14px}.latest-link h3{font-size:18px;margin-top:12px}.front-nav{grid-template-columns:1fr 1fr;gap:12px;margin-top:34px}.front-nav a{min-height:56px;font-size:14px}.front-nav a:last-child{grid-column:1/-1}body.inner-page main>section{padding-top:24px!important}}
