:root {
  --bg:#f7f0e3;--bg-soft:#fbf7ef;--surface:rgba(255,252,247,0.88);--surface-strong:#fffdf8;
  --ink:#1F3522;--ink-soft:rgba(31,53,34,0.68);--line:rgba(31,53,34,0.11);
  --green:#1F3522;--green-deep:#162918;--green-mid:#273f2a;
  --orange:#D47B0F;--orange-soft:#f0aa5e;--orange-pale:rgba(212,123,15,0.12);
  --cream:#fff5ea;
  --shadow-sm:0 4px 18px rgba(16,43,34,0.07);--shadow:0 18px 56px rgba(16,43,34,0.09);--shadow-lg:0 32px 80px rgba(16,43,34,0.13);
  --r-xl:32px;--r-lg:24px;--r-md:18px;--r-sm:12px;
  --font-head:'Montserrat',sans-serif;--font-body:'Inter',sans-serif;
  --ease-out:cubic-bezier(0.16,1,0.3,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);color:var(--ink);background:radial-gradient(circle at top left,rgba(212,123,15,0.13),transparent 28%),radial-gradient(circle at 88% 10%,rgba(31,53,34,0.10),transparent 24%),linear-gradient(180deg,#fbf6ec 0%,#f5ede0 50%,#f7f1e5 100%);overflow-x:hidden;cursor:none;}
a{color:inherit;text-decoration:none;}
img,svg{display:block;}
button,input{font:inherit;}
.cursor{width:8px;height:8px;background:var(--orange);border-radius:50%;position:fixed;top:0;left:0;pointer-events:none;z-index:9999;transition:transform 0.05s;}

.shell{width:min(1180px,calc(100% - 48px));margin:0 auto;}
.site-header{position:sticky;top:0;z-index:100;padding:16px 0;background:rgba(31,53,34,1);backdrop-filter:blur(20px);border-bottom:1px solid rgba(31,53,34,0.07);transition:box-shadow 0.3s;}
.site-header.elevated{box-shadow:0 4px 32px rgba(16,43,34,0.08);}
.site-header__inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;}
.brand{display:inline-flex;align-items:center;gap:12px;font-family:var(--font-head);font-weight:700;letter-spacing:-0.03em;font-size:1.05rem;transition:opacity .2s;}
.brand:hover{opacity:.8;}
.brand__mark{width:40px;height:40px;display:inline-grid;place-items:center;border-radius:13px;color:#fff;background:linear-gradient(135deg,var(--green) 0%,#2a5534 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),var(--shadow-sm);font-size:1.1rem;transition:transform 0.25s var(--ease-out);}
.brand:hover .brand__mark{transform:rotate(-6deg) scale(1.08);}
.site-nav{display:flex;justify-content:right;gap:28px;font-size:0.94rem;color:white;font-family:var(--font-head);font-weight:500;}
.site-nav a{position:relative;padding-bottom:2px;transition:color .2s;}
.site-nav a::after{content:'';position:absolute;bottom:-1px;left:0;width:0;height:1.5px;background:var(--orange);transition:width .28s var(--ease-out);}
.site-nav a:hover{color:var(--orange);}
.site-nav a:hover::after{width:100%;}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 24px;border-radius:999px;border:1px solid transparent;background:var(--green);color:#fff;font-family:var(--font-head);font-size:0.85rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;cursor:none;transition:transform .2s var(--ease-out),background .2s,box-shadow .2s;position:relative;overflow:hidden;}
.button::before{content:'';position:absolute;inset:0;background:rgba(255,255,255,0.12);transform:translateX(-101%);transition:transform .35s var(--ease-out);}
.button:hover::before{transform:translateX(0);}
.button:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(16,43,34,0.18);}
.button--small{min-height:42px;padding:0 18px;font-size:0.78rem;}
.button--ghost{background:transparent;color:var(--green);border-color:rgba(31,53,34,0.22);}
.button--ghost::before{background:rgba(31,53,34,0.06);}
.button--ghost:hover{box-shadow:none;}
.button--orange{background:var(--orange);}
.button--orange:hover{background:#bf6e0b;}
.button--light{background:#fff;color:var(--green);}
.button--light:hover{background:var(--cream);box-shadow:0 6px 24px rgba(16,43,34,0.14);}
.eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:16px;padding:8px 14px;border-radius:999px;border:1px solid rgba(31,53,34,0.11);background:rgba(255,255,255,0.6);color:var(--green);font-family:var(--font-head);font-size:0.72rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;}
.eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--orange);flex-shrink:0;}
.eyebrow--light{background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.16);color:rgba(255,255,255,0.88);}
.eyebrow--light::before{background:var(--orange-soft);}
.hero{padding:64px 0 40px;position:relative;overflow:hidden;}
.hero::before{content:'';position:absolute;top:-80px;right:-120px;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(212,123,15,0.09),transparent 70%);pointer-events:none;}
.hero__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,0.9fr);align-items:center;gap:48px;}
.hero__copy{max-width:620px;}
.hero h1{font-family:var(--font-head);font-size:clamp(2.8rem,6vw,5.4rem);font-weight:800;line-height:1.0;letter-spacing:-0.04em;margin:0 0 20px;color:var(--ink);}
.hero h1 .accent{color:var(--orange);}
.hero__lede{max-width:540px;margin-bottom:32px;font-size:1.08rem;line-height:1.7;color:var(--ink-soft);}
.hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:40px;}
.hero__stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;}
.stat-card{padding:18px 20px;border-radius:var(--r-lg);background:var(--green);border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:transform .25s var(--ease-out),box-shadow .25s;}
.stat-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);}
.stat-card__value{display:block;margin-bottom:6px;font-family:var(--font-head);font-size:1.7rem;font-weight:800;letter-spacing:-0.04em;color:var(--cream);}
.stat-card__label{display:block;color:var(--cream);font-size:0.88rem;line-height:1.3;}
.stat-card--accent{background:linear-gradient(135deg,var(--orange) 0%,#e8952a 100%);color:#fff;border-color:transparent;}
.stat-card--accent .stat-card__value,.stat-card--accent .stat-card__label{color:#fff;}
.stat-card--accent .stat-card__label{opacity:0.86;}
.hero__visual{position:relative;min-height:600px;}
.dashboard-card{position:relative;overflow:hidden;padding:28px;border-radius:var(--r-xl);background:linear-gradient(160deg,rgba(255,255,255,0.98),rgba(247,241,230,0.93));border:1px solid var(--line);box-shadow:var(--shadow-lg);}
.dashboard-card--primary{min-height:520px;}
.dashboard-card__topline{font-family:var(--font-head);font-size:0.74rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px;}
.dashboard-card__headline{font-family:var(--font-head);font-size:1.85rem;font-weight:800;line-height:1.1;letter-spacing:-0.04em;max-width:340px;margin-bottom:28px;}
.dashboard-card__chart{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:10px;height:200px;margin-bottom:24px;}
.dashboard-card__chart span{border-radius:999px 999px 8px 8px;background:linear-gradient(180deg,rgba(31,53,34,0.88),rgba(31,53,34,0.18));animation:barGrow 0.8s var(--ease-out) both;}
@keyframes barGrow{from{transform:scaleY(0);transform-origin:bottom;}to{transform:scaleY(1);transform-origin:bottom;}}
.dashboard-card__chart span:nth-child(1){height:30%;animation-delay:0.1s;}
.dashboard-card__chart span:nth-child(2){height:48%;animation-delay:0.18s;}
.dashboard-card__chart span:nth-child(3){height:60%;animation-delay:0.26s;}
.dashboard-card__chart span:nth-child(4){height:44%;animation-delay:0.34s;}
.dashboard-card__chart span:nth-child(5){height:76%;background:linear-gradient(180deg,var(--orange),rgba(212,123,15,0.22));animation-delay:0.42s;}
.dashboard-card__chart span:nth-child(6){height:92%;animation-delay:0.5s;}
.dashboard-card__legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.dashboard-card__legend div{padding:14px 16px;border-radius:var(--r-md);background:rgba(31,53,34,0.04);transition:background .2s;}
.dashboard-card__legend div:hover{background:rgba(31,53,34,0.08);}
.dashboard-card__legend strong{display:block;margin-bottom:4px;font-family:var(--font-head);font-size:1.3rem;font-weight:800;letter-spacing:-0.03em;}
.dashboard-card__legend span{color:var(--ink-soft);font-size:0.84rem;}
.floating-panel{position:absolute;display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;max-width:280px;padding:16px;border-radius:var(--r-lg);background:rgba(255,252,247,0.94);border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(12px);}
.floating-panel--left{left:-32px;bottom:1%;animation:floatLeft 3.2s ease-in-out infinite;}
.floating-panel--right{right:-25%;top:56px;animation:floatRight 3.8s ease-in-out infinite;}
@keyframes floatLeft{0%,100%{transform:translateY(0);}50%{transform:translateY(-8px);}}
@keyframes floatRight{0%,100%{transform:translateY(0);}50%{transform:translateY(6px);}}
.floating-panel__icon,.icon-badge,.feature-list__icon{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:14px;background:rgba(31,53,34,0.07);color:var(--green);flex-shrink:0;transition:background .2s,transform .2s;}
.floating-panel:hover .floating-panel__icon,.solution-card:hover .icon-badge{background:var(--orange-pale);color:var(--orange);transform:scale(1.08);}
.floating-panel__icon svg,.icon-badge svg,.feature-list__icon svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.floating-panel strong{display:block;margin-bottom:4px;font-size:0.95rem;letter-spacing:-0.02em;}
.floating-panel p{font-size:0.82rem;color:var(--ink-soft);margin:0;line-height:1.45;}

@media (pointer: coarse) {
  #cursor { display: none !important; }
}

/* TICKER — base opacity low, highlighted items bright */
.ticker-strip{padding:10px 0;border-top:1px solid rgba(31,53,34,0.08);border-bottom:1px solid rgba(31,53,34,0.08);overflow:hidden;margin:16px 0;}
.ticker-strip__track{display:flex;width:max-content;animation:tickerRoll 28s linear infinite;}
.ticker-strip__item{font-family:var(--font-head);font-size:12px;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:rgba(31,53,34,0.28);padding:0 36px;border-right:1px solid rgba(31,53,34,0.08);display:flex;align-items:center;gap:10px;white-space:nowrap;transition:color 0.6s ease,opacity 0.6s ease;}
.ticker-strip__item.hi{color:var(--orange);}
.ticker-strip__item.pulse-hi{color:var(--orange)!important;opacity:1!important;}
@keyframes tickerRoll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.dot{width:3px;height:3px;background:currentColor;border-radius:50%;}

.section{padding:100px 0;}
.section--tinted{background:linear-gradient(180deg,rgba(31,53,34,0.04),rgba(31,53,34,0.01)),var(--bg-soft);}
.section-heading{max-width:680px;margin-bottom:48px;}
.section-heading h2,.platform-copy h2,.contact-band h2{font-family:var(--font-head);font-size:clamp(2rem,4vw,3.8rem);font-weight:800;line-height:1.05;letter-spacing:-0.04em;margin:0 0 16px;}
.section-heading p,.platform-copy p{color:var(--ink-soft);font-size:1rem;line-height:1.7;}
.section-heading--split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,0.85fr);align-items:center;gap:32px;max-width:none;}
.s-pain{background:var(--cream);position:relative;overflow:hidden;}
.s-pain::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(to right, transparent, var(--orange), transparent);
}
.pain-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:stretch;margin-top:52px;}
.pain-grid > div:first-child{display:flex;flex-direction:column;}
.pain-grid > div:first-child .pain-cards{display:flex;flex-direction:column;gap:12px;flex:1;}
.pain-grid > div:first-child .pain-card{flex:1;}

