
:root{
  --cream:#f5f0e4;
  --cream-2:#fbf7ee;
  --ink:#142441;
  --brown:#6f4f3b;
  --muted:#6e685f;
  --line:#ded5c6;
  --green:#788f76;
  --white:#fffdf8;
  --shadow:0 22px 60px rgba(32,27,20,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--cream-2);color:var(--ink);
  font-family:"DM Sans",system-ui,-apple-system,sans-serif;line-height:1.6;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.container{width:min(1180px,calc(100% - 40px));margin:auto}
.narrow{width:min(980px,100%)}
.section{padding:96px 0}
.eyebrow{font-size:.77rem;letter-spacing:.16em;font-weight:700;margin:0 0 14px;color:var(--brown)}
h1,h2,h3,.brand-main,.brand-sub{font-family:"Libre Baskerville",Georgia,serif}
h1{font-size:clamp(3rem,7vw,6.4rem);line-height:.98;letter-spacing:-.05em;margin:0 0 26px;max-width:850px}
h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.08;letter-spacing:-.035em;margin:0 0 18px}
h3{font-size:1.45rem;line-height:1.25;margin:0 0 10px}
p{color:var(--muted)}
.btn{
  display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:0 22px;
  border-radius:2px;background:var(--ink);color:white;font-weight:700;border:1px solid var(--ink);
  transition:.2s ease;cursor:pointer;
}
.btn:hover{transform:translateY(-1px);background:#20385f}
.btn-small{min-height:40px;padding:0 16px;font-size:.88rem}
.btn-light{background:var(--cream-2);border-color:var(--cream-2);color:var(--ink)}
.text-link{font-weight:700;border-bottom:1px solid currentColor;padding-bottom:3px}
.nav-wrap{
  position:sticky;top:0;z-index:50;background:rgba(251,247,238,.92);backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(111,79,59,.13)
}
.nav{height:82px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;flex-direction:column;line-height:1}
.brand-main{font-weight:700;font-size:1.08rem;letter-spacing:.02em}
.brand-sub{font-size:.82rem;margin-top:7px}
.nav-links{display:flex;align-items:center;gap:28px;font-size:.9rem;font-weight:600}
.menu-btn{display:none;background:none;border:0;font-size:1.5rem;color:var(--ink)}
.mobile-menu{display:none;padding:0 20px 20px;flex-direction:column;gap:14px;font-weight:600}
.hero{
  min-height:calc(100vh - 82px);display:grid;grid-template-columns:1.03fr .97fr;align-items:center;
  gap:58px;padding-top:70px;padding-bottom:90px
}
.hero-lede{font-size:1.18rem;max-width:680px;margin-bottom:30px}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.hero-proof{display:flex;gap:40px;margin-top:58px;padding-top:24px;border-top:1px solid var(--line)}
.hero-proof div{display:flex;flex-direction:column}
.hero-proof strong{font-family:"Libre Baskerville",serif;font-size:1.05rem}
.hero-proof span{font-size:.84rem;color:var(--muted)}
.hero-visual{position:relative}
.window{background:white;border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}
.window-bar{height:43px;background:#eee7db;display:flex;align-items:center;gap:7px;padding:0 14px}
.window-bar span{width:9px;height:9px;border-radius:50%;background:#c0b5a6}
.window-bar small{margin-left:8px;color:#746b60;font-size:.72rem}
.window img{aspect-ratio:16/9;object-fit:cover;object-position:top}
.floating-note{
  position:absolute;right:-26px;bottom:-32px;background:var(--white);border:1px solid var(--line);
  box-shadow:0 16px 38px rgba(30,30,30,.11);padding:16px 18px;display:flex;gap:12px;width:290px
}
.floating-note .dot{width:10px;height:10px;border-radius:50%;background:var(--green);margin-top:6px}
.floating-note strong,.floating-note small{display:block}
.floating-note small{color:var(--muted)}
.problem{background:var(--cream)}
.section-lede{font-size:1.12rem;max-width:800px}
.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:52px}
.benefit-grid article{padding:28px;border-top:1px solid var(--brown);background:rgba(255,255,255,.28)}
.benefit-grid span{font-size:.76rem;color:var(--brown);font-weight:700}
.benefit-grid p{margin-bottom:0}
.section-heading{display:grid;grid-template-columns:1.4fr .6fr;gap:60px;align-items:end;margin-bottom:44px}
.section-heading>p{margin:0}
.service-card{
  display:grid;grid-template-columns:.82fr 1.18fr;border:1px solid var(--line);background:var(--white);
  margin-bottom:28px;min-height:530px
}
.service-card.reverse{grid-template-columns:1.18fr .82fr}
.service-card.reverse .service-copy{order:2}
.service-card.reverse .service-image{order:1}
.service-copy{padding:48px}
.service-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px}
.service-number{font-weight:700;color:var(--brown)}
.price{font-weight:700;background:var(--cream);padding:7px 11px}
.service-tagline{font-size:1.08rem;color:var(--ink);font-weight:600}
.service-copy ul{padding-left:18px;margin:24px 0 30px;color:var(--muted)}
.service-copy li{margin:7px 0}
.service-image{display:flex;align-items:center;justify-content:center;background:#eee8dc;padding:26px}
.service-image img{box-shadow:0 12px 30px rgba(30,30,30,.13);border:1px solid #d5ccbd}
.bundle{
  background:var(--ink);color:white;padding:42px 46px;display:grid;grid-template-columns:1fr auto;
  gap:30px;align-items:center;margin-top:40px
}
.bundle p{color:#d4d9e2}.bundle .eyebrow{color:#ccbba6}
.bundle-price{display:flex;align-items:center;gap:22px}
.bundle-price strong{font-family:"Libre Baskerville",serif;font-size:1.4rem}
.process{background:var(--cream)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.steps article{padding:34px 26px;border-right:1px solid var(--line)}
.steps article:last-child{border-right:0}
.steps span{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--brown);color:var(--brown);font-weight:700;margin-bottom:28px}
.about-card{display:grid;grid-template-columns:1fr 1fr;gap:80px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:62px 0}
.about-copy p{font-size:1.08rem}
.contact{background:var(--ink);color:white}
.contact .eyebrow{color:#ccbba6}
.contact h2{max-width:620px}
.contact p{color:#d5dae3}
.contact-grid{display:grid;grid-template-columns:1fr .8fr;gap:80px;align-items:start}
.contact-note{margin-top:30px}
.contact-form{background:var(--cream-2);padding:34px;color:var(--ink)}
.contact-form label{display:block;font-size:.82rem;font-weight:700;margin-bottom:18px}
.contact-form input,.contact-form textarea{
  display:block;width:100%;margin-top:7px;background:white;border:1px solid var(--line);padding:13px 14px;
  font:inherit;color:var(--ink);outline:none
}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--brown)}
.form-note{display:block;color:var(--muted);margin-top:12px;line-height:1.4}
footer{background:#0e1a30;color:white;padding:34px 0}
.footer-inner{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center}
.footer-inner p{color:#acb4c1;margin:0;text-align:center}
.footer-inner p:last-child{text-align:right}

@media(max-width:900px){
  .nav-links{display:none}.menu-btn{display:block}.mobile-menu.open{display:flex}
  .hero{grid-template-columns:1fr;padding-top:55px;min-height:auto}.hero-visual{margin-top:20px}
  .floating-note{right:12px}
  .section-heading,.contact-grid,.about-card{grid-template-columns:1fr;gap:22px}
  .service-card,.service-card.reverse{grid-template-columns:1fr}.service-card.reverse .service-copy{order:1}.service-card.reverse .service-image{order:2}
  .benefit-grid,.steps{grid-template-columns:1fr 1fr}
  .bundle{grid-template-columns:1fr}.bundle-price{justify-content:space-between}
}
@media(max-width:600px){
  .container{width:min(100% - 24px,1180px)}.section{padding:70px 0}
  h1{font-size:3rem}.hero-proof{gap:18px;justify-content:space-between}.hero-proof strong{font-size:.93rem}
  .benefit-grid,.steps{grid-template-columns:1fr}.steps article{border-right:0;border-bottom:1px solid var(--line)}
  .service-copy{padding:28px 24px}.service-image{padding:14px}
  .bundle{padding:32px 24px}.bundle-price{align-items:flex-start;flex-direction:column}
  .floating-note{position:relative;right:auto;bottom:auto;margin:-1px 12px 0;width:auto}
  .footer-inner{grid-template-columns:1fr;gap:18px;text-align:center}.footer-inner .brand{align-items:center}
  .footer-inner p:last-child{text-align:center}
}


/* Pilot pricing — added without changing the rest of the site */
.price-pilot,
.bundle-pricing {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.old-price {
  text-decoration: line-through;
  text-decoration-thickness: 1.5px;
  opacity: .55;
}

.pilot-price {
  text-decoration: none;
  font-weight: 700;
  white-space: nowrap;
}

.bundle-pricing .pilot-price {
  font-family: inherit;
}


/* Live Power BI demonstration */
.live-demo-card {
  margin: 28px 0 56px;
  padding: 28px;
  border: 1px solid rgba(28, 44, 76, 0.16);
  border-radius: 18px;
  background: #F8F4E8;
}

.live-demo-heading {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  align-items: end;
  margin-bottom: 20px;
}

.live-demo-heading h3 {
  margin: 4px 0 0;
}

.live-demo-heading > p {
  margin: 0;
}

.powerbi-embed {
  width: 100%;
  aspect-ratio: 1.6064 / 1;
  overflow: hidden;
  border: 1px solid rgba(28, 44, 76, 0.14);
  border-radius: 14px;
  background: #F8F4E8;
}

.powerbi-embed iframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
}

@media (max-width: 760px) {
  .live-demo-card {
    padding: 18px;
  }

  .live-demo-heading {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .powerbi-embed {
    aspect-ratio: 3 / 4;
    min-height: 520px;
  }
}


/* Before & After section */
.before-after-section {
  margin: 0 0 56px;
}

.before-after-heading {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  align-items: end;
  margin-bottom: 24px;
}

.before-after-heading h2 {
  margin: 4px 0 0;
}

.before-after-heading > p {
  margin: 0;
}

.before-after-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.before-after-card {
  padding: 26px;
  border: 1px solid rgba(28, 44, 76, 0.16);
  border-radius: 18px;
  background: #F8F4E8;
}

.before-after-label {
  display: inline-block;
  padding: 6px 12px;
  border: 1px solid rgba(28, 44, 76, 0.25);
  border-radius: 999px;
  font-size: .86rem;
  font-weight: 700;
  margin-bottom: 12px;
  color: #1C2C4C;
}

.before-after-card h3 {
  margin: 0 0 8px;
}

.before-after-card p {
  margin: 0 0 18px;
}

.before-after-card img {
  width: 100%;
  border: 1px solid rgba(28, 44, 76, 0.14);
  border-radius: 12px;
  box-shadow: 0 10px 24px rgba(28, 44, 76, 0.08);
  background: #F8F4E8;
}

@media (max-width: 760px) {
  .before-after-heading,
  .before-after-grid {
    grid-template-columns: 1fr;
  }

  .before-after-card {
    padding: 18px;
  }
}
