/*
Theme Name: Finlaw Rookie
Description: 사회 초년생을 위한 경제·법률 블로그. Twenty Twenty-Five 자식 테마.
Version: 1.1.0
Template: twentytwentyfive
Requires at least: 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: finlaw-rookie
*/
*, *::before, *::after { box-sizing: border-box; }
html { scroll-padding-top: 2rem; }
body { -webkit-font-smoothing: antialiased; }
a { text-underline-offset: .22em; }
a, button, input { -webkit-tap-highlight-color: transparent; }
:where(a,button,input,summary):focus-visible { outline: 3px solid #865c33; outline-offset: 5px; }
:where(h1,h2,h3,p,li,a) { overflow-wrap: anywhere; }
h1,h2,h3 { word-break: keep-all; text-wrap: balance; }
.wp-site-blocks { padding-top: 0; padding-bottom: 0; }
.fr-header { padding-block: 1.5rem; border-bottom: 1px solid #e6ded0; }
.fr-header .wp-block-site-title { font-size: 1.25rem; font-weight: 750; letter-spacing: -.04em; }
.fr-header .wp-block-navigation { font-size: .9rem; }
.fr-header-search { max-width: 30rem; margin-left: auto !important; margin-top: 1rem; font-size: .95rem; }
.fr-header-search .wp-block-search__button { flex-shrink: 0; }
.fr-hero { padding-block: clamp(3rem,7vw,6.5rem); border-bottom: 1px solid #eee8df; background: radial-gradient(ellipse at 90% 20%,#f7edda33,transparent 60%),#fdfaf3; }
.fr-hero h1 { max-width: 100%; font-size: clamp(2rem,5vw,3.8rem); line-height: 1.22; letter-spacing: -.055em; }
.fr-hero .fr-lead { max-width: 37rem; color: #655a4d; line-height: 1.9; }
.fr-eyebrow { color: #745238; font-size: .78rem; font-weight: 700; letter-spacing: .15em; }
.fr-topics { margin-top: 2rem; padding-top: 1rem; border-top: 1px solid #ded2bf; }
.fr-topics ul { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; padding: 0; list-style: none; }
.fr-topics a { color: #5f432c; font-size: .9rem; }
.fr-section { padding-block: clamp(2.5rem,5vw,4.5rem); }
.fr-section-title { font-size: 1.45rem; letter-spacing: -.04em; }
.fr-feed { list-style: none; padding: 0; }
.fr-feed > li { margin-top: 0 !important; padding-block: 2rem; border-bottom: 1px solid #e6ded0; }
.fr-feed .wp-block-post-title { font-size: clamp(1.3rem,2.5vw,1.8rem); line-height: 1.5; margin-block: .5rem; }
.fr-feed .wp-block-post-title a { text-decoration: none; }
.fr-feed .wp-block-post-title a:hover { color: #805b36; text-decoration: underline; }
.fr-feed .wp-block-post-excerpt { color: #655a4d; font-size: 1rem; line-height: 1.85; }
.fr-feed .wp-block-post-excerpt__more-link { color: #65462d; font-size: .9rem; font-weight: 650; }
.fr-meta { color: #706456; font-size: .82rem; gap: .5rem 1rem; }
.fr-meta a { color: inherit; }
.fr-post-heading { padding-block: clamp(2.5rem,6vw,5rem) 2rem; }
.fr-post-heading h1 { font-size: clamp(2rem,4vw,3.1rem); line-height: 1.35; }
.fr-content { line-height: 1.95; word-break: normal; }
.fr-content :where(h2,h3) { margin-top: 2.5em; line-height: 1.5; }
.fr-content :where(ul,ol) { padding-inline-start: 1.4em; }
.fr-content li + li { margin-top: .55em; }
.fr-content :where(img,video,iframe) { max-width: 100%; }
.fr-content img { height: auto; }
.fr-content .wp-block-table { overflow-x: auto; }
.fr-content .wp-block-table table { min-width: 28rem; }
.fr-content pre { overflow-x: auto; max-width: 100%; }
.fr-content blockquote { border-left: 3px solid #d3bea1; margin-inline: 0; padding: 1rem 1.4rem; background: #fdfaf3; }
.fr-notice { border-left: 3px solid #d3bea1; background: #fdfaf3; padding: 1.3rem 1.5rem; font-size: .875rem; color: #655a4d; }
.fr-footer { margin-top: 3rem; padding-block: 2.5rem; border-top: 1px solid #eee8df; background: #fcfaf6; }
.fr-footer .wp-block-site-title { font-size: 1.1rem; font-weight: 700; }
.fr-footer p { font-size: .85rem; color: #655a4d; }
.wp-block-search__input { min-width: 0; border: 1px solid #c8b99f; border-radius: 4px; padding: .8rem; background: #fff; color: #30291f; }
.wp-block-search__button,.wp-block-button__link { border-radius: 4px; background: #f4e9d6; color: #503b2a; padding: .8rem 1.2rem; }
.wp-block-search__button:hover,.wp-block-button__link:hover { background: #ecddc2; color: #503b2a; }
.wp-block-query-pagination { padding-top: 2rem; gap: 1rem; }
.wp-block-query-pagination-numbers { display: flex; gap: .75rem; flex-wrap: wrap; }
.fr-ad-slot { min-height: 280px; margin-block: 2rem; }
@media (max-width: 600px) {
  .fr-header { padding-block: 1rem; }
  .fr-hero h1 { font-size: clamp(1.75rem,7vw,2.4rem); }
  .fr-content { font-size: 1.0625rem; }
  .fr-meta { font-size: .78rem; }
}
@media (prefers-reduced-motion: no-preference) {
  a,button { transition: color .15s ease,background-color .15s ease; }
}