/* CHANGE 2: "Common Pain Points" label styling */
.pain-col-label{font-family:var(--font-head);font-size:0.72rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:18px;padding:8px 14px;border-radius:999px;border:1px solid rgba(31,53,34,0.11);background:rgba(255,255,255,0.6);display:inline-flex;align-items:center;gap:8px;width:fit-content;}
.pain-col-label::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--orange);flex-shrink:0;}
.o{color:var(--orange);}
.pain-cards{display:flex;flex-direction:column;gap:12px;}
.pain-card{align-items:anchor-center;display:flex; flex-direction:row; gap:20px;background:var(--green);border-radius:var(--r-lg);border:1px solid rgba(31,53,34,0.10);padding:28px 32px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:transform .3s var(--ease-out),box-shadow .3s,border-color .3s;}
.pain-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--orange);transform:scaleY(0);transform-origin:bottom;transition:transform .3s var(--ease-out);}
.pain-card:hover{transform:translateX(6px);box-shadow:var(--shadow);border-color:rgba(212,123,15,0.3);}
.pain-card:hover::before{transform:scaleY(1);}
.pain-num{font-family:var(--font-head);font-size:44px;font-weight:800;letter-spacing:-0.06em;color:var(--orange-soft);line-height:1;margin-bottom:8px;}
.pain-txt{font-size:15px;font-weight:400;line-height:1.6;color:var(--cream)}
.pain-right{display:flex;flex-direction:column;gap:20px;}
.pain-stmt{font-size:15px;font-weight:400;line-height:1.6;color:var(--green)}
.pain-stmt .o{color:var(--orange);}
.pain-right .section-heading h2{color:var(--green);}
.pain-right .section-heading h2 .o{color:var(--orange);}
.solution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.solution-card{padding:28px;border-radius:var(--r-xl);background:rgba(255,255,255,0.78);border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:transform .3s var(--ease-out),box-shadow .3s;position:relative;overflow:hidden;}
.solution-card::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(212,123,15,0.0),rgba(212,123,15,0.05));opacity:0;transition:opacity .3s;}
.solution-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);background:linear-gradient(160deg,rgba(212,123,15,0.13),rgba(255,255,255,0.9));}
.solution-card:hover::after{opacity:1;}
.solution-card--accent{background:linear-gradient(160deg,rgba(212,123,15,0.13),rgba(255,255,255,0.9));}
.solution-card h3{font-family:var(--font-head);font-size:1.15rem;font-weight:700;margin:16px 0 10px;letter-spacing:-0.02em;}
.solution-card p{color:var(--ink-soft);font-size:0.94rem;line-height:1.65;}
.solution-card a{display:inline-flex;align-items:center;gap:6px;margin-top:18px;color:var(--orange);font-family:var(--font-head);font-size:0.8rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;transition:gap .2s;}
.solution-card a:hover{gap:10px;}

.solution-card .card-link {
  position: absolute; inset: 0; z-index: 1;
  border-radius: inherit;
}

/* ── LUCIDITY ACCORDION BARS ─────────────────────────────── */
.lb-wrap { display: flex; flex-direction: column; gap: 8px; }

