:root{--bg:#F8F4EE;--bg2:#EFE9E0;--ink:#1A1614;--ink2:#6B625A;--ink3:#A09588;--gold:#9A7347;--gold-lt:#C9A97A;--crit:#BF2B2B;--slate:#4E6F87;--slate-lt:#8AAFC8;--line:#DDD5C8;--white:#FFFFFF;}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-weight:300;line-height:1.65;overflow-x:hidden;}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:20px 64px;display:flex;align-items:center;justify-content:space-between;background:rgba(248,244,238,0.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);}
.n-logo{display:flex;align-items:center;gap:10px;text-decoration:none;}
.n-mark{width:30px;height:22px;}
.n-name{display:flex;flex-direction:column;font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:500;letter-spacing:.06em;color:var(--ink);}
.n-tag{display:block;font-family:'DM Sans',sans-serif;font-size:8.5px;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:#8B5A3C;line-height:1;margin-top:3px;}
.n-links{display:flex;gap:36px;list-style:none;align-items:center;}
.n-links a{text-decoration:none;color:var(--ink2);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:400;transition:color .2s;}
.n-links a:hover,.n-links a.active{color:var(--ink);}
.n-cta{background:var(--ink)!important;color:var(--bg)!important;padding:9px 22px!important;letter-spacing:.14em!important;transition:background .25s!important;}
.n-cta:hover{background:var(--slate)!important;}

/* BREADCRUMB */
.breadcrumb{padding:100px 64px 0;display:flex;gap:10px;align-items:center;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);}
.breadcrumb a{text-decoration:none;color:var(--ink3);transition:color .2s;}
.breadcrumb a:hover{color:var(--ink);}
.breadcrumb span{color:var(--ink);}
.breadcrumb::before{content:'';display:none;}
.bc-sep{color:var(--line);}

/* PAGE HERO */
.page-hero{padding:36px 64px 88px;border-bottom:1px solid var(--line);}
.page-hero .eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--slate);font-weight:400;margin-bottom:22px;display:block;}
.page-hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(44px,4.5vw,72px);font-weight:300;line-height:1.06;letter-spacing:-.025em;margin-bottom:22px;}
.page-hero h1 em{font-style:italic;color:var(--gold);}
.page-hero .hero-sub{font-size:15px;color:var(--ink2);max-width:560px;line-height:1.8;margin-bottom:40px;}
.hero-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;}
.btn{display:inline-block;background:var(--ink);color:var(--bg);padding:13px 30px;font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:.15em;text-transform:uppercase;font-weight:400;text-decoration:none;transition:background .25s;border:none;cursor:pointer;}
.btn:hover{background:var(--slate);}
.btn-ghost{color:var(--ink2);font-size:13px;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:3px;transition:color .2s,border-color .2s;letter-spacing:.02em;}
.btn-ghost:hover{color:var(--slate);border-color:var(--slate);}

/* STAT STRIP */
.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:0 64px;}
.stat-cell{background:var(--bg2);padding:28px 30px;}
.stat-n{font-family:'Cormorant Garamond',serif;font-size:40px;font-weight:300;line-height:1;color:var(--ink);}
.stat-l{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink2);margin-top:7px;line-height:1.5;}

/* SECTION SHARED */
.section{padding:88px 64px;}
.section.bg2{background:var(--bg2);}
.section.dark{background:#2A1A0E;color:var(--bg);}
.sec-label{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:16px;}
.rule{width:36px;height:2px;background:linear-gradient(90deg,var(--slate),var(--gold));margin:20px 0 28px;}
.sec-title{font-family:'Cormorant Garamond',serif;font-size:clamp(36px,3vw,52px);font-weight:300;line-height:1.12;letter-spacing:-.015em;margin-bottom:48px;}
.sec-title em{font-style:italic;color:var(--gold);}
.sec-desc{font-size:15px;color:var(--ink2);line-height:1.85;max-width:600px;}
.sec-hdr{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-bottom:64px;align-items:end;}

/* WHY GRID */
.why-grid{display:flex;flex-direction:column;gap:1px;background:var(--line);border:1px solid var(--line);}
.why-item{background:var(--bg);padding:28px 32px;}
.section.bg2 .why-item{background:var(--bg2);}
.why-title{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:500;color:var(--ink);margin-bottom:8px;}
.why-desc{font-size:13px;color:var(--ink2);line-height:1.78;}

/* SERVICES LIST */
.svcs-two{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);}
.svc-li{background:var(--bg2);padding:18px 22px;font-size:13px;color:var(--ink2);display:flex;gap:10px;align-items:flex-start;line-height:1.5;}
.svc-li::before{content:'—';color:var(--gold);flex-shrink:0;}
.section.bg2 .svc-li{background:var(--bg);}

