
:root{
  --espresso:#2b1d10;--coffee:#4a3525;
  --cognac:#a87242;--cognac-dark:#8a5a32;--caramel:#c89870;
  --sand:#e8d9c3;--linen:#f2e7d5;--cream:#faf5ec;--paper:#fcfaf6;
  --warm-700:#5a4d40;--warm-500:#8a7864;--warm-300:#c7b9a4;
  --border:#e0d2bb;--border-light:#ede0c9;
  --shadow-sm:0 2px 12px rgba(43,29,16,.04);
  --shadow:0 8px 28px rgba(43,29,16,.07);
  --shadow-lg:0 24px 60px rgba(43,29,16,.10);
  --serif:'Cormorant Garamond','Hoefler Text',Georgia,'Times New Roman',serif;
  --sans:'Inter','Segoe UI',system-ui,-apple-system,Arial,sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box;margin:0;padding:0}
*:focus-visible{outline:2px solid var(--cognac);outline-offset:2px;border-radius:2px}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--warm-700);background:var(--paper);line-height:1.65;-webkit-font-smoothing:antialiased;font-weight:400;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
.container{max-width:1240px;margin:0 auto;padding:0 32px}
.container-narrow{max-width:880px;margin:0 auto;padding:0 32px}
h1,h2,h3,h4,h5{font-family:var(--serif);color:var(--espresso);font-weight:500;letter-spacing:-.5px;line-height:1.15}
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{position:fixed;top:8px;left:8px;width:auto;height:auto;background:var(--espresso);color:var(--cream);padding:10px 16px;z-index:1000}

.logo-wordmark{display:inline-flex;align-items:baseline;line-height:1}
.logo-wordmark .bm{font-family:var(--serif);font-size:30px;color:var(--espresso);font-weight:500;letter-spacing:-.5px}
.logo-wordmark .liv{font-family:var(--serif);font-size:30px;color:var(--cognac);font-style:italic;font-weight:500;margin-left:8px;letter-spacing:-.5px}
.logo-sub{font-size:9px;color:var(--warm-500);letter-spacing:3px;text-transform:uppercase;margin-top:6px;font-family:var(--sans);font-weight:500}

nav.site-nav{position:sticky;top:0;background:rgba(252,250,246,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-light);z-index:100}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:20px 0;gap:24px}
.logo{display:flex;flex-direction:column}
.nav-links{display:flex;gap:30px;font-size:14px;font-weight:500;color:var(--coffee)}
.nav-links a{padding:6px 0;transition:color .2s}
.nav-links a:hover,.nav-links a.active{color:var(--cognac)}
.nav-cta{background:var(--espresso);color:var(--cream);padding:12px 22px;border-radius:2px;font-weight:500;font-size:13px;letter-spacing:1px;text-transform:uppercase;transition:all .3s;border:1px solid var(--espresso);white-space:nowrap}
.nav-cta:hover{background:var(--cognac);border-color:var(--cognac)}

.breadcrumbs{padding:24px 0;background:var(--cream);border-bottom:1px solid var(--border-light);font-size:13px;color:var(--warm-500);letter-spacing:.3px}
.breadcrumbs a{color:var(--warm-500);transition:color .2s}
.breadcrumbs a:hover{color:var(--cognac)}
.breadcrumbs .sep{margin:0 10px;color:var(--warm-300)}
.breadcrumbs .current{color:var(--espresso);font-weight:500}

.page-hero{padding:88px 0 64px;background:radial-gradient(ellipse 90% 70% at 80% 30%,rgba(168,114,66,.10),transparent 65%),linear-gradient(180deg,var(--cream) 0%,var(--paper) 100%)}
.page-hero .eyebrow{color:var(--cognac);font-size:12px;font-weight:600;letter-spacing:3px;text-transform:uppercase;margin-bottom:20px;display:inline-flex;align-items:center;gap:12px}
.page-hero .eyebrow::before{content:"";width:36px;height:1px;background:var(--cognac)}
.page-hero h1{font-size:54px;line-height:1.08;color:var(--espresso);font-weight:500;margin-bottom:24px;letter-spacing:-1.2px}
.page-hero h1 em{color:var(--cognac);font-style:italic}
.page-hero .lede{font-size:19px;color:var(--warm-700);max-width:680px;line-height:1.7}
.page-hero-meta{display:flex;gap:24px;flex-wrap:wrap;margin-top:32px;padding-top:24px;border-top:1px solid var(--border-light);font-size:13px;color:var(--warm-500);letter-spacing:.3px}
.page-hero-meta span strong{color:var(--espresso);font-weight:500}