.lb-item {
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  overflow: hidden;
  background: rgba(255,255,255,0.78);
  box-shadow: var(--shadow-sm);
}
.lb-row {
  display: flex; align-items: center; gap: 14px;
  padding: 16px 20px; cursor: pointer;
  transition: background .18s; user-select: none;
}
.lb-item:hover .lb-row, .lb-item.lb-open .lb-row {
  background: rgba(212,123,15,0.04);
}
.lb-icon {
  width: 36px; height: 36px; border-radius: 10px; flex-shrink: 0;
  background: rgba(31,53,34,0.05); border: 1px solid var(--line);
  display: flex; align-items: center; justify-content: center;
  transition: background .2s, border-color .2s;
}
.lb-item:hover .lb-icon, .lb-item.lb-open .lb-icon {
  background: rgba(212,123,15,0.12); border-color: rgba(212,123,15,0.3);
}
.lb-icon svg {
  width: 16px; height: 16px; fill: none;
  stroke: var(--ink-soft); stroke-width: 1.8;
  stroke-linecap: round; stroke-linejoin: round; transition: stroke .2s;
}
.lb-item:hover .lb-icon svg, .lb-item.lb-open .lb-icon svg { stroke: var(--orange); }
.lb-title {
  flex: 1; font-family: var(--font-head);
  font-size: 0.85rem; font-weight: 600; color: var(--ink); line-height: 1.35;
}
.lb-chevron {
  width: 16px; height: 16px; fill: none;
  stroke: var(--ink-soft); stroke-width: 1.8;
  stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0;
  transition: transform .22s var(--ease-out), stroke .18s;
}
.lb-item.lb-open .lb-chevron { transform: rotate(180deg); stroke: var(--orange); }
.lb-body {
  display: none;
  padding: 0 20px 18px 70px;
  border-top: 1px solid var(--line);
  background: rgba(212,123,15,0.02);
}
.lb-item.lb-open .lb-body { display: block; }
.lb-body p {
  font-family: var(--font-body); font-size: 0.88rem;
  line-height: 1.75; color: var(--ink-soft); margin: 14px 0 0;
}
.offer-card[style*="background:#"] .offer-title,
.offer-card[style*="background:#"] .offer-desc {
  color: rgba(255, 245, 234, 0.92);
}
.offer-card[style*="background:#"] .offer-desc {
  color: rgba(255, 245, 234, 0.62);
}
.offer-card[style*="background:#"] .offer-icon img {
  filter: brightness(0) invert(1) opacity(0.7);
}
.belief-bar{background:var(--orange);display:flex;flex-direction:column;overflow:hidden;}
.belief-marquee{width:100%;overflow:hidden;padding:9px 0;border-bottom:1px solid rgba(31,53,34,0.14);}
.belief-marquee-track{display:flex;width:max-content;animation:marqueeScroll 30s linear infinite;}
.belief-marquee-track span{font-family:var(--font-head);font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,0.4);padding:0 32px;white-space:nowrap;border-right:1px solid rgba(31,53,34,0.1);}
@keyframes marqueeScroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.belief-centre{display:flex;align-items:center;justify-content:center;gap:32px;padding:52px 64px;}
.belief-plogo{width:58px;height:58px;object-fit:contain;flex-shrink:0;filter:brightness(0) invert(1);}
.belief-plogo-orange{width:58px;height:58px;object-fit:contain;flex-shrink:0;}
.belief-txt{font-family:var(--font-head);font-size:clamp(14px,1.6vw,22px);font-weight:600;line-height:1.55;color:#FFFFFF;max-width:820px;}
.belief-txt em{font-style:italic;font-weight:700;}
.platform-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,0.95fr);align-items:center;gap:64px;}
.platform-copy{max-width:560px;}
.platform-copy h2{color:var(--ink);margin-bottom:14px;}
.feature-list{list-style:none;display:grid;gap:12px;margin-top:28px;}
.feature-list li{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;padding:14px 16px;border-radius:var(--r-lg);background:rgba(255,255,255,0.68);border:1px solid var(--line);font-size:0.94rem;line-height:1.5;transition:transform .25s var(--ease-out),background .2s;}
.feature-list li:hover{transform:translateX(4px);background:rgba(255,255,255,0.92);}
.platform-visual{display:grid;gap:16px;}
.visual-card{overflow:hidden;border-radius:var(--r-xl);background:rgba(255,255,255,0.78);border:1px solid var(--line);box-shadow:var(--shadow);transition:transform .3s var(--ease-out),box-shadow .3s;}
.visual-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);}
.visual-card--large{padding:24px;}
.visual-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;font-family:var(--font-head);font-size:0.76rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-soft);}
.visual-card__header span:last-child{padding:4px 10px;border-radius:999px;background:rgba(212,123,15,0.12);color:var(--orange);letter-spacing:0.08em;}
.workflow{display:grid;gap:10px;}
.workflow__row{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-radius:var(--r-md);background:rgba(31,53,34,0.05);transition:background .2s,transform .2s;}
.workflow__row:hover{background:rgba(31,53,34,0.09);transform:translateX(3px);}
.workflow__row span{font-size:0.88rem;color:var(--ink-soft);}
.workflow__row strong{font-family:var(--font-head);font-size:1.2rem;font-weight:800;letter-spacing:-0.03em;}
.visual-card--image{min-height:240px;padding:18px;background:radial-gradient(circle at top,rgba(212,123,15,0.18),transparent 34%),linear-gradient(180deg,rgba(255,255,255,0.9),rgba(247,241,230,0.88));}
.mock-graphic{position:relative;height:100%;min-height:204px;border-radius:var(--r-lg);background:linear-gradient(180deg,rgba(31,53,34,0.06),rgba(31,53,34,0.02));overflow:hidden;}
.mock-graphic__orbit{position:absolute;inset:24px;border:1px solid rgba(31,53,34,0.07);border-radius:50%;animation:spin 18s linear infinite;}
@keyframes spin{to{transform:rotate(360deg);}}
.mock-graphic__tile{position:absolute;border-radius:var(--r-md);background:rgba(255,255,255,0.88);border:1px solid rgba(31,53,34,0.07);}
.mock-graphic__tile--a{top:28px;left:30px;width:130px;height:80px;}
.mock-graphic__tile--b{right:30px;top:50px;width:160px;height:110px;background:linear-gradient(160deg,rgba(212,123,15,0.16),rgba(255,255,255,0.88));}
.mock-graphic__tile--c{left:110px;bottom:24px;width:148px;height:74px;}
.insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.insight-card{padding:28px;border-radius:var(--r-xl);background:rgba(255,255,255,0.72);border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:transform .3s var(--ease-out),box-shadow .3s;}
.insight-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);}
.insight-card__number{display:inline-flex;margin-bottom:16px;font-family:var(--font-head);font-size:0.76rem;font-weight:700;letter-spacing:0.14em;color:rgba(31,53,34,0.4);}
.insight-card h3{font-family:var(--font-head);font-size:1.1rem;font-weight:700;margin-bottom:10px;letter-spacing:-0.02em;}
.insight-card p{font-size:0.93rem;color:var(--ink-soft);line-height:1.65;}
.offerings-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:48px;}
.offer-card{background:rgba(255,255,255,0.72);border:1px solid var(--line);border-radius:var(--r-xl);padding:28px 20px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;box-shadow:var(--shadow-sm);transition:transform .3s var(--ease-out),box-shadow .3s,background .2s;}
.offer-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);background:rgba(255,255,255,0.96);}
.offer-icon{width:120px;height:120px;border-radius:var(--r-lg);display:flex;align-items:center;justify-content:center;transition:background .25s,border-color .25s;}
.offer-card:hover .offer-icon{background:var(--orange-pale);border-color:rgba(212,123,15,0.3);}
.offer-icon img{width:120px;height:120px;object-fit:contain;}
.offer-title{font-family:var(--font-head);font-size:12px;font-weight:700;line-height:1.45;letter-spacing:0.01em;}
.contact-band{padding:100px 0;color:#fff;background:radial-gradient(circle at top left,rgba(255,255,255,0.07),transparent 28%),linear-gradient(135deg,var(--green) 0%,var(--green-deep) 100%);position:relative;overflow:hidden;}
.contact-band::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.03) 1px,transparent 1px);background-size:64px 64px;}
.contact-band__inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,0.9fr);align-items:center;gap:64px;position:relative;z-index:1;}
.contact-band h2{color:#fff;margin-bottom:12px;}
.contact-band p{color:rgba(255,255,255,0.75);max-width:480px;margin-top:14px;}
.contact-form{display:grid;gap:12px;padding:28px;border-radius:var(--r-xl);background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.12);backdrop-filter:blur(10px);}
.contact-form label{display:grid;gap:7px;}
.contact-form span{font-size:0.84rem;font-weight:500;color:rgba(255,255,255,0.8);}
.contact-form input{width:100%;height:50px;padding:0 16px;border:1px solid rgba(255,255,255,0.14);border-radius:var(--r-sm);color:#fff;background:rgba(255,255,255,0.07);transition:border-color .2s,background .2s;}
.contact-form input:focus{outline:none;border-color:var(--orange-soft);background:rgba(255,255,255,0.11);}
.contact-form input::placeholder{color:rgba(255,255,255,0.35);}
.site-footer{padding:28px 0 48px;border-top:1px solid var(--line);}
.site-footer__inner{display:grid;grid-template-columns:1fr auto;gap:24px;}
.brand--footer{margin-bottom:8px;}
.site-footer__tag{color:var(--ink-soft);font-size:0.9rem;margin:0;}
.site-footer__links{display:flex;gap:22px;}
.site-footer__links a{font-family:var(--font-head);font-size:0.78rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-soft);transition:color .2s;}
.site-footer__links a:hover{color:var(--orange);}
.sr{opacity:0;transform:translateY(28px);transition:opacity 0.75s var(--ease-out),transform 0.75s var(--ease-out);}
.sr.sr--left{transform:translateX(-28px);}
.sr.sr--right{transform:translateX(28px);}
.sr.sr--scale{transform:scale(0.94);}
.sr.in{opacity:1;transform:none;}
@media(max-width:1060px){
  .hero__grid,.platform-grid,.contact-band__inner,.section-heading--split,.site-footer__inner,.pain-grid{grid-template-columns:1fr;}
  .hero__visual{min-height:auto;}
  .dashboard-card--primary{min-height:480px;}
  .floating-panel{position:static;max-width:none;margin-top:14px;}
  .floating-panel--left,.floating-panel--right{animation:none;}
  .offerings-grid{grid-template-columns:repeat(3,1fr);}
  .solution-grid,.insight-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:720px){
  .site-header__inner{grid-template-columns:1fr;justify-items:start;gap:12px;display:flex; flex-direction: row;justify-content: space-between;}
  .button--small{display:none;}
  .hero h1{font-size:clamp(2.4rem,11vw,3.6rem);}
  .offerings-grid,.solution-grid,.insight-grid,.hero__stats{grid-template-columns:1fr;}
  .dashboard-card__legend{grid-template-columns:1fr;}
  .belief-centre{padding:40px 24px;flex-direction:column;text-align:center;}
  .section{padding:72px 0;}
  .contact-band__inner{gap:40px;}
  .hero__stats{margin-top:30px;}
}

