:root{
  --blog-ink:#3f2b34;
  --blog-muted:#806b74;
  --blog-pink:#e96f9f;
  --blog-soft:#fff4f8;
  --blog-line:#eddde4;
}
.blog-home-section{padding-top:88px;padding-bottom:88px}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.blog-card{overflow:hidden;border:1px solid var(--blog-line);border-radius:25px;background:#fff;box-shadow:0 15px 42px rgba(84,52,66,.08);transition:transform .22s ease,box-shadow .22s ease}
.blog-card:hover{transform:translateY(-5px);box-shadow:0 22px 52px rgba(84,52,66,.13)}
.blog-card>a{display:block;height:100%;color:inherit;text-decoration:none}
.blog-card-art{min-height:190px;padding:28px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:linear-gradient(145deg,#ffe7f0,#fff8fb);position:relative;overflow:hidden}
.blog-card-art:before,.blog-card-art:after{content:"♡";position:absolute;color:rgba(211,91,139,.23);font-size:42px}
.blog-card-art:before{top:18px;left:23px;transform:rotate(-15deg)}
.blog-card-art:after{right:22px;bottom:16px;transform:rotate(13deg)}
.blog-card-art span{font-family:"Noto Sans KR",sans-serif;font-size:43px;font-weight:800;color:#a8446d;line-height:1}
.blog-card-art small{font-size:10px;font-weight:900;letter-spacing:.19em;color:#9b687d}
.tone-cream .blog-card-art{background:linear-gradient(145deg,#fff2e4,#fffaf4)}
.tone-lilac .blog-card-art{background:linear-gradient(145deg,#f3ebff,#fff7fb)}
.tone-blue .blog-card-art{background:linear-gradient(145deg,#eaf6ff,#fff8fb)}
.tone-mint .blog-card-art{background:linear-gradient(145deg,#e8f7f0,#fffafc)}
.blog-card-copy{padding:24px}
.blog-category{margin:0 0 10px!important;color:#d45b8b!important;font-size:10px!important;font-weight:900!important;letter-spacing:.14em!important}
.blog-card h2,.blog-card h3{margin:0 0 10px;font-family:"Playfair Display",serif;font-size:25px;line-height:1.2;color:var(--blog-ink)}
.blog-card-copy>p:not(.blog-category){margin:0 0 18px;color:var(--blog-muted);font-size:14px;line-height:1.65}
.blog-read{color:#c84f7f;font-size:13px;font-weight:800}
.blog-home-action{text-align:center;margin-top:32px}
.blog-page{background:linear-gradient(180deg,#fff9fb 0,#fff 420px)}
.blog-shell{width:min(1160px,calc(100% - 36px));margin:0 auto}
.blog-masthead{padding:95px 0 58px;text-align:center}
.blog-masthead .kicker{margin-bottom:15px}
.blog-masthead h1{max-width:900px;margin:0 auto 18px;font-family:"Playfair Display",serif;font-size:clamp(46px,7vw,82px);line-height:1.02;color:var(--blog-ink)}
.blog-masthead>p{max-width:700px;margin:0 auto;color:var(--blog-muted);font-size:18px;line-height:1.75}
.blog-index-grid{padding:0 0 100px}
.blog-nav-home{font-size:13px;color:#755a66;text-decoration:none;font-weight:800}
.article-page{background:#fffafc;color:var(--blog-ink)}
.article-hero{padding:84px 0 42px;text-align:center}
.article-hero-inner{width:min(850px,calc(100% - 36px));margin:0 auto}
.article-hero h1{margin:14px auto 18px;font-family:"Playfair Display",serif;font-size:clamp(42px,6.5vw,72px);line-height:1.08}
.article-deck{max-width:720px;margin:0 auto 20px;color:var(--blog-muted);font-size:19px;line-height:1.7}
.article-meta{font-size:12px;font-weight:800;letter-spacing:.08em;color:#ac6b84}
.article-ornament{width:min(850px,calc(100% - 36px));min-height:180px;margin:5px auto 48px;border-radius:30px;background:linear-gradient(135deg,#ffe3ed,#fff7fa 55%,#efe8ff);display:grid;place-items:center;box-shadow:0 18px 50px rgba(90,51,68,.09)}
.article-ornament span{font-family:"Noto Sans KR",sans-serif;font-size:clamp(44px,9vw,86px);font-weight:900;color:#b14972}
.article-body{width:min(760px,calc(100% - 38px));margin:0 auto;padding-bottom:80px}
.article-body p,.article-body li{font-size:17px;line-height:1.85;color:#59464f}
.article-body h2{margin:46px 0 14px;font-family:"Playfair Display",serif;font-size:34px;line-height:1.2;color:#3d2932}
.article-body h3{margin:30px 0 10px;font-size:20px;color:#49323c}
.article-body ul,.article-body ol{padding-left:24px}
.article-body a{color:#c44879;font-weight:800}
.article-note{margin:34px 0;padding:24px 25px;border:1px solid #edcedb;border-radius:22px;background:#fff2f7}
.article-note p{margin:0}
.article-cta{margin-top:50px;padding:30px;border-radius:26px;background:#492f3b;color:#fff;text-align:center}
.article-cta h2{margin:0 0 10px;color:#fff;font-size:31px}
.article-cta p{margin:0 0 20px;color:#f8e9ef}
.article-cta a{display:inline-flex;padding:13px 22px;border-radius:999px;background:#ed78a3;color:#fff;text-decoration:none}
.related-posts{width:min(960px,calc(100% - 36px));margin:0 auto 90px;padding-top:42px;border-top:1px solid var(--blog-line)}
.related-posts h2{text-align:center;font-family:"Playfair Display",serif;font-size:34px}
.related-links{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.related-links a{padding:18px;border:1px solid var(--blog-line);border-radius:17px;background:#fff;color:#543d48;text-decoration:none;font-weight:800;line-height:1.4}
.blog-footer{padding:34px 18px;text-align:center;background:#402b35;color:#fff}
.blog-footer a{color:#ffd5e4}
@media(max-width:820px){
  .blog-grid{grid-template-columns:1fr}
  .blog-home-section{padding-top:64px;padding-bottom:64px}
  .blog-masthead{padding:68px 0 42px}
  .blog-card-art{min-height:155px}
  .article-hero{padding-top:60px}
  .article-body p,.article-body li{font-size:16px}
  .article-body h2{font-size:29px}
  .related-links{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.blog-card{transition:none}.blog-card:hover{transform:none}}