/* SECTOR TAGS */
.tag-cloud{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px;}
.tag{font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:7px 14px;border:1px solid var(--line);color:var(--ink2);background:var(--bg2);}
.section.bg2 .tag{background:var(--bg);}

/* RELATED LINKS */
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:16px;}
.related-card{background:var(--bg);padding:28px 28px;text-decoration:none;display:block;transition:background .2s;}
.related-card:hover{background:var(--bg2);}
.related-lbl{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:10px;}
.related-card h4{font-family:'Cormorant Garamond',serif;font-size:17px;font-weight:500;color:var(--ink);line-height:1.25;margin-bottom:8px;}
.related-card p{font-size:12px;color:var(--ink3);line-height:1.6;}
.related-arrow{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);display:block;margin-top:14px;}

/* CTA BAND */
.cta-band{padding:88px 64px;background:#2A1A0E;text-align:center;}
.cta-h{font-family:'Cormorant Garamond',serif;font-size:clamp(36px,3.8vw,56px);font-weight:300;line-height:1.14;letter-spacing:-.015em;color:var(--bg);margin-bottom:18px;}
.cta-h em{font-style:italic;color:var(--slate-lt);}
.cta-p{font-size:15px;color:rgba(248,244,238,.5);max-width:520px;margin:0 auto 36px;line-height:1.8;}
.cta-actions{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;}
.btn-light{display:inline-block;background:transparent;color:rgba(248,244,238,.7);padding:13px 30px;font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:.15em;text-transform:uppercase;font-weight:400;text-decoration:none;border:1px solid rgba(248,244,238,.25);transition:border-color .25s,color .25s;}
.btn-light:hover{border-color:rgba(248,244,238,.6);color:var(--bg);}

/* PROSE (blog articles) */
.prose-wrap{display:grid;grid-template-columns:1fr 320px;gap:64px;padding:64px 64px 88px;}
.prose h2{font-family:'Cormorant Garamond',serif;font-size:clamp(26px,2.5vw,36px);font-weight:400;line-height:1.2;letter-spacing:-.01em;color:var(--ink);margin:48px 0 18px;}
.prose h2:first-child{margin-top:0;}
.prose h3{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:500;color:var(--ink);margin:32px 0 12px;line-height:1.25;}
.prose p{font-size:15px;color:var(--ink2);line-height:1.85;margin-bottom:20px;}
.prose ul,.prose ol{margin:0 0 20px 20px;}
.prose li{font-size:15px;color:var(--ink2);line-height:1.78;margin-bottom:8px;}
.prose strong{color:var(--ink);font-weight:500;}
.prose blockquote{border-left:3px solid var(--gold);padding:16px 24px;margin:28px 0;background:var(--bg2);}
.prose blockquote p{color:var(--ink);font-family:'Cormorant Garamond',serif;font-size:18px;font-style:italic;margin:0;}
.prose .callout{background:var(--bg2);border:1px solid var(--line);padding:24px 28px;margin:28px 0;}
.prose .callout-title{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;}
.prose .callout p{margin:0;font-size:14px;}
.rule-prose{width:36px;height:2px;background:linear-gradient(90deg,var(--slate),var(--gold));margin:40px 0;}

/* BLOG SIDEBAR */
.blog-sidebar{padding-top:4px;}
.sidebar-card{border:1px solid var(--line);padding:24px;margin-bottom:20px;}
.sidebar-card h4{font-family:'Cormorant Garamond',serif;font-size:17px;font-weight:500;color:var(--ink);margin-bottom:14px;}
.sidebar-link{display:flex;gap:8px;font-size:13px;color:var(--ink2);text-decoration:none;margin-bottom:10px;line-height:1.4;transition:color .2s;}
.sidebar-link::before{content:'—';color:var(--gold);flex-shrink:0;}
.sidebar-link:hover{color:var(--ink);}
.sidebar-meta{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);padding:10px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;}
.sidebar-meta:last-child{border-bottom:none;}