/* ── WHY TRIO ──────────────────────────────────────────────── */
.why-trio {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 1px;
  background: var(--line);
  border: 1px solid var(--line);
  border-radius: var(--r-xl);
  overflow: hidden;
  margin-top: 48px;
}
.why-trio__card {
  background: var(--bg-soft);
  padding: 36px 32px;
  display: flex; flex-direction: column; gap: 0;
}
.why-trio__card--dark {
  background: var(--green);
}
.why-trio__top {
  display: flex; align-items: flex-start; justify-content: space-between;
  margin-bottom: 24px;
}
.why-trio__num {
  font-family: var(--font-head); font-size: 11px; font-weight: 700;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--ink-soft); opacity: 0.5;
}
.why-trio__card--dark .why-trio__num { color: rgba(255,245,234,0.35); opacity: 1; }
.why-trio__icon {
  width: 44px; height: 44px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.why-trio__icon svg {
  width: 20px; height: 20px; fill: none;
  stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round;
}
.why-trio__icon--green { background: rgba(31,53,34,0.10); }
.why-trio__icon--green svg { stroke: var(--green); }
.why-trio__icon--orange { background: rgba(212,123,15,0.20); }
.why-trio__icon--orange svg { stroke: var(--orange-soft); }
.why-trio__icon--amber { background: rgba(212,123,15,0.12); }
.why-trio__icon--amber svg { stroke: var(--orange); }
.why-trio__card h3 {
  font-family: var(--font-head); font-size: 1.05rem; font-weight: 700;
  letter-spacing: -0.02em; margin: 0 0 12px; color: var(--ink);
}
.why-trio__card--dark h3 { color: var(--cream); }
.why-trio__card p {
  font-family: var(--font-body); font-size: 0.92rem;
  line-height: 1.7; color: var(--ink-soft); margin: 0; flex: 1;
}
.why-trio__card--dark p { color: rgba(255,245,234,0.62); }

/* Tags (card 1) */
.why-trio__tags {
  display: flex; flex-wrap: wrap; gap: 6px; margin-top: 24px;
}
.why-trio__tags span {
  font-family: var(--font-head); font-size: 11px; font-weight: 700;
  padding: 4px 10px; border-radius: 999px;
  background: rgba(31,53,34,0.07); color: var(--green);
}

/* Flow steps (card 2) */
.why-trio__flow {
  display: flex; align-items: center; flex-wrap: wrap;
  gap: 4px; margin-top: 24px;
}
.why-trio__flow span {
  font-family: var(--font-head); font-size: 10px; font-weight: 700;
  padding: 3px 8px; border-radius: 4px; letter-spacing: 0.05em;
  background: rgba(255,245,234,0.08); color: rgba(255,245,234,0.5);
}
.why-trio__flow-hi {
  background: rgba(212,123,15,0.25) !important;
  color: var(--orange-soft) !important;
}
.why-trio__arrow { background: none !important; color: rgba(212,123,15,0.5) !important; padding: 0 !important; }

/* Progress bar (card 3) */
.why-trio__bar { margin-top: 24px; }
.why-trio__bar-labels {
  display: flex; justify-content: space-between; margin-bottom: 6px;
  font-family: var(--font-head); font-size: 11px; font-weight: 600;
  color: var(--ink-soft);
}
.why-trio__bar-labels span:last-child { color: var(--orange); }
.why-trio__bar-track {
  height: 4px; border-radius: 2px; background: var(--line); overflow: hidden;
}
.why-trio__bar-fill {
  height: 100%; width: 92%; border-radius: 2px;
  background: linear-gradient(90deg, var(--orange), #bf6e0b);
}
.why-trio__bar-track + .why-trio__bar-labels { margin-top: 6px; margin-bottom: 0; }
.why-trio__bar-track + .why-trio__bar-labels span { color: var(--ink-soft); opacity: 0.6; font-size: 10px; font-weight: 500; }

/* Responsive */
@media (max-width: 860px) { .why-trio { grid-template-columns: 1fr; } }

/* ── LUCIDITY FEATURE BARS ─────────────────────────────── */
.lucidity-bars {
  background: rgba(255,255,255,0.78);
  border: 1px solid var(--line);
  border-radius: var(--r-xl);
  overflow: hidden;
  box-shadow: var(--shadow);
}
.lucidity-bars__header {
  display: flex; align-items: center; justify-content: space-between;
  padding: 16px 22px;
  border-bottom: 1px solid var(--line);
  font-family: var(--font-head); font-size: 0.72rem; font-weight: 700;
  letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-soft);
}
.lucidity-bars__count {
  font-size: 11px; font-weight: 600; letter-spacing: 0.06em;
  padding: 3px 10px; border-radius: 999px;
  background: rgba(31,53,34,0.06); color: var(--ink-soft);
}
.lucidity-bar-row {
  display: grid; grid-template-columns: 48px 1fr;
  border-bottom: 1px solid var(--line);
  transition: background .2s;
}
.lucidity-bar-row--last { border-bottom: none; }
.lucidity-bar-row:hover { background: rgba(212,123,15,0.03); }
.lucidity-bar-icon {
  display: flex; align-items: center; justify-content: center;
  border-right: 1px solid var(--line);
  padding: 20px 0;
}
.lucidity-bar-icon svg {
  width: 18px; height: 18px; fill: none;
  stroke: var(--ink-soft); stroke-width: 1.8;
  stroke-linecap: round; stroke-linejoin: round;
  opacity: 0.55; transition: stroke .2s, opacity .2s;
}
.lucidity-bar-row:hover .lucidity-bar-icon svg { stroke: var(--orange); opacity: 1; }
.lucidity-bar-cell {
  padding: 18px 20px;
  border-right: 1px solid var(--line);
}
.lucidity-bar-cell:last-child { border-right: none; }
.lucidity-bar-cell strong {
  display: block; font-family: var(--font-head);
  font-size: 0.82rem; font-weight: 700; letter-spacing: -0.01em;
  color: var(--ink); margin-bottom: 5px;
}
.lucidity-bar-cell p {
  font-family: var(--font-body); font-size: 0.8rem;
  line-height: 1.6; color: var(--ink-soft); margin: 0;
}

/* ── PRODUCTS HERO ───────────────────────────────────────── */
.products-hero {
  padding: 80px 0 0;
  position: relative; overflow: hidden;
}
.products-hero::before {
  content: ''; position: absolute;
  top: -60px; right: -100px;
  width: 560px; height: 560px; border-radius: 50%;
  background: radial-gradient(circle, rgba(212,123,15,0.10), transparent 70%);
  pointer-events: none;
}
.products-hero::after {
  content: ''; position: absolute;
  bottom: 0; left: -80px;
  width: 400px; height: 400px; border-radius: 50%;
  background: radial-gradient(circle, rgba(31,53,34,0.06), transparent 70%);
  pointer-events: none;
}
.products-hero__intro {
  text-align: center; max-width: 760px; margin: 0 auto 64px;
  position: relative; z-index: 1;
}
.products-hero__intro h1 {
  font-family: var(--font-head);
  font-size: clamp(2.6rem, 5.5vw, 5rem);
  font-weight: 800; line-height: 1.0;
  letter-spacing: -0.04em; margin: 0 0 20px;
  color: var(--ink);
}
.products-hero__intro h1 .accent { color: var(--orange); }
.products-hero__intro p {
  font-size: 1.08rem; line-height: 1.75;
  color: var(--ink-soft); max-width: 620px; margin: 0 auto 32px;
}
.products-hero__actions {
  display: flex; flex-wrap: wrap; gap: 12px; justify-content: center;
}

/* ── PRODUCT CARDS SPLIT ─────────────────────────────────── */
.product-split {
  display: grid; grid-template-columns: 1fr 1fr; gap: 20px;
  position: relative; z-index: 1; padding-bottom: 80px;
}
.product-panel {
  border-radius: var(--r-xl);
  padding: 40px;
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
  position: relative; overflow: hidden;
  transition: transform .35s var(--ease-out), box-shadow .35s;
}
.product-panel:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); }
.product-panel--srt {
  background: linear-gradient(160deg, rgba(255,255,255,0.97) 0%, rgba(247,241,230,0.90) 100%);
}
.product-panel--pcp {
  background: linear-gradient(160deg, rgba(31,53,34,0.96) 0%, rgba(22,41,24,0.98) 100%);
  color: #fff;
}
.product-panel__tag {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 6px 12px; border-radius: 999px;
  font-family: var(--font-head); font-size: 0.68rem; font-weight: 700;
  letter-spacing: 0.16em; text-transform: uppercase;
  margin-bottom: 28px;
}
.product-panel--srt .product-panel__tag {
  background: var(--orange-pale); color: var(--orange);
  border: 1px solid rgba(212,123,15,0.22);
}
.product-panel--pcp .product-panel__tag {
  background: rgba(255,255,255,0.10); color: rgba(255,255,255,0.85);
  border: 1px solid rgba(255,255,255,0.15);
}
.product-panel__tag::before {
  content: ''; width: 5px; height: 5px; border-radius: 50%; background: currentColor; flex-shrink: 0;
}

