/* EDITORIAL BOLD — cream, oversized Instrument Serif, magazine energy. */
body.vm-skin-editorial{
  --bg:#F6F1E7; --panel:#FFFCF5; --ink:#191714; --muted:#5E574C;
  --accent:#C2492E; --accent-ink:#A33A20; --line:#E2D9C8;
  background:var(--bg); color:var(--ink);
  font-family:Inter,system-ui,sans-serif;
}
.vm-skin-editorial h1,.vm-skin-editorial h2{
  font-family:"Instrument Serif",Georgia,serif;font-weight:400;letter-spacing:-.01em;
}
.vm-skin-editorial .vm-hero h1{font-size:clamp(48px,8vw,88px);line-height:1.02;text-transform:uppercase}
.vm-skin-editorial h1 em{font-style:italic;text-transform:none;color:var(--accent)}
.vm-skin-editorial main h2{font-size:clamp(34px,5vw,54px)}
.vm-skin-editorial .vm-nav{background:rgba(246,241,231,.88);border-bottom:2px solid var(--ink)}
.vm-skin-editorial .vm-logo{font-family:"Instrument Serif",serif;font-size:19px;font-weight:400;letter-spacing:.02em}
.vm-skin-editorial .vm-logo span{font-style:italic;color:var(--accent-ink)}
.vm-skin-editorial .vm-kicker,.vm-skin-editorial .vm-eyebrow{color:var(--accent-ink);opacity:1}
.vm-skin-editorial .vm-pulse{color:var(--accent);height:64px}
.vm-skin-editorial p{color:var(--muted)}
.vm-skin-editorial .vm-btn{background:var(--ink);color:var(--bg);border-radius:0}
.vm-skin-editorial .vm-btn-ghost{background:transparent;color:var(--ink);border:2px solid var(--ink);border-radius:0}
.vm-skin-editorial .vm-hero{padding-top:90px;border-bottom:2px solid var(--ink)}
.vm-skin-editorial main section{border-bottom:2px solid var(--ink)}
.vm-skin-editorial main section:last-of-type{border-bottom:none}
.vm-skin-editorial .vm-card{background:var(--panel);border:2px solid var(--ink);border-radius:0}
.vm-skin-editorial .vm-card h3{font-family:"Instrument Serif",serif;font-size:24px;font-weight:400}
.vm-skin-editorial .vm-step-n{color:var(--accent);font-size:28px;font-family:"Instrument Serif",serif;opacity:1}
.vm-skin-editorial .vm-why-list li{border-color:var(--line);font-size:18px}
.vm-skin-editorial .vm-chips li{border:2px solid var(--ink);border-radius:0;background:var(--panel)}
.vm-skin-editorial .vm-case{background:var(--panel);border:2px solid var(--ink);border-radius:0}
.vm-skin-editorial .vm-case-tag{color:var(--accent-ink);opacity:1}
.vm-skin-editorial .vm-contact{background:var(--ink);color:var(--bg)}
.vm-skin-editorial .vm-contact h2{color:var(--bg)}
.vm-skin-editorial .vm-contact .vm-sub,.vm-skin-editorial .vm-foot-note{color:#CFC8BA}
.vm-skin-editorial .vm-contact .vm-btn{background:var(--accent);color:#fff}
.vm-skin-editorial .vm-contact .vm-btn-ghost{color:var(--bg);border-color:var(--bg)}
.vm-skin-editorial .vm-footer{background:var(--ink);color:#CFC8BA}

/* ============ MOTION LAYER (gated by .vm-motion, set in JS) ============ */

/* Hero entrance */
.vm-motion .vm-enter{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s cubic-bezier(.22,.61,.36,1)}
.vm-motion .vm-enter-in{opacity:1;transform:none}

/* Pulse heartbeat re-blip */
@keyframes vm-beat{0%,100%{transform:scaleY(1)}12%{transform:scaleY(1.18)}24%{transform:scaleY(.96)}36%{transform:scaleY(1)}}
.vm-motion .vm-pulse.vm-beat{animation:vm-beat .9s cubic-bezier(.36,.07,.19,.97);transform-origin:center}

/* Scroll reveals */
.vm-motion .vm-reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s cubic-bezier(.22,.61,.36,1)}
.vm-motion .vm-reveal-in{opacity:1;transform:none}

/* Nav emphasis on scroll + active link */
.vm-skin-editorial .vm-nav{transition:box-shadow .3s ease,background .3s ease}
.vm-skin-editorial .vm-nav-scrolled{background:rgba(246,241,231,.97);box-shadow:0 1px 0 #191714, 0 6px 24px rgba(25,23,20,.08)}
.vm-skin-editorial .vm-links a{position:relative;padding-bottom:3px}
.vm-skin-editorial .vm-links a::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--accent);transition:width .25s ease}
.vm-skin-editorial .vm-links a:hover::after,.vm-skin-editorial .vm-links a.vm-active::after{width:100%}
.vm-skin-editorial .vm-links a.vm-active{opacity:1;color:var(--accent-ink)}

/* Card hover: lift + accent frame */
.vm-skin-editorial .vm-card{transition:transform .25s cubic-bezier(.22,.61,.36,1),border-color .25s ease,box-shadow .25s ease}
.vm-skin-editorial .vm-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:6px 6px 0 var(--accent)}
.vm-skin-editorial .vm-card:hover h3{color:var(--accent)}
.vm-skin-editorial .vm-card h3{transition:color .25s ease}