/* BLOG LISTING */
.blog-listing{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:56px;}
.blog-card{background:var(--bg);display:flex;flex-direction:column;border-top:3px solid var(--line);transition:background .2s;text-decoration:none;}
.blog-card:hover{background:var(--bg2);}
.blog-card.t-ink{border-top-color:var(--ink);}
.blog-card.t-gold{border-top-color:var(--gold);}
.blog-card.t-slate{border-top-color:var(--slate);}
.blog-card-inner{padding:32px 28px;flex:1;display:flex;flex-direction:column;}
.blog-cat{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink3);margin-bottom:12px;display:block;}
.blog-card h3{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:500;line-height:1.3;color:var(--ink);margin-bottom:12px;}
.blog-card p{font-size:13px;color:var(--ink2);line-height:1.72;flex:1;}
.blog-foot{display:flex;justify-content:space-between;align-items:center;padding:16px 28px;border-top:1px solid var(--line);}
.read-link{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--slate);}
.read-time{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);}

/* PRICING TABLE (homepage reuse) */
.pricing-grid{border:1px solid var(--line);}
.prow{display:grid;grid-template-columns:48px 1fr 2.2fr 160px;border-bottom:1px solid var(--line);transition:background .2s;}
.prow:last-child{border-bottom:none;}
.prow:hover{background:var(--bg);}
.prow-num{font-size:10px;letter-spacing:.14em;color:var(--gold);padding:38px 0 36px 28px;align-self:start;}
.prow-head{padding:36px 24px 36px 0;border-right:1px solid var(--line);align-self:start;}
.prow-lbl{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:8px;}
.prow-head h3{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:500;color:var(--ink);margin-bottom:8px;line-height:1.25;}
.prow-turn{font-size:11px;color:var(--ink3);letter-spacing:.04em;}
.prow-body{padding:36px 32px;font-size:13px;color:var(--ink2);line-height:1.78;align-self:start;}
.prow-body p{margin-bottom:12px;}
.prow-body p:last-child{margin-bottom:0;}
.prow-who{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px;}
.who-chip{font-size:9px;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border:1px solid var(--line);color:var(--ink2);background:var(--bg);}
.prow-price{padding:36px 28px 36px 0;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;gap:6px;align-self:start;}
.price-fig{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:300;color:var(--ink);line-height:1;}
.price-unit{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);text-align:right;line-height:1.5;}
.price-badge{font-size:9px;letter-spacing:.1em;text-transform:uppercase;padding:4px 9px;margin-top:4px;}
.pbadge-rec{background:rgba(78,111,135,.1);color:var(--slate);border:1px solid rgba(78,111,135,.3);}
.pbadge-prem{background:rgba(154,115,71,.1);color:var(--gold);border:1px solid rgba(154,115,71,.3);}
.pbadge-exp{background:rgba(26,22,20,.06);color:var(--ink);border:1px solid var(--line);}

/* CONTACT FORM */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;}
.fg{margin-bottom:28px;}
.flbl{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink2);margin-bottom:9px;}
.finput,.ftxt,.fsel{width:100%;background:transparent;border:none;border-bottom:1px solid var(--line);padding:11px 0;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--ink);font-weight:300;outline:none;transition:border-color .2s;}
.finput:focus,.ftxt:focus,.fsel:focus{border-bottom-color:var(--slate);}
.ftxt{resize:none;height:90px;}
.fsel{cursor:pointer;}
.fsub{width:100%;background:var(--ink);color:var(--bg);padding:14px;font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:.15em;text-transform:uppercase;font-weight:400;border:none;cursor:pointer;transition:background .25s;margin-top:4px;}
.fsub:hover{background:var(--slate);}
.ci-row{display:flex;gap:14px;margin-bottom:20px;}
.ci-lbl{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);width:72px;flex-shrink:0;padding-top:3px;}
.ci-val{font-size:14px;color:var(--ink2);line-height:1.6;}
.ci-val a{color:var(--ink2);text-decoration:none;border-bottom:1px solid var(--line);}
.ci-val a:hover{color:var(--ink);}