/* SVG diagram areas */
.product-panel__diagram {
  width: 100%; max-height: 220px; margin-bottom: 28px;
  border-radius: var(--r-lg); overflow: hidden;
  position: relative;
}


.product-panel h2 {
  font-family: var(--font-head);
  font-size: clamp(1.4rem, 2.2vw, 1.9rem);
  font-weight: 800; letter-spacing: -0.03em; line-height: 1.1;
  margin-bottom: 14px;
}
.product-panel--pcp h2 { color: #fff; }
.product-panel__sub {
  font-size: 0.95rem; line-height: 1.7; margin-bottom: 24px;
}
.product-panel--srt .product-panel__sub { color: var(--ink-soft); }
.product-panel--pcp .product-panel__sub { color: rgba(255,255,255,0.70); }

.product-bullets { list-style: none; display: flex; flex-direction: column; gap: 10px; }
.product-bullets li {
  display: flex; align-items: flex-start; gap: 10px;
  font-size: 0.9rem; line-height: 1.55;
}
.product-bullets li::before {
  content: ''; width: 6px; height: 6px; border-radius: 50%;
  margin-top: 6px; flex-shrink: 0;
}
.product-panel--srt .product-bullets li { color: var(--ink-soft); }
.product-panel--srt .product-bullets li::before { background: var(--orange); }
.product-panel--pcp .product-bullets li { color: rgba(255,255,255,0.72); }
.product-panel--pcp .product-bullets li::before { background: var(--orange-soft); }

/* corner accent shape */
.product-panel__corner {
  position: absolute; bottom: -40px; right: -40px;
  width: 160px; height: 160px; border-radius: 50%;
  pointer-events: none;
}
.product-panel--srt .product-panel__corner {
  background: radial-gradient(circle, rgba(212,123,15,0.10), transparent 70%);
}
.product-panel--pcp .product-panel__corner {
  background: radial-gradient(circle, rgba(255,255,255,0.06), transparent 70%);
}

/* ── SHARED INTRO BAND ───────────────────────────────────── */
.shared-band {
  padding: 80px 0;
  background: linear-gradient(180deg, rgba(31,53,34,0.03), transparent);
  border-top: 1px solid var(--line);
}
.shared-band__inner {
  display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: 64px; align-items: center;
}
.shared-band__copy h2 {
  font-family: var(--font-head);
  font-size: clamp(1.8rem, 3vw, 3rem);
  font-weight: 800; letter-spacing: -0.04em; line-height: 1.1;
  margin-bottom: 16px;
}
.shared-band__copy p { color: var(--ink-soft); font-size: 1rem; line-height: 1.75; }
.shared-stats {
  display: grid; grid-template-columns: 1fr 1fr; gap: 14px;
}
.shared-stat {
  padding: 22px 20px; border-radius: var(--r-lg);
  background: rgba(255,255,255,0.78);
  border: 1px solid var(--line); box-shadow: var(--shadow-sm);
  transition: transform .25s var(--ease-out);
}
.shared-stat:hover { transform: translateY(-3px);background: linear-gradient(135deg, var(--orange) 0%, #e8952a 100%);
  border-color: transparent; }
.shared-stat__value {
  font-family: var(--font-head); font-size: 1.6rem; font-weight: 800;
  letter-spacing: -0.04em; color: var(--green); display: block; margin-bottom: 6px;
}
.shared-stat__label { font-size: 0.86rem; color: var(--ink-soft); line-height: 1.4; }
.shared-stat--accent {
  background: linear-gradient(135deg, var(--orange) 0%, #e8952a 100%);
  border-color: transparent;
}
.shared-stat--accent .shared-stat__value,
.shared-stat--accent .shared-stat__label { color: #fff; }

/* ── DELIVERY MODEL ──────────────────────────────────────── */
.delivery-section { padding: 100px 0; }
.delivery-grid {
  display: grid; grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 16px; margin-top: 48px;
}
.delivery-card {
  background: rgba(255,255,255,0.78);
  border: 1px solid var(--line);
  border-radius: var(--r-xl); padding: 32px 24px;
  box-shadow: var(--shadow-sm);
  transition: transform .3s var(--ease-out), box-shadow .3s;
  position: relative; overflow: hidden;
}
.delivery-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); }
.delivery-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: var(--orange);
  transform: scaleX(0); transform-origin: left;
  transition: transform .4s var(--ease-out);
}
.delivery-card:hover::before { transform: scaleX(1); }
.delivery-card__num {
  font-family: var(--font-head); font-size: 0.68rem; font-weight: 700;
  letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--orange); margin-bottom: 20px; display: block;
}
.delivery-card__icon {
  width: 52px; height: 52px; border-radius: 16px;
  background: rgba(31,53,34,0.06);
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 18px;
  transition: background .25s;
}
.delivery-card:hover .delivery-card__icon { background: var(--orange-pale); }
.delivery-card__icon svg {
  width: 22px; height: 22px; stroke: var(--green); stroke-width: 1.7;
  fill: none; stroke-linecap: round; stroke-linejoin: round;
  transition: stroke .25s;
}
.delivery-card:hover .delivery-card__icon svg { stroke: var(--orange); }
.delivery-card h3 {
  font-family: var(--font-head); font-size: 1rem; font-weight: 700;
  letter-spacing: -0.02em; margin-bottom: 12px;
}
.delivery-card p { font-size: 0.9rem; color: var(--ink-soft); line-height: 1.65; }