section.content-section{padding:80px 0}
.section-eyebrow{color:var(--cognac);font-size:12px;font-weight:600;letter-spacing:3px;text-transform:uppercase;margin-bottom:18px;display:inline-flex;align-items:center;gap:12px}
.section-eyebrow::before{content:"";width:28px;height:1px;background:var(--cognac)}
section h2{font-size:36px;color:var(--espresso);font-weight:500;line-height:1.15;margin-bottom:20px;letter-spacing:-.7px}
section h2 em{color:var(--cognac);font-style:italic}
section h3{font-size:24px;color:var(--espresso);font-weight:500;line-height:1.2;margin-top:36px;margin-bottom:14px;letter-spacing:-.3px}
section p{font-size:17px;color:var(--warm-700);line-height:1.8;margin-bottom:18px}
section p strong{color:var(--espresso);font-weight:600}
section ul,section ol{margin:18px 0;padding-left:24px}
section li{font-size:17px;color:var(--warm-700);line-height:1.75;margin-bottom:10px}
section blockquote{font-family:var(--serif);font-size:24px;color:var(--espresso);font-style:italic;font-weight:500;border-left:3px solid var(--cognac);padding:6px 0 6px 28px;margin:36px 0;line-height:1.45}

.cta-band{background:var(--espresso);color:var(--cream);padding:64px 0;text-align:center;margin-top:64px}
.cta-band h3{font-family:var(--serif);color:var(--cream);font-size:32px;font-weight:500;margin-bottom:16px;line-height:1.3}
.cta-band h3 em{color:var(--caramel);font-style:italic}
.cta-band p{color:rgba(250,245,236,.78);font-size:16px;max-width:520px;margin:0 auto 28px;line-height:1.7}
.cta-band a.btn{background:var(--caramel);color:var(--espresso);padding:16px 28px;border-radius:2px;font-weight:500;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;display:inline-flex;align-items:center;gap:10px;transition:all .3s}
.cta-band a.btn:hover{background:var(--cream)}

.image-placeholder{aspect-ratio:16/9;border-radius:4px;background:linear-gradient(135deg,#b89674,#6d553a);position:relative;overflow:hidden;margin:32px 0;display:flex;align-items:center;justify-content:center;color:var(--cream);font-family:var(--serif);font-size:18px;font-style:italic;letter-spacing:.5px;box-shadow:var(--shadow)}
.image-placeholder::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(43,29,16,.3) 100%)}
.image-placeholder span{position:relative;z-index:1;background:rgba(43,29,16,.4);padding:8px 18px;border-radius:2px;font-size:13px;letter-spacing:1px;text-transform:uppercase;font-style:normal;font-family:var(--sans);font-weight:500}