/* Buttons: arrow nudge + fill shift */
.vm-skin-editorial .vm-btn{position:relative;transition:transform .2s ease,background .25s ease,color .25s ease,box-shadow .25s ease}
.vm-skin-editorial .vm-btn::after{content:"\2192";display:inline-block;margin-left:10px;transition:transform .25s cubic-bezier(.22,.61,.36,1)}
.vm-skin-editorial .vm-btn:hover::after{transform:translateX(5px)}
.vm-skin-editorial .vm-btn:hover{background:var(--accent);color:#fff}
.vm-skin-editorial .vm-btn-ghost:hover{background:var(--ink);color:var(--bg)}
.vm-skin-editorial .vm-btn-small::after{content:none}

/* Chips invert on hover */
.vm-skin-editorial .vm-chips li{transition:background .22s ease,color .22s ease,transform .22s ease;cursor:default}
.vm-skin-editorial .vm-chips li:hover{background:var(--ink);color:var(--bg);transform:translateY(-2px)}

/* Steps: accent on hover */
.vm-skin-editorial .vm-steps li{transition:transform .25s ease}
.vm-skin-editorial .vm-steps li:hover{transform:translateY(-3px)}
.vm-skin-editorial .vm-steps li:hover h3{color:var(--accent)}
.vm-skin-editorial .vm-steps h3{transition:color .25s ease}

/* Why-list: accent bar slides in on hover */
.vm-skin-editorial .vm-why-list li{position:relative;padding-left:0;transition:padding-left .25s ease}
.vm-skin-editorial .vm-why-list li::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);height:60%;width:3px;background:var(--accent);opacity:0;transition:opacity .25s ease}
.vm-skin-editorial .vm-why-list li:hover{padding-left:18px}
.vm-skin-editorial .vm-why-list li:hover::before{opacity:1}

/* Reduced motion: everything visible, nothing moves */
@media (prefers-reduced-motion: reduce){
  .vm-enter,.vm-reveal{opacity:1 !important;transform:none !important}
}

/* FAQ editorial skin */
.vm-skin-editorial .vm-faq-list details{border-color:var(--line)}
.vm-skin-editorial .vm-faq-list summary:hover{color:var(--accent)}
.vm-skin-editorial .vm-faq-list summary::after{color:var(--accent)}
.vm-skin-editorial .vm-skip{background:var(--ink);color:var(--bg)}
.vm-skin-editorial a:focus-visible,.vm-skin-editorial button:focus-visible,.vm-skin-editorial summary:focus-visible{outline-color:var(--accent)}
.vm-skin-editorial .vm-burger{color:var(--ink);font-size:24px}
@media(max-width:760px){
  .vm-skin-editorial .vm-nav.vm-open .vm-links{background:var(--bg);border-bottom:2px solid var(--ink)}
}

