/* Quiet, editorial presentation shared across Chengsthetics. */
:root { --bg-primary:#faf8f4; --bg-secondary:#f0ede7; --bg-card:#fffdfa; --bg-dark:#242722; --accent:#a44436; --accent-dark:#853529; --accent-glow:transparent; --text-primary:#262923; --text-secondary:#65675f; --text-light:#73766e; --border:#dedfd7; }
body { font-family:Inter,Arial,sans-serif; }
:focus-visible { outline:3px solid var(--accent); outline-offset:5px; }
.skip-link { position:fixed; top:-100px; left:20px; z-index:10001; padding:12px 20px; background:white; color:var(--text-primary); }
.skip-link:focus { top:12px; }
.animated-bg,.particles,.cursor-dot,.cursor-ring { display:none; }
body *,body *::before,body *::after { text-shadow:none!important; animation:none!important; }
.logo:hover,.nav-link:hover,.nav-link.active,.mobile-menu-btn:hover,.service-card:hover,.service-icon,.service-card:hover .service-icon,.service-card:hover .service-icon svg,.client-card:hover,.client-images img:hover,.about-images img:hover,.contact-method:hover,.contact-method:hover .contact-method-icon,.contact-form-wrapper:hover,.proof-card:hover,.proof-card:hover img,.footer-social a:hover { transform:none; }
.nav { background:rgba(250,248,244,.97); backdrop-filter:blur(12px); perspective:none; }
.nav-container { max-width:1240px; padding:23px 36px; }
.logo { font-family:Inter,Arial,sans-serif; font-size:20px; letter-spacing:-1px; font-weight:800; }
.logo .accent { color:inherit; }
.nav-links { gap:28px; }
.nav-link { font-family:inherit; font-size:13px; letter-spacing:0; text-transform:none; }
.nav-link::after { height:1px; box-shadow:none; }
.nav-cta { display:inline-block; background:var(--text-primary); color:white; font-family:inherit; font-size:13px; padding:11px 19px; letter-spacing:0; text-transform:none; border-radius:4px; box-shadow:none; }
.nav-cta:hover { background:var(--accent); transform:none; box-shadow:none; }
.btn-primary,.btn-outline,.btn-outline-red { display:inline-flex; gap:26px; align-items:center; justify-content:center; padding:15px 23px; border-radius:4px; font:500 14px/1.5 Inter,Arial,sans-serif; text-transform:none; letter-spacing:0; box-shadow:none; transform:none; transition:background .2s,color .2s; }
.btn-primary { color:white; background:var(--accent); border:1px solid var(--accent); }
.btn-primary:hover { background:var(--accent-dark); box-shadow:none; transform:none; }
.btn-primary::before,.btn-outline::before,.btn-outline-red::before,.service-card::before,.footer::before { display:none; }
.btn-outline-red { border:1px solid var(--border); color:var(--text-primary); background:transparent; }
.btn-outline-red:hover { background:var(--bg-secondary); color:var(--text-primary); transform:none; box-shadow:none; }
.btn-outline:hover { transform:none; box-shadow:none; }
h1,h2,h3,.section-title,.client-name,.about-content h3,.contact-info h3 { font-family:Inter,Arial,sans-serif; letter-spacing:-.045em; }
.section { padding:88px 32px; }
.section-title { font-size:clamp(32px,4vw,52px); line-height:1.12; font-weight:600; }
.section-tag,.case-study-eyebrow { font-family:inherit; font-size:11px; font-weight:600; letter-spacing:.16em; }
.section-subtitle { font-size:16px; line-height:1.8; }
.service-card,.contact-form-wrapper,.faq-item,.client-card,.proof-card { border:1px solid var(--border); border-radius:6px; box-shadow:none; }
.service-card:hover,.contact-form-wrapper:hover,.faq-item:hover,.client-card:hover { box-shadow:none; border-color:#bfc1b6; }
.service-card { padding:30px; }
.service-icon,.contact-method-icon { background:var(--bg-secondary); color:var(--accent); box-shadow:none; border-radius:6px; }
.service-card h3,.step-item h3 { font-family:inherit; font-size:21px; font-weight:600; }
.step-number { background:transparent; box-shadow:none; color:var(--accent); border:1px solid var(--border); }
.form-input { border-radius:4px; background:var(--bg-primary); }
.form-input:focus { box-shadow:none; }
.footer { background:var(--bg-primary); color:var(--text-primary); padding:32px; border-top:1px solid var(--border); }
.footer-inner { max-width:1168px; }
.footer-logo { font-family:inherit; font-size:17px; letter-spacing:-.05em; color:var(--text-primary); }
.footer-logo span { color:inherit; }
.footer-social a { color:var(--text-primary); background:transparent; border:1px solid var(--border); border-radius:50%; }
.footer-copyright { color:var(--text-secondary); font-size:11px; }
.layout { max-width:1240px; margin:0 auto; padding-left:36px; padding-right:36px; }
.intro { display:grid; grid-template-columns:1.15fr 1fr; gap:76px; align-items:center; padding-top:142px; padding-bottom:68px; }
.eyebrow { font-size:10px; font-weight:600; letter-spacing:.17em; text-transform:uppercase; color:var(--accent); margin-bottom:24px; }
.intro h1 { font-size:clamp(42px,5vw,68px); font-weight:500; line-height:1.08; letter-spacing:-.06em; }
.intro h1 em { font-family:Georgia,serif; color:var(--accent); font-weight:400; letter-spacing:-.055em; }
.intro-description { max-width:430px; font-size:16px; line-height:1.8; color:var(--text-secondary); margin-top:26px; }
.intro-actions { display:flex; flex-wrap:wrap; align-items:center; gap:24px; margin-top:32px; }
.text-link { display:inline-flex; gap:16px; align-items:center; font-size:13px; font-weight:500; text-decoration:none; color:var(--text-primary); padding:8px 0; border-bottom:1px solid #bfc1b6; }
.text-link:hover { color:var(--accent); border-color:var(--accent); }
.availability { font-size:11px; color:var(--text-secondary); margin-top:24px; }
.availability span { display:inline-block; width:6px; height:6px; background:#67775b; border-radius:50%; margin-right:7px; }
.intro-photo { position:relative; margin:0; }
.intro-photo img { display:block; width:100%; height:540px; object-fit:cover; object-position:center 35%; border-radius:6px; }
.intro-photo figcaption { margin-top:12px; font-size:9px; letter-spacing:.17em; color:var(--text-secondary); }
.method { padding-top:64px; padding-bottom:80px; border-top:1px solid var(--border); }
.section-intro { display:flex; justify-content:space-between; align-items:end; gap:40px; }
.section-intro .eyebrow { margin-bottom:16px; }
.layout h2 { font-size:clamp(32px,3.5vw,46px); font-weight:500; line-height:1.15; }
.section-intro>p { max-width:330px; font-size:14px; line-height:1.8; color:var(--text-secondary); }
.method-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:48px; margin:42px 0 26px; }
.method-grid article { border-top:1px solid var(--border); padding-top:22px; }
.method-number { font-size:10px; letter-spacing:.12em; color:var(--accent); }
.method-grid h3 { font-size:20px; font-weight:500; margin:20px 0 12px; }
.method-grid p { font-size:13px; line-height:1.9; color:var(--text-secondary); }
.result-section { background:var(--bg-secondary); padding:72px 0; }
.result-layout { display:grid; grid-template-columns:1.2fr 1fr; gap:80px; align-items:center; }
.result-photos { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.result-photos figure { position:relative; margin:0; }
.result-photos img { display:block; width:100%; height:370px; object-fit:cover; object-position:center 25%; border-radius:4px; }
.result-photos figcaption { position:absolute; bottom:14px; left:14px; padding:5px 10px; background:var(--bg-primary); color:var(--text-primary); border-radius:2px; font-size:10px; }
.result-copy>p:not(.eyebrow) { margin:22px 0; font-size:14px; line-height:1.9; color:var(--text-secondary); }
.result-stat { display:flex; align-items:baseline; gap:16px; margin-bottom:22px; }
.result-stat strong { font-size:32px; font-weight:500; letter-spacing:-.06em; }
.result-stat span { font-size:12px; color:var(--text-secondary); }
.resource-section { display:flex; justify-content:space-between; align-items:center; gap:32px; padding-top:80px; padding-bottom:80px; }
.resource-section p:not(.eyebrow) { margin-top:22px; color:var(--text-secondary); font-size:13px; line-height:1.8; }
.coaching-invite { background:var(--bg-dark); color:var(--bg-primary); text-align:center; padding:68px 0; }
.coaching-invite .eyebrow { color:#dda398; margin-bottom:16px; }
.coaching-invite p:not(.eyebrow) { font-size:14px; color:#c5c8be; margin:20px 0 26px; }
.coaching-invite .btn-primary { background:var(--bg-primary); color:var(--text-primary); border-color:var(--bg-primary); }
@media(max-width:1000px) { .intro { gap:36px; } .intro-photo img { height:460px; } .result-layout { gap:36px; } .nav-links { gap:20px; } }
@media(max-width:768px) {
 .nav-container { padding:20px 22px; } .logo { font-size:18px; } .nav-links { background:var(--bg-primary); align-items:stretch; text-align:center; } .nav-cta { display:block; } .layout { padding-left:24px; padding-right:24px; }
 .intro { grid-template-columns:1fr; padding-top:122px; padding-bottom:40px; gap:36px; } .intro h1 { font-size:clamp(42px,10vw,64px); } .intro-description { font-size:15px; } .intro-actions { gap:20px; } .intro-actions .btn-primary { width:auto; } .intro-photo img { height:440px; } .eyebrow { margin-bottom:20px; }
 .method { padding-top:44px; padding-bottom:48px; } .section-intro { display:block; } .section-intro>p { margin-top:20px; } .method-grid { grid-template-columns:1fr; gap:24px; margin-top:30px; } .method-grid h3 { margin-top:12px; }
 .result-section { padding:44px 0; } .result-layout { grid-template-columns:1fr; gap:32px; } .result-photos img { height:300px; }
 .resource-section { display:block; padding-top:48px; padding-bottom:48px; } .resource-section .btn-outline-red { margin-top:28px; width:auto; } .coaching-invite { padding:48px 0; } .coaching-invite .btn-primary { width:auto; } .section { padding:56px 24px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none!important; } }
.about-grid,.contact-grid,.services-grid,.clients-grid,.clients-grid-compact,.steps-grid,.proof-grid { max-width:1168px; }
.section-tag { background:transparent; padding-left:0; padding-right:0; }
.form-label,.contact-method-info span { font-family:inherit; letter-spacing:.08em; }
/* Legal pages */
.footer-inner { flex-wrap:wrap; gap:24px; }
.footer-legal { display:flex; gap:20px; }
.footer-legal a,.form-note a { color:var(--text-secondary); font-size:12px; text-underline-offset:4px; }
.legal-page { padding-top:150px; padding-bottom:90px; }
.legal-heading { padding-bottom:40px; border-bottom:1px solid var(--border); }
.legal-heading h1 { font-size:clamp(38px,5vw,62px); font-weight:500; line-height:1.1; }
.legal-heading>p:last-child { color:var(--text-secondary); font-size:13px; margin-top:20px; }
.legal-layout { display:grid; grid-template-columns:230px minmax(0,740px); gap:65px; margin-top:42px; }
.legal-toc { align-self:start; position:sticky; top:120px; }
.legal-toc p { font-size:11px; text-transform:uppercase; letter-spacing:.12em; margin-bottom:16px; }
.legal-toc a { display:block; color:var(--text-secondary); font-size:12px; padding:7px 0; text-decoration:none; }
.legal-toc a:hover { color:var(--accent); text-decoration:underline; }
.legal-copy { font-size:15px; line-height:1.9; color:var(--text-secondary); }
.legal-copy p { margin-bottom:18px; }
.legal-copy h2 { font-size:25px; line-height:1.3; color:var(--text-primary); margin:38px 0 16px; scroll-margin-top:110px; }
.legal-copy a { color:var(--accent); text-underline-offset:3px; overflow-wrap:anywhere; }
.legal-copy ul { padding-left:22px; margin-bottom:20px; }
.legal-copy li { margin-bottom:12px; }
.legal-copy strong { color:var(--text-primary); font-weight:600; }
@media(max-width:768px) { .legal-page { padding-top:120px; padding-bottom:50px; } .legal-layout { grid-template-columns:1fr; gap:28px; margin-top:28px; } .legal-toc { position:static; padding-bottom:24px; border-bottom:1px solid var(--border); } .legal-toc a { padding:8px 0; } }
/* Keep the free plan visible in the opening screen. */
.tracker-caption { color:var(--text-secondary); font-size:12px; line-height:1.6; margin-top:12px; }
.results-privacy-note,.result-copy>p.results-privacy-note { font-size:13px; line-height:1.8; color:var(--text-secondary); margin-top:24px; padding-top:18px; border-top:1px solid var(--border); }
.section-header .results-privacy-note { max-width:620px; margin-left:auto; margin-right:auto; }
.intro-actions .btn-primary { gap:16px; }
@media(max-width:768px) { .intro-actions { gap:14px; margin-top:24px; } .intro-actions .btn-primary { width:100%; padding-left:16px; padding-right:16px; } .intro .availability { margin-top:18px; } }