.author-card{background:var(--cream);border:1px solid var(--border-light);border-radius:4px;padding:32px;display:flex;align-items:center;gap:24px;margin:48px 0}
.author-avatar{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#a8825c 0%,#3a2817 100%);display:flex;align-items:center;justify-content:center;font-family:var(--serif);color:rgba(250,245,236,.7);font-size:22px;font-weight:500;letter-spacing:2px;flex-shrink:0}
.author-card .name{font-family:var(--serif);font-size:20px;color:var(--espresso);font-weight:500;margin-bottom:4px}
.author-card .role{font-size:13px;color:var(--cognac);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:8px}
.author-card .bio-text{font-size:14px;color:var(--warm-700);line-height:1.6}

.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.tag-row .tag{background:var(--cream);border:1px solid var(--border-light);padding:6px 14px;border-radius:999px;font-size:12px;color:var(--coffee);letter-spacing:.5px}

details.faq-item{background:var(--paper);border:1px solid var(--border-light);border-radius:4px;margin-bottom:12px;overflow:hidden;transition:all .25s}
details.faq-item[open]{border-color:var(--cognac);box-shadow:var(--shadow-sm)}
details.faq-item summary{padding:20px 24px;font-family:var(--serif);font-size:19px;color:var(--espresso);font-weight:500;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:18px;line-height:1.3}
details.faq-item summary::-webkit-details-marker{display:none}
details.faq-item summary::after{content:"+";font-size:26px;color:var(--cognac);font-weight:400;flex-shrink:0;line-height:1}
details.faq-item[open] summary::after{content:"−"}
details.faq-item .faq-answer{padding:0 24px 22px;font-size:15px;color:var(--warm-700);line-height:1.75}

.related-posts{background:var(--cream);padding:80px 0;border-top:1px solid var(--border-light)}
.related-posts h2{text-align:center;margin-bottom:48px}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.related-card{background:var(--paper);border:1px solid var(--border-light);border-radius:4px;overflow:hidden;transition:all .25s}
.related-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.related-card a{display:block;height:100%}
.related-img{aspect-ratio:5/3;background:linear-gradient(135deg,#b89674,#6d553a);position:relative}
.related-img.alt2{background:linear-gradient(135deg,#a89074,#5a4530)}
.related-img.alt3{background:linear-gradient(135deg,#c8a880,#7a5e3e)}
.related-img.alt4{background:linear-gradient(135deg,#b08260,#4a3525)}
.related-card .body{padding:24px}
.related-card .cat{font-size:11px;color:var(--cognac);letter-spacing:2px;text-transform:uppercase;font-weight:600;margin-bottom:10px}
.related-card h4{font-family:var(--serif);font-size:21px;color:var(--espresso);font-weight:500;line-height:1.25;margin-bottom:10px}
.related-card p{font-size:13.5px;color:var(--warm-700);line-height:1.6}

.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.blog-card{background:var(--paper);border:1px solid var(--border-light);border-radius:4px;overflow:hidden;transition:all .3s;cursor:pointer;display:flex;flex-direction:column}
.blog-card a{display:flex;flex-direction:column;height:100%}
.blog-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.blog-card .img{aspect-ratio:16/10;background:linear-gradient(135deg,#b89674,#6d553a);position:relative;overflow:hidden}
.blog-card .img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(43,29,16,.3) 100%)}
.blog-card .body{padding:26px;display:flex;flex-direction:column;flex:1}
.blog-card .cat{font-size:11px;color:var(--cognac);letter-spacing:2px;text-transform:uppercase;font-weight:600;margin-bottom:12px}
.blog-card h3{font-family:var(--serif);font-size:22px;color:var(--espresso);font-weight:500;line-height:1.25;margin-bottom:12px;margin-top:0}
.blog-card p{font-size:14px;color:var(--warm-700);line-height:1.65;margin-bottom:16px;flex:1}
.blog-card .meta{font-size:12px;color:var(--warm-500);letter-spacing:.3px;border-top:1px solid var(--border-light);padding-top:14px}

footer{background:var(--espresso);color:rgba(250,245,236,.7);padding:64px 0 24px;border-top:4px solid var(--cognac)}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}
.footer-logo-row{display:flex;align-items:baseline}
.footer-logo-row .bm{font-family:var(--serif);font-size:28px;color:var(--cream);font-weight:500;letter-spacing:-.5px;line-height:1}
.footer-logo-row .liv{font-family:var(--serif);font-size:28px;color:var(--caramel);font-style:italic;font-weight:500;margin-left:6px;letter-spacing:-.5px;line-height:1}
.footer-tagline{color:var(--caramel);font-size:11px;margin-top:12px;margin-bottom:20px;letter-spacing:3px;text-transform:uppercase}
.footer-text{font-size:13px;line-height:1.7;color:rgba(250,245,236,.55)}
footer h5{color:var(--cream);font-size:12px;font-weight:600;margin-bottom:18px;text-transform:uppercase;letter-spacing:2px;font-family:var(--sans)}
footer ul{list-style:none;display:flex;flex-direction:column;gap:10px;padding:0;margin:0}
footer li{font-size:13px;color:rgba(250,245,236,.65);transition:color .15s}
footer li:hover{color:var(--caramel)}
footer a{color:inherit}
.footer-bottom{border-top:1px solid rgba(250,245,236,.12);padding-top:24px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:rgba(250,245,236,.45);flex-wrap:wrap;gap:14px}

.mobile-sticky{display:none}
@media (max-width:980px){
  .mobile-sticky{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--espresso);color:var(--cream);padding:14px 20px;justify-content:space-between;align-items:center;gap:12px;z-index:99;box-shadow:0 -8px 30px rgba(43,29,16,.2)}
  .mobile-sticky .info{display:flex;flex-direction:column;font-size:11px;color:rgba(250,245,236,.6);letter-spacing:1px;text-transform:uppercase}
  .mobile-sticky .info strong{font-family:var(--serif);font-size:16px;color:var(--cream);text-transform:none;letter-spacing:-.3px;font-weight:500}
  .mobile-sticky .actions{display:flex;gap:8px}
  .mobile-sticky a{padding:12px 16px;font-size:12px;letter-spacing:1px;text-transform:uppercase;font-weight:500;background:var(--cognac);color:var(--cream);border-radius:2px}
  .mobile-sticky a.tel{background:transparent;border:1px solid rgba(250,245,236,.3);color:var(--cream)}
  body{padding-bottom:72px}
  .page-hero{padding:48px 0 40px}
  .page-hero h1{font-size:34px}
  .nav-links{display:none}
  section h2{font-size:26px}
  section h3{font-size:20px}
  section.content-section{padding:48px 0}
  .blog-grid,.related-grid{grid-template-columns:1fr;gap:20px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px}
  .author-card{flex-direction:column;text-align:center;padding:24px}
  .cta-band{padding:48px 0}
}
