/* Shared home/blog card geometry. Image proportions never change the layout. */
.content-section .journal-grid,.blog-page .journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:18px;align-items:stretch}
.content-section .journal-card,.content-section .journal-card.featured,.blog-page .journal-card{display:grid;grid-template-rows:230px 1fr;width:100%;min-width:0;min-height:455px;height:100%;overflow:hidden;border:1px solid #ebd9e2;border-radius:18px;background:#fff;transition:transform .2s ease,box-shadow .2s ease}
.content-section .journal-card:hover,.blog-page .journal-card:hover{transform:translateY(-5px);box-shadow:0 15px 28px rgba(37,37,37,.08)}
.content-section .journal-card img,.content-section .journal-card.featured img,.blog-page .journal-card img{display:block;width:100%;height:230px;min-height:230px;max-height:230px;object-fit:cover;object-position:center}
.content-section .journal-copy,.blog-page .journal-copy{min-width:0;padding:22px}
.content-section .journal-copy h3,.blog-page .journal-copy h2{overflow-wrap:anywhere}
.blog-page,.blog-page *{box-sizing:border-box}
.blog-page{margin:0;background:#fffdfd;color:#252525;font-family:"DM Sans",sans-serif}
.blog-page a{color:inherit;text-decoration:none}
.blog-page .nav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 6%;border-bottom:4px solid #d7669c;background:rgba(255,253,253,.94);position:sticky;top:0;z-index:10}
.blog-page .brand{flex-shrink:0;font:600 21px/1 "Playfair Display",serif}
.blog-page .brand small{display:block;margin-top:6px;color:#b54176;font:700 9px/1.2 "DM Sans",sans-serif;letter-spacing:1.5px;text-transform:uppercase}
.blog-page .nav .appointment-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;height:44px;padding:0 20px;white-space:nowrap}
.blog-hero{padding:76px 7% 52px;background:#f8edf3;text-align:center}
.blog-hero .eyebrow{display:flex;align-items:center;justify-content:center;gap:10px;color:#d7669c;font-size:11px;font-weight:700;letter-spacing:1.7px}
.blog-hero .eyebrow:before,.blog-hero .eyebrow:after{content:"";width:30px;height:1px;background:currentColor}
.blog-hero h1{margin:16px 0 10px;font:600 clamp(43px,5vw,64px)/1.08 "Playfair Display",serif;letter-spacing:-2px}
.blog-hero p{max-width:650px;margin:auto;color:#686368;font-size:15px;line-height:1.75}
.blog-page .blog-layout{width:min(100%,1280px);max-width:none;margin:auto;padding:62px 5% 84px}
.blog-page .journal-copy small{color:#d7669c;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase}
.blog-page .journal-copy h2{margin:10px 0;font:600 23px/1.25 "Playfair Display",serif;letter-spacing:-.3px}
.blog-page .journal-copy p{margin:12px 0 0;color:#686368;font-size:14px;line-height:1.7}
.article-wrap{width:min(100%,940px);margin:auto;padding:58px 6% 88px}
.article-back{display:inline-block;margin-bottom:28px;padding-bottom:3px;border-bottom:1px solid #252525;font-size:13px;font-weight:700}
.article-header{text-align:center}
.article-header small{color:#d7669c;font-weight:700;letter-spacing:1px;text-transform:uppercase}
.article-header h1{margin:14px auto 18px;font:600 clamp(39px,5vw,62px)/1.1 "Playfair Display",serif;letter-spacing:-1.8px}
.article-image{display:block;width:100%;aspect-ratio:16/9;height:auto;max-height:none;margin:32px 0;object-fit:cover;object-position:center;border-radius:20px}
.article-lead{color:#686368;font-size:19px;line-height:1.75}
.article-body{white-space:pre-wrap;font-size:17px;line-height:1.9}
.article-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:34px}.article-gallery figure{margin:0}.article-gallery img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px}.article-gallery figcaption{margin-top:8px;color:#686368;font-size:13px;line-height:1.5}
.blog-footer{padding:45px 7% 22px;background:#252525;color:#fff}.blog-footer-top{display:flex;align-items:center;justify-content:space-between;gap:28px}.blog-footer nav{display:flex;gap:22px;color:#f1dce6;font-size:12px}.blog-footer-bottom{margin-top:30px;padding-top:18px;border-top:1px solid rgba(255,255,255,.14);color:#d9c8d0;font-size:11px}
@media(max-width:900px){.blog-page .nav .appointment-cta{display:none}.blog-page .blog-layout{padding-left:6%;padding-right:6%}}
@media(max-width:760px){.content-section .journal-grid,.blog-page .journal-grid{grid-template-columns:1fr}.content-section .journal-card,.content-section .journal-card.featured,.blog-page .journal-card{grid-template-rows:210px auto;min-height:0}.content-section .journal-card img,.content-section .journal-card.featured img,.blog-page .journal-card img{height:210px;min-height:210px;max-height:210px}.blog-page .nav{height:72px;padding:0 5%}.blog-hero{padding:58px 7% 42px}.blog-page .blog-layout{padding-top:42px}.article-wrap{padding:42px 7% 64px}.article-gallery{grid-template-columns:1fr}.blog-footer-top{align-items:flex-start;flex-direction:column}.blog-footer nav{flex-wrap:wrap}}