/* Print & robustness: never hide content in non-interactive contexts */
@media print{
  .vm-reveal,.vm-enter{opacity:1 !important;transform:none !important}
  .vm-nav,.vm-burger{position:static}
}

/* Cost-of-waiting section: ink cards on cream for weight */
.vm-skin-editorial .vm-cost-cards .vm-card{background:var(--ink);border-color:var(--ink)}
.vm-skin-editorial .vm-cost-cards .vm-card h3{color:var(--bg)}
.vm-skin-editorial .vm-cost-cards .vm-card p{color:#CFC8BA}
.vm-skin-editorial .vm-cost-cards .vm-card:hover{box-shadow:6px 6px 0 var(--accent);border-color:var(--accent)}

/* CTA bands */
.vm-band{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:44px;padding:26px 30px;border:2px solid var(--ink);background:var(--panel)}
.vm-band p{margin:0;font-size:17.5px;color:var(--ink);font-weight:500;max-width:60ch}
.vm-band-light{margin:44px 0 0}

/* Floating WhatsApp */
.vm-float-wa{position:fixed;right:22px;bottom:22px;z-index:60;width:56px;height:56px;border-radius:50%;background:#1FA855;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(25,23,20,.25);transition:transform .2s ease}
.vm-float-wa:hover{transform:scale(1.08)}
.vm-float-wa::after{content:none}
@media print{.vm-float-wa{display:none}}

/* Footer legal links */
.vm-legal-links a{text-decoration:underline;text-underline-offset:2px}
.vm-legal-links a:hover{color:var(--accent)}

/* Legal pages */
.vm-legal{max-width:760px;margin:0 auto;padding:60px 24px 90px}
.vm-legal h1{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-size:clamp(36px,5vw,52px);margin-bottom:6px}
.vm-legal .vm-legal-updated{color:var(--muted);font-size:14px;margin-bottom:36px}
.vm-legal h2{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-size:26px;margin:36px 0 10px}
.vm-legal p,.vm-legal li{color:var(--muted);font-size:16px}
.vm-legal a{color:var(--accent-ink)}

/* Blog */
.vm-article-wrap{padding:60px 0 40px}
.vm-article{max-width:760px;margin:0 auto;padding:0 24px}
.vm-article h1{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-size:clamp(34px,5vw,50px);line-height:1.08;margin:10px 0 28px}
.vm-article-body p,.vm-article-body li{color:var(--muted);font-size:17px;line-height:1.7;max-width:68ch}
.vm-article-body h2{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-size:30px;margin:40px 0 12px}
.vm-article-body h3{font-size:20px;margin:28px 0 8px}
.vm-article-body blockquote{border-left:3px solid var(--accent);margin:24px 0;padding:4px 0 4px 20px;font-style:italic;color:var(--ink)}
.vm-article-body table{border-collapse:collapse;width:100%;font-size:15px;margin:20px 0}
.vm-article-body th,.vm-article-body td{border:1px solid var(--line);padding:9px 12px;text-align:left;color:var(--muted)}
.vm-article-body th{color:var(--ink);font-weight:600}
.vm-article-body a{color:var(--accent-ink)}
.vm-author-box{border-top:2px solid var(--ink);margin-top:44px;padding-top:18px}
.vm-author-box p{color:var(--muted);font-size:15px}
.vm-bloglist{padding:70px 24px 80px}
.vm-bloglist h1{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-size:clamp(36px,5vw,54px)}
.vm-postgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:40px}
@media(max-width:760px){.vm-postgrid{grid-template-columns:1fr}}
.vm-postcard h3{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-size:24px}
.vm-postcard h3 a{color:var(--ink)}
.vm-postcard h3 a:hover{color:var(--accent)}
.vm-readmore{font-weight:700;color:var(--accent-ink);font-size:14px;letter-spacing:.06em;text-transform:uppercase}