/* ── DETAIL DEEP-DIVES (alternating) ─────────────────────── */
.product-detail { padding: 80px 0; }
.product-detail__grid {
  display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: 64px; align-items: center;
}
.product-detail__grid--flip { direction: rtl; }
.product-detail__grid--flip > * { direction: ltr; }
.product-detail__copy h2 {
  font-family: var(--font-head);
  font-size: clamp(1.7rem, 2.8vw, 2.6rem);
  font-weight: 800; letter-spacing: -0.04em; line-height: 1.1;
  margin-bottom: 16px;
}
.product-detail__copy p {
  font-size: 0.97rem; color: var(--ink-soft); line-height: 1.8; margin-bottom: 16px;
}
.product-detail__copy p:last-of-type { margin-bottom: 0; }
.detail-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
.detail-chip {
  padding: 7px 14px; border-radius: 999px;
  border: 1px solid rgba(31,53,34,0.14);
  background: rgba(255,255,255,0.7);
  font-family: var(--font-head); font-size: 0.6rem; font-weight: 600;
  letter-spacing: 0.06em; text-transform: uppercase;
  color: var(--green);
  transition: background .2s, border-color .2s, color .2s;
}
.detail-chip:hover { background: var(--orange-pale); border-color: rgba(212,123,15,0.3); color: var(--orange); }

/* Visual diagram panels */
.product-detail__visual {
  border-radius: var(--r-xl); overflow: hidden;

  height: 380px; position: relative;

}


/* SRT diagram */
.srt-diagram {
  width: 100%; height: 100%; min-height: 380px;
  padding: 28px;
  display: flex; flex-direction: column; gap: 12px;
  background: linear-gradient(160deg, rgba(255,255,255,0.97), rgba(247,241,230,0.85));
}
.srt-diagram__title {
  font-family: var(--font-head); font-size: 0.72rem; font-weight: 700;
  letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-soft);
  margin-bottom: 4px;
}
.tranche-row {
  display: flex; gap: 10px; align-items: center;
}
.tranche-label {
  font-family: var(--font-head); font-size: 0.74rem; font-weight: 700;
  letter-spacing: 0.06em; text-transform: uppercase;
  width: 80px; flex-shrink: 0; color: var(--ink-soft);
}
.tranche-bar {
  height: 42px; border-radius: 10px;
  display: flex; align-items: center; padding: 0 14px;
  font-family: var(--font-head); font-size: 0.8rem; font-weight: 700;
  transition: transform .25s var(--ease-out);
}
.tranche-bar:hover { transform: scaleX(1.02); transform-origin: left; }
.tranche-bar--senior { background: rgba(31,53,34,0.10); color: var(--green); width: 65%; }
.tranche-bar--mezz   { background: var(--orange-pale); color: var(--orange); width: 22%; border: 1px solid rgba(212,123,15,0.25); }
.tranche-bar--first  { background: linear-gradient(90deg, var(--orange), #e8952a); color: #fff; width: 13%; }
.srt-flow {
  margin-top: 8px; padding: 14px 16px; border-radius: var(--r-md);
  background: rgba(31,53,34,0.04); border: 1px solid var(--line);
  display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
}
.srt-flow__step {
  font-family: var(--font-head); font-size: 0.72rem; font-weight: 700;
  letter-spacing: 0.04em; text-transform: uppercase; color: var(--ink-soft);
  padding: 5px 10px; border-radius: 6px;
  background: rgba(255,255,255,0.7);
  border: 1px solid var(--line);
}
.srt-flow__arrow {
  color: var(--orange); font-weight: 700; font-size: 0.9rem;
}

/* PCP diagram */
.pcp-diagram {
  width: 100%; min-height: 380px; padding: 28px;
  background: linear-gradient(160deg, rgba(31,53,34,0.97), rgba(22,41,24,0.99));
  display: flex; flex-direction: column; gap: 14px;
}
.pcp-diagram__title {
  font-family: var(--font-head); font-size: 0.72rem; font-weight: 700;
  letter-spacing: 0.12em; text-transform: uppercase; color: rgba(255,255,255,0.45);
  margin-bottom: 4px;
}
.pcp-structure-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 10px; flex: 1;
}
.pcp-block {
  border-radius: var(--r-md); padding: 16px;
  display: flex; flex-direction: column; gap: 6px;
  transition: transform .25s var(--ease-out);
}
.pcp-block:hover { transform: translateY(-2px); }
.pcp-block--a { background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.10); }
.pcp-block--b { background: rgba(212,123,15,0.15); border: 1px solid rgba(212,123,15,0.25); }
.pcp-block--c { background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.08); grid-column: 1 / -1; }
.pcp-block__label {
  font-family: var(--font-head); font-size: 0.68rem; font-weight: 700;
  letter-spacing: 0.12em; text-transform: uppercase;
}
.pcp-block--a .pcp-block__label { color: rgba(255,255,255,0.45); }
.pcp-block--b .pcp-block__label { color: var(--orange-soft); }
.pcp-block--c .pcp-block__label { color: rgba(255,255,255,0.40); }
.pcp-block__value {
  font-family: var(--font-head); font-size: 1.05rem; font-weight: 800;
  letter-spacing: -0.02em;
}
.pcp-block--a .pcp-block__value { color: rgba(255,255,255,0.85); }
.pcp-block--b .pcp-block__value { color: #fff; }
.pcp-block--c .pcp-block__value { color: rgba(255,255,255,0.75); font-size: 0.88rem; font-weight: 600; }
.pcp-bar-row { display: flex; gap: 6px; align-items: stretch; height: 36px; }
.pcp-bar-seg {
  border-radius: 8px; display: flex; align-items: center; justify-content: center;
  font-family: var(--font-head); font-size: 0.65rem; font-weight: 700;
  letter-spacing: 0.06em; text-transform: uppercase;
}
.pcp-bar-seg--a { background: rgba(255,255,255,0.12); color: rgba(255,255,255,0.6); flex: 3; }
.pcp-bar-seg--b { background: var(--orange); color: #fff; flex: 2; }
.pcp-bar-seg--c { background: rgba(255,255,255,0.06); color: rgba(255,255,255,0.4); flex: 1; }

/* ── BELIEF BAR (products variant) ──────────────────────── */
.products-belief {
  background: var(--green);
  padding: 56px 0;
  position: relative; overflow: hidden;
}
.products-belief::before {
  content: ''; position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
  background-size: 48px 48px;
}
.products-belief__inner {
  display: flex; align-items: center; ;
  gap: 20px; position: relative; z-index: 1;
      justify-content: center;
}
.products-belief__quote {
  font-family: var(--font-head);
font-size:clamp(14px,1.6vw,22px);
  font-weight: 600; line-height: 1.55;
  color: rgba(255,255,255,0.88); max-width: 700px;
}
.products-belief__quote em { color: var(--orange-soft); font-style: italic; font-weight: 700; }
.products-belief__cta { flex-shrink: 0; }

/* ── RESPONSIVE (products-specific) ─────────────────────── */
@media (max-width: 1060px) {
  .product-split { grid-template-columns: 1fr; }
  .shared-band__inner { grid-template-columns: 1fr; gap: 40px; }
  .delivery-grid { grid-template-columns: 1fr 1fr; }
  .product-detail__grid,
  .product-detail__grid--flip { grid-template-columns: 1fr; direction: ltr; gap: 40px; }
  .products-belief__inner { flex-direction: column; text-align: center; }
}
@media (max-width: 720px) {
  .delivery-grid { grid-template-columns: 1fr; }
  .shared-stats { grid-template-columns: 1fr; }
  .pcp-structure-grid { grid-template-columns: 1fr; }
  .pcp-block--c { grid-column: 1; }
  .products-hero__intro h1 { font-size: clamp(2.2rem, 10vw, 3.2rem); }
  .product-detail__visual {height: 250px}
}
.platform-feat {
  display: grid; grid-template-columns: auto 1fr; gap: 12px; align-items: start;
  padding: 14px 16px; border-radius: var(--r-md);
  background: rgba(31,53,34,0.04); border: 1px solid var(--line);
  transition: background .2s, transform .2s var(--ease-out), border-color .2s;
}
.platform-feat:hover { background: rgba(31,53,34,0.07); transform: translateY(-2px); }
.platform-feat--accent {
  background: linear-gradient(135deg, rgba(212,123,15,0.12), rgba(212,123,15,0.06));
  border-color: rgba(212,123,15,0.22);
}
.platform-feat--accent:hover { background: linear-gradient(135deg, rgba(212,123,15,0.18), rgba(212,123,15,0.10)); border-color: rgba(212,123,15,0.35); }
.platform-feat__icon {
  width: 36px; height: 36px; border-radius: 10px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  background: rgba(255,255,255,0.70); border: 1px solid var(--line);
  transition: background .2s;
}
.platform-feat:hover .platform-feat__icon { background: #fff; }
.platform-feat__icon--accent { background: rgba(212,123,15,0.12); border-color: rgba(212,123,15,0.22); }
.platform-feat--accent:hover .platform-feat__icon--accent { background: rgba(212,123,15,0.20); }
.platform-feat__icon svg {
  width: 16px; height: 16px; stroke: var(--green); stroke-width: 1.8;
  fill: none; stroke-linecap: round; stroke-linejoin: round;
}
.platform-feat__icon--accent svg { stroke: var(--orange); }
.platform-feat__title {
  display: block; font-family: var(--font-head); font-size: 0.82rem;
  font-weight: 700; letter-spacing: -0.01em; color: var(--green);
  margin-bottom: 3px;
}
.platform-feat__title--accent { color: var(--orange); }
.platform-feat__desc { font-size: 0.78rem; color: var(--ink-soft); line-height: 1.5; margin: 0; }
.platform-feat__desc--accent { color: rgba(212,123,15,0.75); }

/* ── LUCIDITY PLATFORM HOME (compact) ───────────────────── */
.platform-home-header {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: start;
  gap: 40px;
  margin-bottom: 48px;
}
@media (max-width: 720px) {
  .platform-home-header { grid-template-columns: 1fr; }
}

.lucidity-tiles {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
}
@media (max-width: 1060px) {
  .lucidity-tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .lucidity-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .product-panel__diagram {
    min-height:100px;
}}

.lucidity-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  text-align: center;
  padding: 24px 16px;
  border-radius: var(--r-xl);
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid var(--line);
  box-shadow: var(--shadow-sm);
  transition: transform .3s var(--ease-out), box-shadow .3s, background .2s, border-color .2s;
  cursor: default;
}
.lucidity-tile:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow);
  background: rgba(255, 255, 255, 0.96);
  border-color: rgba(212, 123, 15, 0.22);
}
.lucidity-tile__icon {
  width: 48px; height: 48px;
  border-radius: 14px;
  background: rgba(31, 53, 34, 0.05);
  border: 1px solid var(--line);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  transition: background .25s, border-color .25s;
}
.lucidity-tile:hover .lucidity-tile__icon {
  background: var(--orange-pale);
  border-color: rgba(212, 123, 15, 0.28);
}
.lucidity-tile__icon svg {
  width: 20px; height: 20px;
  stroke: var(--green); stroke-width: 1.8;
  fill: none; stroke-linecap: round; stroke-linejoin: round;
  transition: stroke .25s;
}
.lucidity-tile:hover .lucidity-tile__icon svg { stroke: var(--orange); }
.lucidity-tile__title {
  font-family: var(--font-head);
  font-size: 11px; font-weight: 700;
  letter-spacing: 0.02em; line-height: 1.4;
  color: var(--ink);
}
/* ── LUCIDITY PLATFORM HOME (compact) ───────────────────── */
.platform-home-header {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: start;
  gap: 40px;
  margin-bottom: 48px;
}
@media (max-width: 720px) {
  .platform-home-header { grid-template-columns: 1fr; }
}

