/* Warm gray + sage. Public site, retaining the magazine content structure. */
:root{--bg:#e8e5df;--panel:#fff;--line:#c9c6bc;--muted:#5e6258;--text:#292f29;--lime:#475342;--sage:#a5a58d;--sage-dark:#475342;--charcoal:#30362f}
body{font-family:'IBM Plex Sans KR','Apple SD Gothic Neo','Malgun Gothic',sans-serif;background:var(--bg);color:var(--text);font-weight:400}
button,input,select,textarea{font-family:inherit}
h1,h2,h3,h4,strong,b{font-weight:700}
.brand{letter-spacing:-.045em;font-weight:700}
.button,.chip.active,.page-numbers.current{background:var(--sage-dark);border-color:var(--sage-dark);color:#fff;font-weight:700}
.button:hover,.chip:hover{background:#35402f;border-color:#35402f;color:#fff}
.button.outline{background:transparent;color:var(--sage-dark);border-color:var(--sage-dark)}
.button.outline:hover{background:var(--sage-dark);color:#fff}
.site-header,.site-header.over-hero{--text:#fff;--lime:#e0e3d5;position:relative;inset:auto;background:var(--charcoal);border-bottom:1px solid #626859;color:#fff;height:88px}
.admin-bar .site-header.over-hero{top:0}
.site-header .brand,.site-header nav>a{color:#fff}
.site-header nav>a:hover{color:#e0e3d5}
.site-header nav .button{background:#526047;border-color:#c0c5b1;color:#fff}
.site-header nav .button:hover{background:#657255}
.hero{height:440px}
.hero-content{padding-top:64px}
.hero h1{color:#fff;font-size:clamp(42px,4.6vw,70px);line-height:1.18;font-weight:700;letter-spacing:-.045em}
.hero .eyebrow{color:#fff}
.hours-pill{background:#d9ddc4;color:#293226;font-size:20px;font-weight:700}
.hero-actions{margin-top:25px}
.hero-actions .button{background:#526047;border-color:#c0c5b1;color:#fff}
.hero-actions .button:hover{background:#657255}
.hero-actions .text-link{color:#fff;border-color:#d3d8ca}
.services{background:#f1efeb;border-color:var(--line)}
.service-number{color:#817c6f;font-weight:700}
.service-grid h2{color:var(--text)}
.journal-section{padding-top:36px;padding-bottom:44px}
.section-heading .text-link{color:#414b3b;border-color:#968f83}
.category{display:inline-block;color:#44513d;font-weight:700;background:#ecefe5;padding:2px 7px;border-radius:3px;line-height:1.6}
.magazine-grid{min-height:0;gap:16px;grid-template-rows:1fr 1fr}
.story{background:#fff;border:1px solid #d6d2c8;border-radius:5px;overflow:hidden}
.story-featured{display:flex;flex-direction:column;min-height:0}
.story-featured .story-photo{position:relative;inset:auto;display:block;min-height:180px;flex:1}
.story-featured img{height:100%;min-height:180px;max-height:260px;object-fit:cover}
.story-featured:after{display:none}
.story-featured .story-content{position:static;inset:auto;padding:14px 18px 18px}
.story h3{color:var(--text);font-size:25px}
.story-row{grid-template-columns:40% minmax(0,1fr);gap:16px;padding:9px;min-height:130px}
.story-row .story-content{border:0;padding:7px 8px 7px 0;align-self:center}
.story-row .story-photo{min-height:110px;height:100%}
.story-row img{height:100%;max-height:none;object-fit:cover}
.story-row h3{font-size:22px;line-height:1.5}
.consult-strip{background:#deded2;border-color:#c1c4b4}
.consult-inner .eyebrow{color:#475342}
.site-footer{--text:#fff;--muted:#e0e2d9;--lime:#e0e3d5;background:var(--charcoal);color:#e0e2d9}
.site-footer .brand,.footer-grid strong{color:#fff}
.footer-bottom{border-color:#686d60;color:#e0e2d9}
.site-footer a:hover{color:#fff;text-decoration:underline}
.page-heading .eyebrow,.article-heading .eyebrow{color:#475342}
.journal-tools{background:#fff;border:1px solid #d2cfc5;border-radius:4px;padding:15px 18px;flex-wrap:wrap;gap:14px}
.chip{background:#fff;color:#414b3b;border-color:#b3b5a7;font-size:15px}
.chip:hover,.chip.active{color:#fff}
.search-form{border-color:#a5a58d}
.search-form input{color:var(--text)}
.search-form input::placeholder{color:#65695f}
.search-form button{color:#475342}
.article-grid{gap:22px}
.article-card{background:#fff;border:1px solid #d6d2c8;border-radius:4px;overflow:hidden;padding:9px 9px 18px;min-width:0}
.article-card>div{padding:0 9px}
.card-photo{margin-bottom:13px}
.article-card h2{font-size:23px;line-height:1.5}
.article-card p{font-size:17px;color:#53594f}
.post-meta,.footer-bottom,.wp-caption-text{color:#62675b}
.site-footer .footer-bottom{color:#e0e2d9}
.page-numbers{background:#fff;border-color:#b3b5a7;color:#414b3b}
.prose{color:#30362f}
.prose a:not(.button){color:#405437}
.prose table{background:#fff}
.prose :is(th,td){border-color:#cdcfc2}
.prose th{background:#eeeee6}
.sample-notice{background:#f6f6ee;border:1px solid #cfcebf;border-left:4px solid #8a9475;color:#454d3d}
.info-box,.article-cta{background:#fff;border-color:#cfcec2}
.info-box p{color:#4c5448}
.quote-card{background:#fff;border-color:#c9ccbd;border-radius:5px}
.quote-card p{color:#50584b}
.quote-card ul{color:#30362f}
.quote-card .post-meta{color:#5e6557}
.quote-card .price{color:#35432e;font-weight:700}
.estimate-empty{padding:24px;background:#fff;border:1px solid #c9ccbd;border-radius:5px;color:#475342}
.menu-toggle{background:#526047;color:#fff;border-color:#c0c5b1}
.hero :is(a,button):focus-visible,.site-header :is(a,button):focus-visible{outline-color:#e0e3d5}
@media(max-width:760px){
  .site-header,.site-header.over-hero{height:78px}
  .brand{font-size:27px}
  .header-inner nav{background:#30362f;border-color:#8e9782}
  .header-inner nav>a{color:#fff}
  .hero{height:500px}
  .hero-content{padding-top:65px}
  .hero h1{font-size:clamp(36px,8.7vw,58px);line-height:1.2}
  .hero .eyebrow{font-size:13px;letter-spacing:0}
  .hours-pill{font-size:16px;padding:5px 13px}
  .hero-actions{gap:22px;margin-top:26px}
  .hero-actions .button{min-width:150px}
  .service-grid>a{border-color:#c9c6bc}
  .service-grid h2{font-size:22px}
  .magazine-grid{grid-template-rows:auto}
  .story-featured .story-photo{min-height:190px;flex:auto;aspect-ratio:1.8}
  .story-featured img{height:100%;min-height:0;max-height:none}
  .story-featured h3{font-size:23px}
  .story-row{grid-template-columns:35% minmax(0,1fr);gap:12px;min-height:115px}
  .story-row .story-photo{min-height:95px}
  .story-row h3{font-size:19px}
  .story-row .category{font-size:12px}
  .journal-tools{padding:13px;gap:16px}
  .journal-tools nav{gap:7px}
  .chip{font-size:13px;padding:9px 11px}
  .search-form input{width:100%;min-width:0}
  .article-grid{gap:20px}
  .article-card h2{font-size:23px}
  .section-heading h2{font-size:24px}
}