/* FOOTER */
footer{padding:36px 64px;background:var(--bg2);border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;}
.f-copy{font-size:12px;color:var(--ink3);letter-spacing:.04em;}
.f-tag{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:14px;color:var(--ink2);}
.f-logo{display:flex;align-items:center;gap:9px;}
.f-name{display:flex;flex-direction:column;font-family:'Cormorant Garamond',serif;font-size:16px;font-weight:500;letter-spacing:.05em;color:var(--ink);}
.f-logo-tag{display:block;font-family:'DM Sans',sans-serif;font-size:8.5px;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:#8B5A3C;line-height:1;margin-top:3px;}

/* SERVICE DETAIL LAYOUT */
.service-grid{display:grid;grid-template-columns:1fr 340px;gap:64px;align-items:start;}
.process-steps{display:flex;flex-direction:column;}
.pstep{display:flex;gap:22px;align-items:flex-start;padding:24px 0;border-bottom:1px solid var(--line);}
.pstep:last-child{border-bottom:none;}
.pstep-num{font-size:10px;letter-spacing:.14em;color:var(--gold);min-width:24px;flex-shrink:0;padding-top:2px;}
.pstep-title{font-family:'Cormorant Garamond',serif;font-size:16px;font-weight:500;color:var(--ink);margin-bottom:5px;}
.pstep-desc{font-size:13px;color:var(--ink2);line-height:1.7;}
.meta-box{background:var(--bg2);border:1px solid var(--line);padding:32px;}
.meta-box h4{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:500;color:var(--ink);margin-bottom:20px;}
.meta-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);}
.meta-row:last-child{border-bottom:none;}
.meta-lbl{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);}
.meta-val{font-size:13px;color:var(--ink);}
.price-hero{background:var(--ink);padding:20px 24px;margin-bottom:1px;}
.price-hero-fig{font-family:'Cormorant Garamond',serif;font-size:36px;font-weight:300;color:var(--gold-lt);line-height:1;}
.price-hero-unit{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgba(248,244,238,.4);margin-top:5px;}

/* CLIENT CHIPS */
.client-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.client-chip{font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;border:1px solid var(--line);color:var(--ink2);}

/* RESPONSIVE */
@media(max-width:1000px){
  nav{padding:18px 28px;}
  .n-links{display:none;}
  .breadcrumb,.page-hero,.stat-strip,.section,.cta-band,.prose-wrap{padding-left:28px;padding-right:28px;}
  .stat-strip{margin:0 28px;}
  .stat-strip{grid-template-columns:repeat(2,1fr);}
  .sec-hdr,.contact-grid,.service-grid{grid-template-columns:1fr;gap:40px;}
  .prose-wrap{grid-template-columns:1fr;}
  .blog-listing,.related-grid{grid-template-columns:repeat(2,1fr);}
  .svcs-two,.prow{grid-template-columns:1fr;}
  .prow-head,.prow-price{display:none;}
}
@media(max-width:640px){
  .blog-listing,.related-grid,.stat-strip{grid-template-columns:1fr;}
  footer{flex-direction:column;gap:14px;text-align:center;}
}

/* ARTICLE DOWNLOAD BUTTON (print-to-PDF) */
.article-download{margin:0 0 32px 0;padding:0 0 20px 0;border-bottom:1px solid var(--line);}
.btn-download{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--ink2);padding:10px 18px;font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border:1px solid var(--line);cursor:pointer;transition:border-color .2s,color .2s;}
.btn-download:hover{border-color:var(--ink);color:var(--ink);}

/* PRINT STYLES — strip nav/sidebar/footer for clean PDF output */
@media print{
  nav,.breadcrumb,.blog-sidebar,.section.bg2,footer,.article-download{display:none !important;}
  body{background:#fff;}
  .prose-wrap{display:block !important;padding:0 !important;}
  .prose{max-width:100% !important;}
  .page-hero{padding:0 0 16px 0 !important;}
  a{color:#000;}
}