.lucidity-tiles {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
}
@media (max-width: 1060px) {
  .lucidity-tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .lucidity-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.lucidity-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  text-align: center;
  padding: 24px 16px;
  border-radius: var(--r-xl);
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid var(--line);
  box-shadow: var(--shadow-sm);
  transition: transform .3s var(--ease-out), box-shadow .3s, background .2s, border-color .2s;
  cursor: default;
}
.lucidity-tile:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow);
  background: rgba(255, 255, 255, 0.96);
  border-color: rgba(212, 123, 15, 0.22);
}
.lucidity-tile__icon {
  width: 48px; height: 48px;
  border-radius: 14px;
  background: rgba(31, 53, 34, 0.05);
  border: 1px solid var(--line);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  transition: background .25s, border-color .25s;
}
.lucidity-tile:hover .lucidity-tile__icon {
  background: var(--orange-pale);
  border-color: rgba(212, 123, 15, 0.28);
}
.lucidity-tile__icon svg {
  width: 20px; height: 20px;
  stroke: var(--green); stroke-width: 1.8;
  fill: none; stroke-linecap: round; stroke-linejoin: round;
  transition: stroke .25s;
}
.lucidity-tile:hover .lucidity-tile__icon svg { stroke: var(--orange); }
.lucidity-tile__title {
  font-family: var(--font-head);
  font-size: 11px; font-weight: 700;
  letter-spacing: 0.02em; line-height: 1.4;
  color: var(--ink);
}

/* ── AMBITION GRID — 3-column with descriptions ──────────── */
.offerings-grid--3col {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 1060px) {
  .offerings-grid--3col { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .offerings-grid--3col { grid-template-columns: 1fr; }
}

/* Card variant with description text */
.offer-card--text {
  align-items: flex-start;
  text-align: left;
  padding: 28px 24px;
  gap: 12px;
}
.offer-card--text .offer-icon {
  width: 64px; height: 64px;
  margin-bottom: 4px;
}
.offer-card--text .offer-icon img {
  width: 64px; height: 64px;
}
.offer-card--text .offer-title {
  font-size: 14px;
  letter-spacing: 0;
  line-height: 1.35;
}
.offer-desc {
  font-family: var(--font-body);
  font-size: 0.88rem;
  font-weight: 400;
  line-height: 1.65;
  color: var(--ink-soft);
  margin: 0;
}

/* ── SITE FOOTER ─────────────────────────────────────────── */
.site-footer {
  padding: 56px 0 0;
  border-top: 1px solid var(--line);
  background: var(--bg-soft);
}
.site-footer__inner {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr 1fr;
  gap: 40px;
  padding-bottom: 30px;
}
.foot-col--brand { padding-right: 24px; }
.brand--footer { display: inline-flex; margin-bottom: 14px; }
.site-footer__tag {
  color: var(--ink-soft);
  font-size: 0.88rem;
  line-height: 1.6;
  margin: 0;
  max-width: 240px;
}
.foot-col__heading {
  font-family: var(--font-head);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink);
  margin: 0 0 16px;
}
.foot-links {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
}
.foot-links a {
  font-family: var(--font-body);
  font-size: 0.9rem;
  color: var(--ink-soft);
  text-decoration: none;
  transition: color .2s;
  line-height: 1.4;
}
.foot-links a:hover { color: var(--orange); }

/* Bottom bar */
.site-footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 20px 0 32px;
  border-top: 1px solid var(--line);
}
.site-footer__bottom-left {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.site-footer__text{
    font-family: var(--font-body);
  font-size: 0.88rem;
  color: var(--ink-soft);
}
.site-footer__copy,
.site-footer__address {
  font-family: var(--font-body);
  font-size: 0.8rem;
  color: var(--ink-soft);
  opacity: 0.7;
}

.offer-card {
  display: flex;
  flex-direction: column;
}

.offer-header {
  display: flex;
  align-items: center;
  gap: 12px;
}

.about-process {
  padding: 0 0 100px;
}
.process-flow {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 0;
  position: relative;
  margin-top: 56px;
}
/* connecting line behind steps */
.process-flow::before {
  content: '';
  position: absolute;
  top: 28px; left: 28px; right: 28px;
  height: 1px;
  background: linear-gradient(to right, transparent, var(--orange), var(--orange), transparent);
  z-index: 0;
}
.process-flow2 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 0;
  position: relative;
  margin-top: 56px;
}
/* connecting line behind steps */
.process-flow2::before {
  content: '';
  position: absolute;
  top: 28px; left: 28px; right: 28px;
  height: 1px;
  background: var(--orange);
  z-index: 0;
}
.process-step {
  padding: 0 20px 0 0;
  position: relative; z-index: 1;
  cursor: default;
}
.process-step__num {
  width: 56px; height: 56px; border-radius: 50%;
  background: #fff;
  border: 2px solid rgba(212,123,15,0.35);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--font-head); font-size: 0.8rem; font-weight: 800;
  color: var(--orange); margin-bottom: 20px;
  transition: background .25s, border-color .25s, transform .25s var(--ease-out);
}
.process-step:hover .process-step__num {
  background: var(--orange); border-color: var(--orange); color: #fff;
  transform: scale(1.08);
}
.process-step__title {
  font-family: var(--font-head); font-size: 0.95rem; font-weight: 700;
  letter-spacing: -0.01em; color: var(--ink);
  margin-bottom: 10px;
}
.process-step__desc {
  font-family: var(--font-body); font-size: 0.88rem;
  line-height: 1.65; color: var(--ink-soft);
}
.foot-linkedin {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 8px;
  color: var(--ink-soft);
  border: 1px solid var(--line);
  flex-shrink: 0;
  transition: color .2s, border-color .2s, background .2s;
}
.foot-linkedin:hover {
  color: var(--orange);
  border-color: var(--orange);
  background: var(--orange-pale);
}

/* Responsive */
@media (max-width: 900px) {
  .site-footer__inner {
    grid-template-columns: 1fr 1fr;
  }
  .foot-col--brand { grid-column: 1 / -1; padding-right: 0; }
}
@media (max-width: 560px) {
  .site-footer__inner { grid-template-columns: 1fr; }
  .site-footer__bottom { flex-direction: column; align-items: flex-start; gap: 16px; }
}
/* ── Burger button ── */
.nav-burger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 40px;
  height: 40px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 6px;
  z-index: 1001;
  flex-shrink: 0;
}

.nav-burger span {
  display: block;
  width: 24px;
  height: 2px;
  background: #fff5ea;
  border-radius: 2px;
  transition: transform 0.3s ease, opacity 0.3s ease;
  transform-origin: center;
}

.nav-burger.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.nav-burger.is-open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.nav-burger.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

@media (max-width: 768px) {
  .nav-burger {
    display: flex;
  }

  /* Hide desktop nav and CTA button on mobile */
  .site-nav,
  .site-header__inner > .button {
    display: none;
  }

  /* Slide-in drawer */
  .nav-drawer {
    display: flex;
    flex-direction: column;
    position: fixed;
    top: 0;
    right: 0;
    width: min(280px, 80vw);
    height: 100vh;
    background: #1F3522;
    padding: 80px 32px 40px;
    gap: 4px;
    transform: translateX(100%);
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1000;
    box-shadow: -8px 0 32px rgba(0,0,0,0.25);
  }

  .nav-drawer.is-open {
    transform: translateX(0);
  }

  .nav-drawer a {
    display: block;
    padding: 14px 0;
    font-family: var(--font-head);
    font-size: 17px;
    font-weight: 700;
    color: rgba(255,245,234,0.85);
    border-bottom: 1px solid rgba(255,245,234,0.08);
    letter-spacing: 0.02em;
    text-decoration: none;
  }

  .nav-drawer a:last-child {
    border-bottom: none;
  }

  .nav-drawer .button {
    display: block !important;
    margin-top: 20px;
    text-align: center;
    border-bottom: none !important;
    padding: 14px 20px !important;
  }

  /* Dim overlay */
  .nav-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: 999;
    backdrop-filter: blur(2px);
  }

  .nav-overlay.is-open {
    display: block;
  }
}

@media (max-width: 720px) {

  /* Hero fills exactly the viewport */
  .hero {
    padding: 0;
    min-height: 100svh;
    display: flex;
    flex-direction: column;
  }

  .hero__grid {
    display: flex;
    flex-direction: column;
    padding: 40px 0 0;
    gap: 0;
    flex: 1;
    justify-content: center;
  }

  /* ORDER: eyebrow → h1 → actions → scroll hint → lede → visual */
  .hero .eyebrow   { order: 1; }
  .hero h1         { order: 2; }
  .hero__actions   { order: 3; }
  .hero__lede      { order: 5; } /* pushed below fold */
  .hero__visual    { order: 6; margin-top: 48px; }

  /* Big title */
  .hero h1 {
    font-size: 4.2rem;
    line-height: 1.0;
    letter-spacing: -0.04em;
    margin-bottom: 32px;
  }

  /* Actions sit just below title */
  .hero__actions {
    margin-bottom: 0;
    flex-wrap: wrap;
    gap: 10px;
  }

  /* Scroll hint — between actions and lede */
.hero__scroll-hint {
    order: 4;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 40px;
    padding-bottom: 48px;
    width: 100%;
    animation: heroFadeUp 0.6s var(--ease-out) 0.5s both;
  }

  .hero__scroll-hint span {
    font-family: var(--font-head);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(31,53,34,0.38);
  }

  .hero__scroll-arrow {
    width: 18px;
    height: 18px;
    border-right: 2px solid rgba(212,123,15,0.6);
    border-bottom: 2px solid rgba(212,123,15,0.6);
    transform: rotate(45deg);
    animation: arrowBob 1.8s cubic-bezier(0.37,0,0.63,1) 1s infinite;
  }

  @keyframes arrowBob {
    0%, 100% { transform: rotate(45deg) translateY(0); }
    50%       { transform: rotate(45deg) translateX(6px) translateY(6px); }
  }

  /* Staggered entrance animations */
  @keyframes heroFadeUp {
    from { opacity: 0; transform: translateY(24px); }
    to   { opacity: 1; transform: translateY(0); }
  }

  .hero .eyebrow  { animation: heroFadeUp 0.55s var(--ease-out) 0.05s both; }
  .hero h1        { animation: heroFadeUp 0.70s var(--ease-out) 0.14s both; }
  .hero__actions  { animation: heroFadeUp 0.65s var(--ease-out) 0.26s both; }
  .hero__scroll-hint { animation: heroFadeUp 0.6s var(--ease-out) 0.5s both; }

  /* Lede and visual animate in on scroll as normal via .sr */
  .hero__lede   { margin-top: 48px; }
  .hero__visual { min-height: auto; }

  /* Stats — 2-col grid */
  .hero__stats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 24px;
  }
  .stat-card        { padding: 14px 16px; }
  .stat-card__value { font-size: 1.05rem; }
  .stat-card__label { font-size: 0.78rem; }
}

@media (max-width: 720px) {

  .process-flow2 {
    grid-template-columns: 1fr;
    gap: 0;
  }

  /* Replace horizontal line with vertical */
  .process-flow2::before {
    top: 28px;
    bottom: 28px;
    left: 27px;
    right: auto;
    width: 1px;
    height: auto;
    background: var(--orange);
  }

  .process-step {
    display: grid;
    grid-template-columns: 56px 1fr;
    grid-template-rows: auto auto;
    column-gap: 20px;
    row-gap: 6px;
    align-items: start;
    padding: 0 0 40px 0;
  }

  /* Icon stays in column 1, spans both rows */
  .process-step__num {
    grid-column: 1;
    grid-row: 1 / 3;
    margin-bottom: 0;
    align-self: start;
  }

  /* Title and desc in column 2 */
  .process-step__title {
    grid-column: 2;
    grid-row: 1;
    text-align: left;
    padding-top: 16px;
  }

  .process-step__desc {
    grid-column: 2;
    grid-row: 2;
    text-align: left !important;
  }

  /* No bottom padding on last step */
  .process-step:last-child {
    padding-bottom: 0;
  }
}


.nav-drawer,
.nav-overlay {
  display: none;
}

@media (max-width: 768px) {
  .nav-drawer {
    display: flex;
    flex-direction: column;
    position: fixed;
    top: 0;
    right: 0;
    width: min(280px, 80vw);
    height: 100vh;
    background: #1F3522;
    padding: 80px 32px 40px;
    gap: 4px;
    transform: translateX(100%);
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1000;
    box-shadow: -8px 0 32px rgba(0,0,0,0.25);
  }

  .nav-drawer.is-open {
    transform: translateX(0);
  }

  /* overlay stays hidden until triggered */
  .nav-overlay.is-open {
    display: block;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: 999;
    backdrop-filter: blur(2px);
  }
}
.hero__scroll-hint {
  display: none;
}

@media (max-width: 720px) {
  .hero__scroll-hint {
    display: flex;
  }
}