:root{
  --navy:#031b2b;
  --navy2:#062437;
  --navy3:#0a3047;
  --green:#39b321;
  --green-dark:#23940f;
  --lime:#75d53e;
  --text:#102437;
  --muted:#607080;
  --line:#dfe7ec;
  --soft:#f5f8f9;
  --soft-green:#f0f8ed;
  --white:#fff;
  --shadow:0 18px 45px rgba(9,35,55,.14);
  --radius:18px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:#fff;line-height:1.45}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:40;background:rgba(2,18,30,.96);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.06)}.nav-wrap{height:82px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:10px;color:white;min-width:205px}.brand-mark{width:42px;height:52px;display:grid;place-items:center;background:linear-gradient(180deg,#7adf38,#2ea718);clip-path:polygon(50% 0,88% 12%,100% 45%,84% 70%,50% 100%,16% 70%,0 45%,12% 12%);filter:drop-shadow(0 5px 10px rgba(0,0,0,.25))}.brand-headset{width:28px;height:28px;border:3px solid #071c2a;border-radius:50%;display:grid;place-items:center;color:#071c2a;font-size:11px;background:#c8f5ad}.brand-copy strong{display:block;font-size:13px;line-height:.9;letter-spacing:-.03em}.brand-copy strong span{color:#7be33a}.brand-copy small{font-size:5.5px;letter-spacing:.15em;color:#a8bac6}.main-nav{display:flex;gap:28px;align-items:center;margin-left:auto}.main-nav a{font-size:13px;font-weight:600;color:#fff;opacity:.88;position:relative;padding:31px 0 27px}.main-nav a:hover,.main-nav a.active{opacity:1}.main-nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:17px;height:2px;background:var(--green)}.nav-cta{margin-left:8px}.nav-toggle{display:none;background:none;border:0;color:#fff;font-size:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:6px;padding:12px 20px;font-weight:700;font-size:14px;transition:.2s ease;cursor:pointer}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(180deg,#45ba2a,#2e9e17);color:#fff;box-shadow:0 8px 18px rgba(48,168,26,.22)}.btn-outline-light{border:1px solid rgba(255,255,255,.7);color:#fff;background:transparent}.btn-outline-dark{border:1px solid #9baab5;background:#fff;color:#142b3d}.btn-lg{padding:15px 24px}.btn-sm{padding:9px 15px;font-size:12px}.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 55% 85%,rgba(10,70,98,.55),transparent 28%),linear-gradient(115deg,#021726 0%,#031d2e 56%,#062b40 100%);color:#fff;padding:28px 0 70px}.hero:after{content:"";position:absolute;left:-4%;right:-4%;bottom:-45px;height:90px;background:#fff;transform:rotate(4deg);transform-origin:center}.hero-grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(82,178,231,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(82,178,231,.05) 1px,transparent 1px);background-size:85px 85px;mask-image:linear-gradient(to bottom,transparent 8%,#000 45%,transparent 100%)}.hero-grid{min-height:500px;display:grid;grid-template-columns:.9fr 1.3fr;align-items:center;gap:45px;position:relative;z-index:2}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:800;color:#85d85b}.hero h1{font-size:46px;line-height:1.05;margin:10px 0 18px;letter-spacing:-.04em}.hero h1 span{color:#4abd2e}.hero-text{font-size:17px;color:#ecf5f8;max-width:560px}.hero-actions{display:flex;gap:16px;margin:28px 0 34px}.hero-note{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:#d5e2e8;max-width:580px}.hero-note span{width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:var(--green);font-size:11px}.laptop-wrap{perspective:900px;position:relative}.laptop-screen{background:#0d1621;border:6px solid #3a434b;border-radius:22px 22px 9px 9px;padding:10px;box-shadow:0 30px 70px rgba(0,0,0,.45);display:grid;grid-template-columns:95px 1fr;aspect-ratio:1.62;overflow:hidden}.laptop-camera{position:absolute;top:9px;left:50%;width:5px;height:5px;background:#111;border-radius:50%;z-index:3}.laptop-base{height:16px;background:linear-gradient(#59616a,#262c31);border-radius:2px 2px 18px 18px;margin:-1px -40px 0;box-shadow:0 15px 20px rgba(0,0,0,.25)}.mini-sidebar{background:#051c2c;color:#a8bac7;padding:10px 7px;display:flex;flex-direction:column;gap:6px;font-size:8px}.mini-sidebar a{padding:6px 7px;border-radius:4px}.mini-sidebar a.selected{background:#42b928;color:#fff}.mini-logo{color:#8ee45f;font-weight:800;font-size:11px;margin-bottom:4px}.mini-main{background:#eef1f3;padding:7px;overflow:hidden}.mini-topbar{height:26px;background:#fff;border-radius:5px;display:flex;justify-content:space-between;align-items:center;padding:0 8px;color:#52606b;font-size:8px;margin-bottom:8px}.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.stat{background:#fff;border-radius:6px;padding:7px;box-shadow:0 2px 6px rgba(0,0,0,.08)}.stat small{display:block;font-size:7px}.stat strong{display:block;font-size:17px}.stat em{font-size:5.5px;color:#7c8d98;font-style:normal}.green{color:#28a716}.blue{color:#308bdf}.orange{color:#e7912e}.red{color:#d94b4b}.dashboard-grid{display:grid;grid-template-columns:1.45fr .85fr;gap:7px;margin-top:7px;height:calc(100% - 77px)}.card-ui{background:#fff;border-radius:6px;padding:8px;color:#45525d}.card-title{display:flex;justify-content:space-between;font-size:8px;font-weight:700;margin-bottom:5px}.job-row{display:grid;grid-template-columns:.55fr 1fr .9fr .7fr .55fr;gap:4px;align-items:center;border-top:1px solid #eef1f2;padding:5px 0;font-size:5.7px}.job-row b{font-weight:500}.pill{font-style:normal;border-radius:7px;padding:2px 4px;text-align:center;font-size:5px}.green-pill{background:#def1d7;color:#2f8d25}.blue-pill{background:#d9ebf9;color:#317bb5}.amber-pill{background:#fff0cf;color:#a97615}.fake-map{position:relative;height:92%;overflow:hidden;background:linear-gradient(45deg,#f8fbfc,#edf1f3);border:1px solid #e7ebee}.road{position:absolute;background:#fff;border:1px solid #d8e1e6;height:10px;width:150%;transform-origin:left center}.r1{top:20%;left:-15%;transform:rotate(13deg)}.r2{top:56%;left:-10%;transform:rotate(-18deg)}.r3{top:10%;left:46%;transform:rotate(90deg)}.r4{top:70%;left:30%;transform:rotate(66deg)}.pin{position:absolute;font-size:15px;text-shadow:0 2px 3px rgba(0,0,0,.2)}.p1{left:25%;top:45%;color:#ef9b27}.p2{left:62%;top:22%;color:#2aa14f}.p3{left:70%;top:67%;color:#398ad6}.p4{left:42%;top:61%;color:#d64545}.section{padding:62px 0}.section-white{background:#fff}.section-title{text-align:center;font-size:27px;letter-spacing:-.025em;margin:0 0 26px}.industry-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.industry-card{border:1px solid var(--line);border-radius:18px;min-height:156px;display:grid;place-items:center;align-content:center;text-align:center;gap:10px;padding:18px 12px;box-shadow:0 7px 18px rgba(26,62,84,.04);background:#fff}.industry-card h3{font-size:13px;margin:0;line-height:1.35}.industry-icon{width:72px;height:72px;object-fit:contain;display:block;filter:drop-shadow(0 10px 16px rgba(10,38,54,.12))}.center-note{text-align:center;font-size:13px;margin:14px 0 0}.compare-section{background:linear-gradient(90deg,#fff 0,#f5f8f9 33%,#eef7ec 67%,#fff 100%);padding:36px 0}.compare-grid{display:grid;grid-template-columns:1fr 58px 1fr 150px;gap:22px;align-items:center}.compare-col{padding:20px}.compare-col h2{font-size:23px;line-height:1.2}.compare-col ul,.demo-copy ul{padding:0;list-style:none;margin:20px 0 0}.compare-col li,.demo-copy li{position:relative;padding:5px 0 5px 27px;font-size:13px}.problem li:before{content:"×";position:absolute;left:0;top:4px;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;border:2px solid #ff4242;color:#ff4242;font-weight:800;font-size:11px}.solution{background:rgba(212,237,203,.34);border-radius:20px}.solution li:before,.demo-copy li:before{content:"✓";position:absolute;left:0;top:5px;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;background:#34ae25;color:#fff;font-size:10px;font-weight:800}.compare-arrow{width:44px;height:44px;border-radius:50%;background:#072438;color:#fff;display:grid;place-items:center;font-size:24px}.process-flow{display:flex;flex-direction:column;align-items:center;gap:5px;color:#092a3d}.process-flow div{display:flex;align-items:center;gap:9px;font-size:22px}.process-flow div span{font-size:12px;font-weight:700;min-width:58px}.process-flow b{color:#4aaa2d}.feature-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.feature-card{border:1px solid var(--line);border-radius:18px;padding:20px 14px;text-align:center;min-height:200px;box-shadow:0 8px 20px rgba(14,46,67,.04)}.feature-card span{font-size:31px}.feature-card h3{font-size:13px;margin:13px 0 8px}.feature-card p{font-size:11px;color:#546675;margin:0}.how-section{background:linear-gradient(105deg,#031b2b,#063049);color:#fff;padding:34px 0}.how-section h2{text-align:center;margin:0 0 30px}.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.steps-grid article{text-align:center;position:relative}.steps-grid article:not(:last-child):after{content:"";position:absolute;right:-28px;top:21px;width:56px;border-top:1px dashed #72d455}.step-no{position:absolute;left:18px;top:0;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#46b82b;font-weight:800}.step-icon{font-size:36px;height:48px}.steps-grid h3{font-size:13px;margin:10px 0 6px}.steps-grid p{font-size:11px;color:#dce7ec;margin:0 auto;max-width:220px}.tab-row{display:flex;justify-content:center;gap:5px;margin-bottom:12px;flex-wrap:wrap}.tab{border:0;background:#f1f4f6;padding:9px 18px;border-radius:12px;color:#70808c;font-size:11px;cursor:pointer}.tab.active{background:#e3f3de;color:#339b1f}.demo-grid{display:grid;grid-template-columns:1.5fr .75fr;gap:36px;align-items:center}.demo-preview{min-height:310px;border:1px solid #d9e1e7;border-radius:16px;background:#f3f5f6;box-shadow:var(--shadow);display:grid;grid-template-columns:88px 1fr;overflow:hidden}.demo-sidebar{background:#062337;color:#b6c4cd;padding:15px 10px;display:flex;flex-direction:column;gap:14px;font-size:9px}.demo-sidebar strong{color:#83df50;margin-bottom:5px}.demo-sidebar span:first-of-type{background:#38ac24;color:#fff;margin:-5px;padding:9px;border-radius:5px}.demo-content{padding:14px}.demo-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.demo-stats div{background:#fff;border-radius:8px;padding:12px;box-shadow:0 3px 8px rgba(0,0,0,.06)}.demo-stats small{display:block;font-size:8px}.demo-stats b{font-size:22px;color:#2cae20}.demo-table{background:#fff;border-radius:8px;margin-top:10px;padding:8px}.demo-table div{display:grid;grid-template-columns:1.2fr 1fr .8fr .6fr;padding:10px 7px;border-bottom:1px solid #edf1f3;font-size:9px}.demo-copy h3{font-size:24px;line-height:1.2}.benefit-strip{margin-top:28px;border:1px solid #e1e8ec;border-radius:18px;background:#f8faf9;display:grid;grid-template-columns:repeat(7,1fr);padding:14px}.benefit-strip div{text-align:center;border-right:1px solid #dce3e5;padding:8px;font-size:22px}.benefit-strip div:last-child{border-right:0}.benefit-strip span{display:block;font-size:10px;font-weight:700;margin-top:5px}.pricing-section{background:#f8faf9}.pricing-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1.45fr;gap:18px}.price-card,.price-help{background:#fff;border:1px solid #dde5e9;border-radius:18px;min-height:190px;padding:28px;text-align:center;position:relative;box-shadow:0 8px 22px rgba(15,53,74,.05)}.price-card h3{font-size:20px;margin:4px 0 10px}.price-card p,.price-help p{font-size:12px;color:#586a78}.featured{border-top:8px solid #39ad25;padding-top:20px}.popular{position:absolute;top:-8px;left:0;right:0;background:#39ad25;color:#fff;font-size:9px;padding:4px;border-radius:14px 14px 0 0}.price-help{background:linear-gradient(120deg,#f0f7ef,#fff);display:flex;align-items:center;text-align:left;gap:18px}.help-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#e6f4e0;font-size:26px}.price-help strong{font-size:13px}.trust-strip{background:linear-gradient(110deg,#032032,#05293d);color:#fff;padding:30px 0}.trust-grid{display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:28px;align-items:center}.trust-grid>div{display:flex;gap:12px;align-items:center}.trust-grid>div>span{font-size:30px;color:#66d63e}.trust-grid strong{font-size:13px}.trust-grid p{font-size:10px;color:#d3e0e6;margin:4px 0}.quote-mark{font-size:42px!important}.faq-layout{display:grid;grid-template-columns:.7fr 1.8fr .8fr;gap:25px;align-items:start}.faq-title-col h2{font-size:25px}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.faq-grid details{border:1px solid #e0e6e9;border-radius:10px;background:#fff;padding:0 14px}.faq-grid summary{list-style:none;cursor:pointer;font-size:11px;font-weight:600;padding:15px 0;position:relative}.faq-grid summary::-webkit-details-marker{display:none}.faq-grid summary:after{content:"+";position:absolute;right:0}.faq-grid details[open] summary:after{content:"−"}.faq-grid p{font-size:10px;color:#5f707d;margin:0 0 14px}.final-cta{background:linear-gradient(150deg,#0a2d42,#021827);color:#fff;border-radius:18px;padding:24px}.final-cta h3{font-size:20px;line-height:1.1}.final-cta p{font-size:11px;color:#d7e1e6}.contact-section{background:#eef5ef;padding:68px 0}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:54px;align-items:start}.contact-grid h2{font-size:36px;line-height:1.08;margin:10px 0}.contact-grid>div>p:last-child{color:#5f706d}.contact-form{background:#fff;border:1px solid #dce5df;border-radius:18px;padding:24px;display:grid;grid-template-columns:1fr 1fr;gap:16px;box-shadow:0 15px 35px rgba(32,75,50,.08)}.contact-form label{font-size:11px;font-weight:700;color:#4d5c66}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;margin-top:6px;border:1px solid #ccd7dd;border-radius:8px;padding:11px 12px;outline:none}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#46ae2f;box-shadow:0 0 0 3px rgba(70,174,47,.12)}.full{grid-column:1/-1}.form-status{font-size:12px;margin:0;color:#287e1e}.site-footer{background:#031c2d;color:#d5e0e6;padding:34px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:35px}.footer-grid h4{color:#fff;font-size:11px;margin:0 0 12px}.footer-grid a,.footer-grid p{display:block;font-size:9px;color:#b9c7cf;margin:5px 0}.footer-brand .brand{min-width:0}.socials{display:flex;gap:8px;margin-top:12px}.socials span{width:24px;height:24px;border-radius:50%;background:#0b3047;display:grid;place-items:center;font-size:10px}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:25px;padding-top:15px;font-size:8px;color:#8fa2ae}
@media(max-width:1050px){.main-nav{gap:16px}.main-nav a{font-size:11px}.nav-cta{display:none}.hero-grid{grid-template-columns:1fr}.hero-copy{text-align:center;max-width:760px;margin:auto}.hero-note{margin-left:auto;margin-right:auto;text-align:left}.laptop-wrap{max-width:820px;margin:auto;width:100%}.feature-grid{grid-template-columns:repeat(3,1fr)}.pricing-grid{grid-template-columns:repeat(3,1fr)}.price-help{grid-column:1/-1}.benefit-strip{grid-template-columns:repeat(4,1fr)}.benefit-strip div:nth-child(4){border-right:0}.trust-grid{grid-template-columns:2fr 1fr 1fr}.trust-grid>div:last-child{grid-column:2/3}.faq-layout{grid-template-columns:1fr}.final-cta{max-width:500px}.footer-grid{grid-template-columns:2fr repeat(2,1fr)}}
@media(max-width:780px){.container{width:min(100% - 28px,1180px)}.nav-wrap{height:72px}.brand{min-width:0}.main-nav{display:none;position:absolute;top:72px;left:0;right:0;background:#041d2d;flex-direction:column;gap:0;padding:14px 24px;border-top:1px solid rgba(255,255,255,.08)}.main-nav.open{display:flex}.main-nav a{padding:12px 0;width:100%}.main-nav a.active:after{display:none}.nav-toggle{display:block;margin-left:auto}.hero{padding-top:20px}.hero-grid{min-height:0;gap:28px}.hero h1{font-size:38px}.hero-actions{justify-content:center}.laptop-wrap{transform:none}.laptop-screen{grid-template-columns:66px 1fr;padding:5px}.mini-sidebar{font-size:6px}.stat strong{font-size:13px}.dashboard-grid{grid-template-columns:1fr}.map-card{display:none}.industry-grid{grid-template-columns:repeat(3,1fr)}.compare-grid{grid-template-columns:1fr}.compare-arrow{transform:rotate(90deg);margin:auto}.process-flow{flex-direction:row;justify-content:center;flex-wrap:wrap}.feature-grid{grid-template-columns:repeat(2,1fr)}.steps-grid{grid-template-columns:1fr 1fr}.steps-grid article:after{display:none}.demo-grid{grid-template-columns:1fr}.benefit-strip{grid-template-columns:repeat(2,1fr)}.benefit-strip div{border-right:0}.pricing-grid{grid-template-columns:1fr}.trust-grid{grid-template-columns:1fr 1fr}.quote-block{grid-column:1/-1}.trust-grid>div:last-child{grid-column:auto}.faq-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}
@media(max-width:520px){.brand-copy small{display:none}.brand-copy strong{font-size:11px}.hero h1{font-size:32px}.hero-text{font-size:15px}.hero-actions{flex-direction:column;align-items:stretch}.hero-note{font-size:11px}.laptop-screen{aspect-ratio:1.45}.mini-sidebar a:nth-child(n+7){display:none}.stat-row{grid-template-columns:1fr 1fr}.stat:nth-child(n+3){display:none}.dashboard-grid{height:auto}.industry-grid{grid-template-columns:repeat(2,1fr)}.industry-card{min-height:138px;padding:16px 10px}.industry-icon{width:58px;height:58px}.feature-grid,.steps-grid{grid-template-columns:1fr}.demo-preview{grid-template-columns:65px 1fr;min-height:260px}.demo-stats{grid-template-columns:1fr 1fr}.demo-stats div:nth-child(n+3){display:none}.demo-table div{grid-template-columns:1fr 1fr}.demo-table div span:nth-child(3),.demo-table div span:nth-child(4){display:none}.benefit-strip{grid-template-columns:1fr}.pricing-grid{display:block}.price-card,.price-help{margin-bottom:14px}.price-help{flex-direction:column;text-align:center}.trust-grid{grid-template-columns:1fr}.contact-form{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.section{padding:48px 0}}


/* ===== Realistic live technician map upgrade ===== */
.map-card{overflow:hidden}
.map-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}
.map-card-head .card-title{margin-bottom:0}
.map-live{display:inline-flex;align-items:center;gap:4px;font-size:5.8px;font-weight:700;color:#398e2a;background:#ebf7e7;border:1px solid #d4ebce;border-radius:10px;padding:2px 5px}
.map-live i{display:block;width:4px;height:4px;border-radius:50%;background:#43b62f;box-shadow:0 0 0 2px rgba(67,182,47,.14)}
.ops-map{position:relative;height:92%;min-height:120px;overflow:hidden;border:1px solid #dbe2e4;border-radius:4px;background:#edf1ee;box-shadow:inset 0 0 0 1px rgba(255,255,255,.55)}
.ops-map:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 28%,rgba(9,40,55,.025));}
.ops-map-svg{display:block;width:100%;height:100%;object-fit:cover}
.tech-pulse{fill:rgba(57,174,42,.14);transform-box:fill-box;transform-origin:center;animation:mapPulse 2.2s ease-out infinite}
.tech-blue .tech-pulse{fill:rgba(55,139,213,.13);animation-delay:.6s}
.tech-amber .tech-pulse{fill:rgba(233,154,46,.13);animation-delay:1.1s}
@keyframes mapPulse{0%{transform:scale(.55);opacity:.9}70%{transform:scale(1.45);opacity:0}100%{transform:scale(1.45);opacity:0}}
.map-tech-label{position:absolute;z-index:3;display:flex;align-items:center;gap:5px;background:rgba(255,255,255,.96);border:1px solid #e1e6e8;border-radius:5px;padding:4px 6px;box-shadow:0 4px 10px rgba(20,53,68,.14);white-space:nowrap}
.map-tech-label strong{display:block;font-size:5.7px;line-height:1.05;color:#273d49}
.map-tech-label small{display:block;font-size:4.7px;line-height:1.15;color:#7b8c95;margin-top:1px}
.avatar-dot{width:15px;height:15px;border-radius:50%;display:grid;place-items:center;font-size:4.8px;font-weight:800;color:#fff}
.green-avatar{background:#39ae2a}
.blue-avatar{background:#378bd5}
.label-mike{right:5%;top:40%}
.label-tom{left:33%;bottom:17%}
.map-legend{position:absolute;z-index:3;left:5px;bottom:5px;display:flex;gap:6px;background:rgba(255,255,255,.92);border:1px solid #e1e7e9;border-radius:4px;padding:3px 5px;box-shadow:0 3px 8px rgba(25,54,68,.08)}
.map-legend span{display:flex;align-items:center;gap:2px;font-size:4.8px;font-weight:600;color:#6c7c85}
.legend-dot{width:4px;height:4px;border-radius:50%}
.legend-dot.available{background:#39ae2a}
.legend-dot.busy{background:#378bd5}
.map-control{position:absolute;z-index:4;right:5px;width:15px;height:15px;border:1px solid #d6dee1;background:rgba(255,255,255,.96);color:#5e6d75;font-size:10px;line-height:12px;padding:0;display:grid;place-items:center;cursor:default;box-shadow:0 2px 5px rgba(20,53,68,.08)}
.map-plus{top:5px;border-radius:3px 3px 0 0}
.map-minus{top:19px;border-radius:0 0 3px 3px;border-top:0}


/* =========================================================
   YDP CLEAN HERO + MAP-FIRST PRODUCT VISUAL
   Brand type system: Manrope headings / Inter body and UI
   ========================================================= */

:root{
  --ydp-navy:#061b2a;
  --ydp-navy-2:#08283a;
  --ydp-navy-3:#0c3348;
  --ydp-green:#43b52d;
  --ydp-green-dark:#329821;
  --ydp-soft:#eff4f1;
}

body{
  font-family:Inter,Arial,sans-serif;
}

h1,h2,h3,h4,.section-title,.eyebrow,.btn,.main-nav a{
  font-family:Manrope,Inter,Arial,sans-serif;
}

/* Header */
.ydp-header{
  background:rgba(5,24,37,.97);
  border-bottom:1px solid rgba(255,255,255,.055);
}

.ydp-nav-wrap{
  height:76px;
  gap:34px;
}

.ydp-brand{
  min-width:92px;
  width:92px;
  height:76px;
  overflow:visible;
  display:flex;
  align-items:center;
  justify-content:flex-start;
}

.ydp-brand-logo{
  display:block;
  width:72px;
  height:72px;
  object-fit:contain;
  transform:none;
  margin:0;
}

.ydp-main-nav{
  gap:30px;
}

.ydp-main-nav a{
  font-size:12px;
  font-weight:600;
  letter-spacing:-.01em;
  padding:27px 0 24px;
  opacity:.8;
}

.ydp-main-nav a.active:after{
  bottom:16px;
  height:2px;
  border-radius:2px;
}

.ydp-nav-cta{
  padding:11px 18px;
  border-radius:7px;
  box-shadow:0 8px 20px rgba(55,174,35,.18);
}

/* Customer portal login */
.ydp-customer-login{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:9px 15px;
  margin-left:2px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:7px;
  color:#fff;
  font-family:Manrope,Inter,Arial,sans-serif;
  font-size:11px;
  font-weight:700;
  letter-spacing:-.01em;
  white-space:nowrap;
  background:rgba(255,255,255,.035);
  transition:.2s ease;
}

.ydp-customer-login:hover{
  color:#fff;
  border-color:rgba(117,213,62,.88);
  background:rgba(67,181,45,.11);
  transform:translateY(-1px);
}

.ydp-main-nav .ydp-mobile-login{
  display:none;
}

/* Hero */
.hero-clean{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 72% 47%,rgba(36,111,142,.23),transparent 31%),
    linear-gradient(115deg,var(--ydp-navy) 0%,#061f30 56%,#082b3d 100%);
  padding:58px 0 116px;
  color:#fff;
}

.hero-clean:after{
  display:none;
}

.hero-soft-glow{
  position:absolute;
  width:720px;
  height:720px;
  border-radius:50%;
  right:-160px;
  top:-160px;
  background:radial-gradient(circle,rgba(71,181,45,.10),transparent 66%);
  pointer-events:none;
}

.hero-grid-clean{
  min-height:500px;
  grid-template-columns:.82fr 1.45fr;
  gap:62px;
  align-items:center;
}

.hero-copy-clean{
  max-width:510px;
  padding-top:2px;
}

.hero-copy-clean .eyebrow{
  color:#76d95a;
  font-size:10px;
  letter-spacing:.15em;
  margin:0 0 16px;
}

.hero-copy-clean h1{
  font-family:Manrope,Inter,sans-serif;
  font-size:51px;
  line-height:1.02;
  letter-spacing:-.048em;
  margin:0 0 20px;
  font-weight:800;
  max-width:520px;
}

.hero-copy-clean h1 span{
  color:#59c93c;
}

.hero-copy-clean .hero-text{
  max-width:495px;
  margin:0;
  color:#d8e4e9;
  font-size:16px;
  line-height:1.65;
  font-weight:400;
}

.hero-actions-clean{
  margin:29px 0 28px;
  gap:12px;
}

.hero-actions-clean .btn{
  min-height:48px;
  border-radius:7px;
  padding:13px 20px;
  font-size:13px;
}

.hero-actions-clean .btn-outline-light{
  border-color:rgba(255,255,255,.46);
  color:#eef5f7;
  background:rgba(255,255,255,.025);
}

.hero-actions-clean .btn-outline-light:hover{
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.72);
}

.hero-proof{
  display:flex;
  flex-wrap:wrap;
  gap:9px 17px;
  color:#b9cbd3;
  font-size:10px;
  line-height:1.4;
}

.hero-proof span{
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.hero-proof i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#51c338;
  box-shadow:0 0 0 3px rgba(81,195,56,.10);
}

.hero-wave{
  position:absolute;
  left:-4%;
  right:-4%;
  bottom:-80px;
  height:150px;
  background:#fff;
  border-radius:50% 50% 0 0 / 50% 50% 0 0;
  transform:rotate(-1.4deg);
  transform-origin:center;
}

/* Product device */
.product-stage{
  position:relative;
  width:100%;
  max-width:790px;
  margin-left:auto;
  z-index:2;
}

.device-laptop{
  position:relative;
  z-index:3;
  background:linear-gradient(145deg,#46515a,#222b32);
  border-radius:20px 20px 9px 9px;
  padding:7px;
  box-shadow:
    0 34px 65px rgba(0,0,0,.36),
    0 0 0 1px rgba(255,255,255,.05);
}

.device-camera{
  position:absolute;
  top:3px;
  left:50%;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#0d1215;
  z-index:6;
}

.dispatch-screen{
  display:grid;
  grid-template-columns:77px 1fr;
  min-height:392px;
  overflow:hidden;
  border-radius:14px 14px 4px 4px;
  background:#f3f6f5;
}

.dispatch-sidebar{
  background:#061f30;
  padding:12px 8px;
  color:#a7bec9;
  display:flex;
  flex-direction:column;
  gap:5px;
  font-size:7px;
}

.dispatch-mini-brand{
  color:#76de58;
  font-family:Manrope,Inter,sans-serif;
  font-weight:800;
  font-size:12px;
  margin:2px 4px 7px;
}

.dispatch-sidebar a{
  padding:7px 7px;
  border-radius:4px;
}

.dispatch-sidebar a.selected{
  color:#fff;
  background:linear-gradient(180deg,#4fc535,#3cad26);
}

.dispatch-app{
  min-width:0;
  display:flex;
  flex-direction:column;
}

.dispatch-topbar{
  height:45px;
  background:#fff;
  border-bottom:1px solid #e5e9e8;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:0 13px;
  color:#213846;
}

.dispatch-topbar>div:first-child{
  display:flex;
  flex-direction:column;
}

.dispatch-topbar strong{
  font:700 9px Manrope,Inter,sans-serif;
}

.dispatch-topbar small{
  color:#8b9aa0;
  font-size:6px;
  margin-top:1px;
}

.dispatch-top-actions{
  display:flex;
  align-items:center;
  gap:5px;
  color:#778891;
  font-size:6px;
}

.live-dot{
  width:5px;
  height:5px;
  border-radius:50%;
  background:#46b832;
  box-shadow:0 0 0 3px rgba(70,184,50,.13);
}

.top-avatar{
  width:20px;
  height:20px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#eef3ef;
  color:#45606d;
  font-size:6px;
  font-weight:800;
  margin-left:4px;
}

.map-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 158px;
  flex:1;
  min-height:0;
}

.map-main{
  position:relative;
  overflow:hidden;
  background:#edf2ef;
  border-right:1px solid #e1e7e5;
}

.hero-map-svg{
  display:block;
  width:100%;
  height:100%;
  min-height:347px;
}

.map-search-box{
  position:absolute;
  top:10px;
  left:10px;
  width:168px;
  height:28px;
  display:flex;
  align-items:center;
  padding:0 9px;
  border-radius:5px;
  background:rgba(255,255,255,.97);
  border:1px solid #dce3e1;
  box-shadow:0 4px 11px rgba(23,55,67,.10);
  color:#87969b;
  font-size:6.5px;
}

.map-status-pill{
  position:absolute;
  left:10px;
  bottom:10px;
  display:flex;
  align-items:center;
  gap:5px;
  background:rgba(255,255,255,.96);
  border:1px solid #dde5e2;
  border-radius:14px;
  padding:5px 8px;
  color:#5f727a;
  font-size:6px;
  font-weight:600;
  box-shadow:0 4px 10px rgba(23,55,67,.08);
}

.map-status-pill span{
  width:5px;
  height:5px;
  border-radius:50%;
  background:#47b833;
}

.map-zoom{
  position:absolute;
  right:9px;
  bottom:10px;
  display:flex;
  flex-direction:column;
  border-radius:5px;
  overflow:hidden;
  border:1px solid #d7dfdd;
  box-shadow:0 3px 8px rgba(20,49,60,.08);
}

.map-zoom button{
  width:24px;
  height:23px;
  border:0;
  border-bottom:1px solid #dfe5e3;
  background:#fff;
  color:#536770;
  font-size:13px;
  line-height:1;
}

.map-zoom button:last-child{
  border-bottom:0;
}

.hero-map-pulse{
  fill:rgba(67,181,45,.14);
  transform-box:fill-box;
  transform-origin:center;
  animation:ydpMapPulse 2.4s ease-out infinite;
}

.blue-marker .hero-map-pulse{
  fill:rgba(52,136,208,.13);
  animation-delay:.65s;
}

.amber-marker .hero-map-pulse{
  fill:rgba(231,154,46,.13);
  animation-delay:1.2s;
}

@keyframes ydpMapPulse{
  0%{transform:scale(.55);opacity:.9}
  70%{transform:scale(1.45);opacity:0}
  100%{transform:scale(1.45);opacity:0}
}

.tech-popover{
  position:absolute;
  z-index:4;
  display:flex;
  align-items:center;
  gap:5px;
  background:rgba(255,255,255,.97);
  border:1px solid #dfe6e3;
  border-radius:6px;
  padding:5px 7px;
  box-shadow:0 6px 14px rgba(18,49,62,.13);
  color:#263e49;
}

.tech-popover strong{
  display:block;
  font-size:6px;
  line-height:1.1;
}

.tech-popover small{
  display:block;
  margin-top:2px;
  font-size:5px;
  color:#84959b;
}

.person-badge{
  width:18px;
  height:18px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:5px;
  font-weight:800;
}

.green-person{background:#47b832}
.blue-person{background:#3488d0}

.popover-one{
  right:14%;
  top:30%;
}

.popover-two{
  left:40%;
  bottom:27%;
}

.live-job-panel{
  background:#fff;
  padding:10px;
  overflow:hidden;
}

.panel-title{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  padding-bottom:8px;
  border-bottom:1px solid #edf0ef;
  color:#2c414a;
}

.panel-title>div{
  display:flex;
  flex-direction:column;
}

.panel-title strong{
  font:700 8px Manrope,Inter,sans-serif;
}

.panel-title small{
  font-size:5.5px;
  color:#94a2a6;
  margin-top:1px;
}

.panel-title>span{
  font-size:7px;
  color:#91a0a5;
}

.live-job{
  padding:10px 6px;
  border-bottom:1px solid #edf0ef;
  border-left:3px solid transparent;
  color:#334851;
}

.live-job.active-job{
  background:#f3faf1;
  border-left-color:#49b833;
  margin:3px -4px 0;
  padding-left:8px;
  border-radius:3px;
}

.job-top{
  display:flex;
  justify-content:space-between;
  margin-bottom:3px;
}

.job-top b{
  font-size:6px;
  color:#7a898f;
}

.job-top em{
  font-size:5px;
  font-style:normal;
  color:#8a989d;
}

.live-job>strong{
  display:block;
  font-size:6.5px;
  line-height:1.15;
  font-weight:700;
}

.live-job>small{
  display:block;
  margin-top:3px;
  color:#84949a;
  font-size:5.5px;
}

.device-base{
  position:relative;
  z-index:4;
  height:17px;
  margin:-1px -40px 0;
  background:linear-gradient(180deg,#66717a,#343c42 58%,#22292e);
  border-radius:2px 2px 24px 24px;
  box-shadow:0 13px 20px rgba(0,0,0,.24);
}

.device-base:after{
  content:"";
  position:absolute;
  left:42%;
  right:42%;
  top:0;
  height:5px;
  background:#7f8990;
  border-radius:0 0 8px 8px;
  opacity:.55;
}

.product-stage-shadow{
  position:absolute;
  z-index:1;
  left:11%;
  right:7%;
  bottom:-23px;
  height:48px;
  background:rgba(0,0,0,.26);
  filter:blur(23px);
  border-radius:50%;
}

/* Footer brand */
.ydp-footer-brand{
  display:block;
  width:190px;
  height:auto;
  overflow:visible;
}

.ydp-footer-brand img{
  width:190px;
  height:auto;
  display:block;
}

/* Responsive */
@media(max-width:1050px){
  .ydp-main-nav{gap:17px}
  .ydp-main-nav a{font-size:10.5px}
  .hero-grid-clean{
    grid-template-columns:1fr;
    gap:42px;
  }
  .hero-copy-clean{
    max-width:700px;
    margin:auto;
    text-align:center;
  }
  .hero-copy-clean .hero-text{
    margin-left:auto;
    margin-right:auto;
  }
  .hero-actions-clean{
    justify-content:center;
  }
  .hero-proof{
    justify-content:center;
  }
  .product-stage{
    max-width:820px;
    margin:auto;
  }
}

@media(max-width:780px){
  .ydp-nav-wrap{height:68px}
  .ydp-brand{min-width:78px;width:78px;height:68px}
  .ydp-brand-logo{width:62px;height:62px}
  .ydp-main-nav{
    top:68px;
  }
  .hero-clean{
    padding:42px 0 92px;
  }
  .hero-grid-clean{
    gap:32px;
  }
  .hero-copy-clean h1{
    font-size:40px;
  }
  .dispatch-screen{
    grid-template-columns:58px 1fr;
    min-height:315px;
  }
  .dispatch-sidebar{
    font-size:5.5px;
    padding:8px 5px;
  }
  .dispatch-sidebar a{
    padding:5px;
  }
  .map-layout{
    grid-template-columns:minmax(0,1fr) 125px;
  }
  .hero-map-svg{
    min-height:270px;
  }
}

@media(max-width:590px){
  .hero-copy-clean h1{
    font-size:34px;
  }
  .hero-copy-clean .hero-text{
    font-size:14px;
  }
  .hero-actions-clean{
    flex-direction:column;
  }
  .hero-proof{
    gap:8px 12px;
  }
  .dispatch-screen{
    grid-template-columns:48px 1fr;
    min-height:260px;
  }
  .dispatch-sidebar a:nth-child(n+6){
    display:none;
  }
  .map-layout{
    grid-template-columns:1fr;
  }
  .live-job-panel{
    display:none;
  }
  .hero-map-svg{
    min-height:215px;
  }
  .map-search-box{
    width:130px;
    height:24px;
  }
  .tech-popover{
    display:none;
  }
  .device-base{
    margin-left:-18px;
    margin-right:-18px;
  }
}


/* =========================================================
   FEATURE PREVIEW + FULL FEATURES PAGE
   ========================================================= */

.eyebrow-dark{color:#3ea529}

.feature-preview-section{
  background:linear-gradient(180deg,#fff 0%,#fbfdfb 100%);
}

.feature-preview-head{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:70px;
  align-items:end;
  margin-bottom:34px;
}

.feature-preview-head .eyebrow{margin-bottom:9px}
.feature-preview-title{
  text-align:left;
  max-width:590px;
  margin:0;
  font-size:34px;
  line-height:1.08;
  letter-spacing:-.035em;
}

.feature-preview-summary{
  margin:0;
  max-width:560px;
  color:#5a6c76;
  font-size:14px;
  line-height:1.7;
}

.feature-preview-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}

.feature-preview-card{
  position:relative;
  background:#fff;
  border:1px solid #e0e7e4;
  border-radius:15px;
  padding:22px 20px 23px;
  min-height:176px;
  box-shadow:0 8px 24px rgba(17,51,66,.045);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.feature-preview-card:hover{
  transform:translateY(-3px);
  box-shadow:0 15px 34px rgba(17,51,66,.09);
  border-color:#cfe2ca;
}

.feature-preview-card:before{
  content:"";
  position:absolute;
  left:20px;
  top:0;
  width:42px;
  height:3px;
  background:#46b831;
  border-radius:0 0 3px 3px;
}

.feature-kicker{
  display:block;
  margin:3px 0 12px;
  color:#4aaa32;
  font-size:8px;
  font-weight:800;
  letter-spacing:.12em;
}

.feature-preview-card h3{
  margin:0 0 9px;
  color:#102f40;
  font:700 15px/1.25 Manrope,Inter,sans-serif;
}

.feature-preview-card p{
  margin:0;
  color:#61737c;
  font-size:11px;
  line-height:1.6;
}

.feature-preview-actions{
  display:flex;
  justify-content:center;
  gap:11px;
  margin-top:30px;
}

/* Features hero */
.features-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 80% 20%,rgba(71,181,45,.12),transparent 30%),
    linear-gradient(120deg,#061b2a 0%,#072b3d 100%);
  color:#fff;
  padding:80px 0 105px;
}

.features-hero-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:80px;
  align-items:center;
}

.features-hero h1{
  max-width:720px;
  margin:9px 0 20px;
  font:800 54px/1.03 Manrope,Inter,sans-serif;
  letter-spacing:-.048em;
}

.features-hero h1 span{color:#58c83d}

.features-hero-copy{
  max-width:680px;
  margin:0;
  color:#d5e2e7;
  font-size:16px;
  line-height:1.7;
}

.features-hero .hero-actions{
  margin-top:28px;
}

.feature-stat-panel{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  max-width:370px;
  margin-left:auto;
}

.feature-stat-panel div{
  display:flex;
  align-items:baseline;
  gap:16px;
  padding:18px 20px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:12px;
  background:rgba(255,255,255,.045);
  backdrop-filter:blur(6px);
}

.feature-stat-panel strong{
  min-width:58px;
  color:#62d246;
  font:800 34px/1 Manrope,Inter,sans-serif;
}

.feature-stat-panel span{
  color:#dce7eb;
  font-size:12px;
  font-weight:600;
}

.features-hero-wave{
  position:absolute;
  left:-3%;
  right:-3%;
  bottom:-72px;
  height:120px;
  background:#fff;
  border-radius:50% 50% 0 0 / 48% 48% 0 0;
  transform:rotate(-1deg);
}

/* Feature jump navigation */
.feature-jump-wrap{
  position:sticky;
  top:74px;
  z-index:18;
  background:rgba(255,255,255,.97);
  border-bottom:1px solid #e7ece9;
  box-shadow:0 6px 16px rgba(17,51,66,.04);
}

.feature-jump{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:12px 0;
  overflow-x:auto;
  scrollbar-width:none;
}

.feature-jump::-webkit-scrollbar{display:none}

.feature-jump a{
  flex:0 0 auto;
  color:#62747d;
  background:#f5f8f6;
  border:1px solid #e3e9e6;
  border-radius:20px;
  padding:8px 12px;
  font-size:9.5px;
  font-weight:700;
}

.feature-jump a:hover{
  color:#318f23;
  border-color:#cce2c6;
  background:#eef8eb;
}

/* Full categories */
.feature-category{
  padding:72px 0;
  background:#fff;
  scroll-margin-top:132px;
}

.feature-category:nth-of-type(even){
  background:#f7faf8;
}

.feature-category-grid{
  display:grid;
  grid-template-columns:280px 1fr;
  gap:58px;
  align-items:start;
}

.feature-category-intro{
  position:sticky;
  top:145px;
}

.feature-category-no{
  display:block;
  margin-bottom:10px;
  color:#43ad2f;
  font:800 11px Manrope,Inter,sans-serif;
  letter-spacing:.15em;
}

.feature-category-intro h2{
  margin:0 0 12px;
  color:#0c2b3c;
  font:800 29px/1.12 Manrope,Inter,sans-serif;
  letter-spacing:-.035em;
}

.feature-category-intro p{
  margin:0;
  color:#64767e;
  font-size:12px;
  line-height:1.7;
}

.feature-side-visual{
  margin:26px 0 0;
  background:#fff;
  border:1px solid #dde6e2;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 14px 34px rgba(15,47,63,.08);
}

.feature-side-visual img{
  display:block;
  width:100%;
  height:auto;
  background:#fff;
}

.feature-side-visual figcaption{
  margin:0;
  padding:14px 16px 16px;
  color:#5f717a;
  font-size:11px;
  line-height:1.6;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdfc 100%);
  border-top:1px solid #edf2ef;
}

.feature-side-visual figcaption strong{
  display:block;
  margin-bottom:4px;
  color:#143443;
  font:700 12px/1.35 Manrope,Inter,sans-serif;
}

.full-feature-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px;
}

.full-feature-card{
  background:#fff;
  border:1px solid #dee6e2;
  border-radius:14px;
  padding:22px 22px 24px;
  min-height:154px;
  box-shadow:0 7px 20px rgba(16,49,63,.04);
}

.feature-category:nth-of-type(even) .full-feature-card{
  background:#fff;
}

.full-feature-tag{
  display:inline-flex;
  align-items:center;
  min-height:21px;
  margin-bottom:12px;
  padding:4px 7px;
  border-radius:12px;
  background:#edf8e9;
  color:#348f27;
  font-size:7.5px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.full-feature-card h3{
  margin:0 0 8px;
  color:#143443;
  font:700 15px/1.25 Manrope,Inter,sans-serif;
}

.full-feature-card p{
  margin:0;
  color:#60727b;
  font-size:11px;
  line-height:1.62;
}

/* Differentiators */
.differentiator-band{
  background:linear-gradient(120deg,#061d2d,#082d40);
  color:#fff;
  padding:72px 0;
}

.differentiator-band h2{
  max-width:780px;
  margin:8px 0 12px;
  font:800 34px/1.12 Manrope,Inter,sans-serif;
  letter-spacing:-.035em;
}

.differentiator-band>.container>p:not(.eyebrow){
  max-width:850px;
  color:#cbdbe2;
  font-size:13px;
  line-height:1.7;
}

.differentiator-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  margin-top:30px;
}

.differentiator-grid article{
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.035);
  border-radius:13px;
  padding:21px;
}

.differentiator-grid span{
  display:block;
  margin-bottom:18px;
  color:#5fd044;
  font:800 10px Manrope,Inter,sans-serif;
}

.differentiator-grid strong{
  display:block;
  margin-bottom:8px;
  font:700 13px Manrope,Inter,sans-serif;
}

.differentiator-grid p{
  margin:0;
  color:#c6d6dc;
  font-size:10px;
  line-height:1.55;
}

.feature-final-cta{
  padding:62px 0;
  background:#eef6ed;
}

.feature-final-cta-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  border:1px solid #dce9d9;
  border-radius:18px;
  background:#fff;
  padding:34px 38px;
  box-shadow:0 14px 35px rgba(27,72,46,.07);
}

.feature-final-cta-inner h2{
  margin:5px 0 8px;
  color:#102f40;
  font:800 29px/1.14 Manrope,Inter,sans-serif;
  letter-spacing:-.03em;
}

.feature-final-cta-inner p:not(.eyebrow){
  max-width:710px;
  margin:0;
  color:#62747d;
  font-size:12px;
  line-height:1.65;
}

/* Features responsive */
@media(max-width:1050px){
  .feature-preview-grid{grid-template-columns:repeat(2,1fr)}
  .features-hero-grid{grid-template-columns:1fr .6fr;gap:45px}
  .features-hero h1{font-size:46px}
  .feature-category-grid{grid-template-columns:230px 1fr;gap:35px}
  .differentiator-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:780px){
  .feature-preview-head{grid-template-columns:1fr;gap:15px}
  .feature-preview-title{font-size:29px}
  .feature-preview-summary{max-width:none}
  .features-hero{padding:55px 0 84px}
  .features-hero-grid{grid-template-columns:1fr;gap:30px}
  .features-hero h1{font-size:40px}
  .feature-stat-panel{
    grid-template-columns:repeat(3,1fr);
    max-width:none;
    margin:0;
  }
  .feature-stat-panel div{
    display:block;
    text-align:center;
    padding:14px 8px;
  }
  .feature-stat-panel strong{display:block;min-width:0;margin-bottom:5px;font-size:27px}
  .feature-stat-panel span{font-size:9px}
  .feature-jump-wrap{top:68px}
  .feature-jump{justify-content:flex-start}
  .feature-category{padding:52px 0;scroll-margin-top:120px}
  .feature-category-grid{grid-template-columns:1fr;gap:24px}
  .feature-category-intro{position:static;max-width:640px}
  .feature-category-intro h2{font-size:26px}
  .differentiator-grid{grid-template-columns:1fr 1fr}
  .feature-final-cta-inner{align-items:flex-start;flex-direction:column}
}

@media(max-width:520px){
  .feature-preview-grid{grid-template-columns:1fr}
  .feature-preview-actions{flex-direction:column}
  .features-hero h1{font-size:34px}
  .features-hero-copy{font-size:14px}
  .feature-stat-panel{grid-template-columns:1fr 1fr 1fr}
  .full-feature-grid{grid-template-columns:1fr}
  .feature-side-visual{margin-top:22px;border-radius:16px}
  .feature-side-visual figcaption{padding:12px 14px 14px}
  .differentiator-grid{grid-template-columns:1fr}
  .feature-final-cta-inner{padding:26px 22px}
}


/* =========================================================
   YDP TRANSPARENT PRICING
   ========================================================= */

.ydp-pricing-section{
  background:
    radial-gradient(circle at 84% 8%,rgba(67,181,45,.09),transparent 26%),
    linear-gradient(180deg,#f6faf7 0%,#ffffff 100%);
}

.pricing-head{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:65px;
  align-items:end;
  margin-bottom:25px;
}

.pricing-head .eyebrow{
  margin-bottom:8px;
}

.pricing-title{
  text-align:left;
  margin:0;
  max-width:610px;
  font-size:35px;
  line-height:1.08;
  letter-spacing:-.035em;
}

.pricing-intro{
  max-width:580px;
  margin:0;
  color:#60727b;
  font-size:13px;
  line-height:1.72;
}

.pricing-promises{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px 10px;
  margin:0 auto 24px;
  max-width:1040px;
}

.pricing-promises span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 10px;
  border:1px solid #dce8d9;
  border-radius:20px;
  background:#fff;
  color:#53666f;
  font-size:9px;
  font-weight:700;
  box-shadow:0 4px 11px rgba(30,70,47,.03);
}

.pricing-promises i{
  width:15px;
  height:15px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#e9f7e5;
  color:#389b28;
  font-size:8px;
  font-style:normal;
}

.billing-switcher{
  display:flex;
  width:max-content;
  max-width:100%;
  margin:0 auto;
  padding:4px;
  border:1px solid #dfe7e3;
  border-radius:11px;
  background:#fff;
  box-shadow:0 8px 24px rgba(21,54,67,.06);
}

.billing-option{
  border:0;
  border-radius:8px;
  background:transparent;
  color:#60727b;
  padding:10px 14px;
  font:700 10px Manrope,Inter,sans-serif;
  cursor:pointer;
  transition:background .16s ease,color .16s ease,box-shadow .16s ease;
}

.billing-option span{
  display:inline-block;
  margin-left:4px;
  padding:2px 5px;
  border-radius:8px;
  background:#ecf8e8;
  color:#368f27;
  font-size:7px;
  vertical-align:1px;
}

.billing-option.active{
  background:#0b3042;
  color:#fff;
  box-shadow:0 5px 12px rgba(11,48,66,.18);
}

.billing-option.active span{
  background:#57c83b;
  color:#fff;
}

.billing-caption{
  margin:9px 0 28px;
  text-align:center;
  color:#74868e;
  font-size:9px;
}

.ydp-price-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:11px;
  align-items:stretch;
}

.ydp-price-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:22px 17px 18px;
  border:1px solid #dce5e1;
  border-radius:15px;
  background:#fff;
  box-shadow:0 9px 24px rgba(17,51,66,.045);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.ydp-price-card:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 34px rgba(17,51,66,.085);
}

.ydp-price-card.featured{
  border:2px solid #48b832;
  box-shadow:0 16px 34px rgba(58,157,40,.12);
}

.ydp-price-card .popular{
  position:absolute;
  left:50%;
  top:-11px;
  transform:translateX(-50%);
  white-space:nowrap;
  border-radius:12px;
  background:#46b732;
  color:#fff;
  padding:4px 9px;
  font:800 7px Manrope,Inter,sans-serif;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.price-card-top{
  min-height:105px;
}

.team-size{
  display:inline-block;
  margin-bottom:9px;
  color:#3b9d2b;
  font-size:8px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.ydp-price-card h3{
  margin:0 0 7px;
  color:#123343;
  font:800 17px/1.15 Manrope,Inter,sans-serif;
}

.ydp-price-card .price-card-top p{
  margin:0;
  color:#6b7d85;
  font-size:9.5px;
  line-height:1.5;
}

.price-line{
  display:flex;
  align-items:flex-end;
  gap:3px;
  min-height:61px;
  margin:3px 0 15px;
  padding-bottom:14px;
  border-bottom:1px solid #edf1ef;
}

.price-line .currency{
  margin:0 0 9px;
  color:#183744;
  font:700 16px Manrope,Inter,sans-serif;
}

.price-line strong{
  color:#0d2e3e;
  font:800 38px/.95 Manrope,Inter,sans-serif;
  letter-spacing:-.05em;
}

.price-line>div{
  display:flex;
  flex-direction:column;
  margin:0 0 4px 2px;
  color:#667981;
  font-size:7.5px;
  line-height:1.2;
}

.price-line>div small{
  margin-top:2px;
  font-size:7px;
  color:#839198;
}

.poa-line{
  align-items:center;
}

.poa-line strong{
  font-size:31px;
  letter-spacing:-.025em;
}

.ydp-price-card ul{
  display:grid;
  gap:8px;
  margin:0 0 19px;
  padding:0;
  list-style:none;
}

.ydp-price-card li{
  position:relative;
  padding-left:14px;
  color:#5d7078;
  font-size:8.5px;
  line-height:1.38;
}

.ydp-price-card li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:#43aa2f;
  font-weight:800;
}

.price-cta{
  width:100%;
  margin-top:auto;
  justify-content:center;
  padding-left:7px;
  padding-right:7px;
}

.pricing-bespoke{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:15px;
  align-items:center;
  margin-top:20px;
  padding:18px 20px;
  border:1px solid #dce5e1;
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 22px rgba(17,51,66,.04);
}

.bespoke-icon{
  width:38px;
  height:38px;
  border-radius:11px;
  display:grid;
  place-items:center;
  background:#ecf8e8;
  color:#3ca329;
  font-size:17px;
}

.pricing-bespoke strong{
  display:block;
  margin-bottom:3px;
  color:#173744;
  font:700 12px Manrope,Inter,sans-serif;
}

.pricing-bespoke p{
  margin:0;
  color:#697b83;
  font-size:9.5px;
  line-height:1.5;
}

.pricing-small-print{
  margin:12px 0 0;
  text-align:center;
  color:#87959a;
  font-size:7.5px;
  line-height:1.5;
}

@media(max-width:1120px){
  .ydp-price-grid{
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:820px){
  .pricing-head{
    grid-template-columns:1fr;
    gap:12px;
  }
  .pricing-title{
    font-size:30px;
  }
  .ydp-price-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .pricing-bespoke{
    grid-template-columns:auto 1fr;
  }
  .pricing-bespoke .btn{
    grid-column:1/-1;
    justify-content:center;
  }
}

@media(max-width:560px){
  .billing-switcher{
    width:100%;
    display:grid;
    grid-template-columns:1fr;
  }
  .billing-option{
    width:100%;
  }
  .ydp-price-grid{
    grid-template-columns:1fr;
  }
  .price-card-top{
    min-height:0;
  }
  .ydp-price-card{
    padding:22px;
  }
}


/* =========================================================
   REAL PRODUCT SCREENSHOT HERO
   ========================================================= */

.product-stage-real{
  position:relative;
  width:100%;
  max-width:860px;
  margin-left:auto;
  z-index:2;
  padding:14px 0 24px;
}

.product-browser-frame{
  position:relative;
  z-index:3;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.15);
  border-radius:16px;
  background:#f7f9f8;
  box-shadow:
    0 32px 70px rgba(0,0,0,.36),
    0 0 0 1px rgba(255,255,255,.035);
}

.product-browser-bar{
  height:34px;
  display:grid;
  grid-template-columns:90px 1fr 90px;
  align-items:center;
  padding:0 12px;
  background:linear-gradient(180deg,#ffffff,#f3f6f5);
  border-bottom:1px solid #dde5e1;
  color:#60717a;
}

.browser-dots{
  display:flex;
  gap:5px;
}

.browser-dots span{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#d7dfdc;
}

.browser-dots span:first-child{background:#ff746d}
.browser-dots span:nth-child(2){background:#efbb4c}
.browser-dots span:nth-child(3){background:#58be49}

.browser-title{
  text-align:center;
  font:700 8px Manrope,Inter,sans-serif;
  color:#58707a;
}

.browser-live{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:5px;
  font-size:7px;
  font-weight:700;
  color:#5e7078;
}

.browser-live i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#46b832;
  box-shadow:0 0 0 3px rgba(70,184,50,.12);
}

.product-image-wrap{
  position:relative;
  background:#eef2f1;
  aspect-ratio:1520/703;
  overflow:hidden;
}

.product-image-wrap:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(255,255,255,.08),transparent 15%),
    linear-gradient(90deg,rgba(6,27,42,.02),transparent 12%,transparent 88%,rgba(6,27,42,.025));
}

.product-image-wrap img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.product-proof-chip{
  position:absolute;
  z-index:5;
  display:flex;
  align-items:center;
  gap:9px;
  min-width:205px;
  padding:9px 11px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:10px;
  background:rgba(6,31,47,.92);
  backdrop-filter:blur(9px);
  box-shadow:0 12px 28px rgba(0,0,0,.24);
  color:#fff;
}

.product-proof-chip strong{
  display:block;
  margin-bottom:2px;
  font:700 8px Manrope,Inter,sans-serif;
}

.product-proof-chip small{
  display:block;
  color:#bcd0d8;
  font-size:6.5px;
  line-height:1.25;
}

.proof-chip-icon{
  flex:0 0 27px;
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:#48b832;
  color:#fff;
  font:800 12px Manrope,Inter,sans-serif;
}

.proof-chip-one{
  left:-18px;
  bottom:7px;
}

.proof-chip-two{
  right:-12px;
  top:62px;
}

.product-stage-real .product-stage-shadow{
  left:10%;
  right:8%;
  bottom:-2px;
}

@media(max-width:1050px){
  .product-stage-real{
    max-width:900px;
    margin:0 auto;
  }
}

@media(max-width:780px){
  .product-proof-chip{
    min-width:0;
    max-width:190px;
  }
  .proof-chip-one{left:8px}
  .proof-chip-two{right:8px}
}

@media(max-width:560px){
  .product-browser-bar{
    grid-template-columns:60px 1fr 60px;
    height:29px;
  }
  .browser-title{font-size:6.5px}
  .product-proof-chip{
    display:none;
  }
  .product-stage-real{
    padding-bottom:8px;
  }
}


/* =========================================================
   REAL PLATFORM-IN-ACTION SECTION
   ========================================================= */

.real-platform-section{
  background:
    radial-gradient(circle at 18% 5%,rgba(67,181,45,.06),transparent 24%),
    linear-gradient(180deg,#ffffff 0%,#f7faf8 100%);
}

.platform-action-head{
  display:grid;
  grid-template-columns:1fr .95fr;
  gap:60px;
  align-items:end;
  margin-bottom:28px;
}

.platform-action-head .eyebrow{
  margin-bottom:8px;
}

.platform-action-title{
  margin:0;
  text-align:left;
  font-size:34px;
  line-height:1.08;
  letter-spacing:-.035em;
}

.platform-action-intro{
  margin:0;
  max-width:590px;
  color:#60727b;
  font-size:13px;
  line-height:1.72;
}

.platform-action-frame{
  overflow:hidden;
  border:1px solid #dce5e1;
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 45px rgba(17,51,66,.09);
}

.platform-action-toolbar{
  height:38px;
  display:grid;
  grid-template-columns:85px 1fr 130px;
  align-items:center;
  padding:0 13px;
  background:linear-gradient(180deg,#ffffff,#f3f6f5);
  border-bottom:1px solid #e0e7e4;
}

.toolbar-dots{
  display:flex;
  gap:5px;
}

.toolbar-dots span{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#d7dfdc;
}

.toolbar-dots span:first-child{background:#ff756d}
.toolbar-dots span:nth-child(2){background:#efbd50}
.toolbar-dots span:nth-child(3){background:#59be49}

.platform-action-toolbar strong{
  text-align:center;
  color:#405863;
  font:700 9px Manrope,Inter,sans-serif;
}

.toolbar-live{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:5px;
  color:#65767d;
  font-size:7px;
  font-weight:700;
}

.toolbar-live i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#46b832;
  box-shadow:0 0 0 3px rgba(70,184,50,.12);
}

.platform-action-image-wrap{
  background:#eef2f1;
}

.platform-action-image-wrap img{
  display:block;
  width:100%;
  height:auto;
}

.platform-action-points{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-top:18px;
}

.platform-action-points article{
  display:flex;
  gap:10px;
  min-height:104px;
  padding:17px;
  border:1px solid #dfe7e3;
  border-radius:13px;
  background:#fff;
  box-shadow:0 7px 18px rgba(17,51,66,.035);
}

.platform-point-no{
  flex:0 0 auto;
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:#ebf7e7;
  color:#3a9c29;
  font:800 8px Manrope,Inter,sans-serif;
}

.platform-action-points strong{
  display:block;
  margin:1px 0 5px;
  color:#173744;
  font:700 11px Manrope,Inter,sans-serif;
}

.platform-action-points p{
  margin:0;
  color:#6a7b82;
  font-size:8.5px;
  line-height:1.55;
}

.platform-action-cta{
  display:flex;
  justify-content:center;
  gap:10px;
  margin-top:24px;
}

@media(max-width:980px){
  .platform-action-head{
    grid-template-columns:1fr;
    gap:12px;
  }
  .platform-action-points{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:560px){
  .platform-action-title{
    font-size:29px;
  }
  .platform-action-points{
    grid-template-columns:1fr;
  }
  .platform-action-toolbar{
    grid-template-columns:55px 1fr 90px;
  }
  .platform-action-cta{
    flex-direction:column;
  }
}


/* =========================================================
   INDUSTRY CARD HOVER EFFECT
   ========================================================= */

.industry-card{
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease,
    background .22s ease;
}

.industry-card .industry-icon{
  transition:
    transform .22s ease,
    filter .22s ease;
}

.industry-card:hover{
  transform:translateY(-6px);
  border-color:rgba(70,184,50,.32);
  background:linear-gradient(180deg,#ffffff 0%,#fbfefb 100%);
  box-shadow:
    0 18px 34px rgba(10,38,54,.11),
    0 0 0 1px rgba(70,184,50,.04);
}

.industry-card:hover .industry-icon{
  transform:scale(1.08) rotate(-2deg);
  filter:drop-shadow(0 14px 20px rgba(10,38,54,.18));
}

.industry-card:hover h3{
  color:#2f9b24;
}

.industry-card h3{
  transition:color .22s ease;
}

@media (prefers-reduced-motion: reduce){
  .industry-card,
  .industry-card .industry-icon,
  .industry-card h3{
    transition:none;
  }

  .industry-card:hover,
  .industry-card:hover .industry-icon{
    transform:none;
  }
}


/* =========================================================
   YDP REVIEWS — EARLY CUSTOMER FEEDBACK
   ========================================================= */

.reviews-section{
  padding:84px 0 76px;
  background:
    radial-gradient(circle at 87% 12%,rgba(88,200,61,.08),transparent 24%),
    #f7faf8;
  scroll-margin-top:110px;
}

.reviews-heading{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:70px;
  align-items:end;
  margin-bottom:34px;
}

.reviews-heading h2{
  max-width:650px;
  margin:8px 0 0;
  color:#0d2c3d;
  font:800 38px/1.1 Manrope,Inter,sans-serif;
  letter-spacing:-.04em;
}

.reviews-heading-copy{
  max-width:560px;
  margin:0;
  color:#62747d;
  font-size:13px;
  line-height:1.75;
}

.reviews-layout{
  display:grid;
  grid-template-columns:1.55fr .85fr;
  gap:22px;
  align-items:stretch;
}

.review-featured-card,
.reviews-coming-card{
  border:1px solid #dde6e2;
  border-radius:20px;
  box-shadow:0 16px 36px rgba(15,47,63,.07);
}

.review-featured-card{
  position:relative;
  overflow:hidden;
  min-height:330px;
  padding:38px 42px 34px;
  background:
    radial-gradient(circle at 88% 20%,rgba(88,200,61,.12),transparent 24%),
    linear-gradient(135deg,#061d2d,#082f42);
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.review-quote-mark{
  position:absolute;
  right:34px;
  top:8px;
  color:rgba(88,200,61,.22);
  font:800 118px/1 Georgia,serif;
  pointer-events:none;
}

.review-featured-card blockquote{
  position:relative;
  z-index:1;
  max-width:820px;
  margin:0 0 34px;
  font:600 24px/1.48 Manrope,Inter,sans-serif;
  letter-spacing:-.022em;
  color:#fff;
}

.review-person{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:13px;
}

.review-avatar{
  width:46px;
  height:46px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,#62d246,#369e29);
  box-shadow:0 8px 18px rgba(0,0,0,.2);
  color:#fff;
  font:800 17px Manrope,Inter,sans-serif;
}

.review-person strong,
.review-person span{
  display:block;
}

.review-person strong{
  margin-bottom:2px;
  font:700 14px Manrope,Inter,sans-serif;
}

.review-person span{
  color:#c9d8de;
  font-size:11px;
}

.reviews-coming-card{
  padding:34px 32px;
  background:#fff;
  display:flex;
  flex-direction:column;
}

.reviews-coming-kicker{
  display:inline-flex;
  align-self:flex-start;
  margin-bottom:15px;
  padding:7px 10px;
  border-radius:999px;
  background:#edf8ea;
  color:#389e2b;
  font:700 9px Manrope,Inter,sans-serif;
  letter-spacing:.055em;
  text-transform:uppercase;
}

.reviews-coming-card h3{
  margin:0 0 12px;
  color:#143443;
  font:800 22px/1.18 Manrope,Inter,sans-serif;
  letter-spacing:-.03em;
}

.reviews-coming-card>p{
  margin:0 0 24px;
  color:#667881;
  font-size:12px;
  line-height:1.7;
}

.review-sector-list{
  display:grid;
  gap:11px;
  margin:0 0 27px;
}

.review-sector-list div{
  display:flex;
  align-items:center;
  gap:10px;
  color:#264654;
  font-size:11px;
}

.review-sector-list strong{
  font-weight:650;
}

.review-sector-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  flex:0 0 9px;
  background:#58c83d;
  box-shadow:0 0 0 5px rgba(88,200,61,.11);
}

.review-demo-link{
  margin-top:auto;
  color:#2d8f24;
  font:700 11px Manrope,Inter,sans-serif;
  text-decoration:none;
}

.review-demo-link:hover{
  text-decoration:underline;
}

@media(max-width:900px){
  .reviews-heading{
    grid-template-columns:1fr;
    gap:14px;
  }

  .reviews-heading-copy{
    max-width:680px;
  }

  .reviews-layout{
    grid-template-columns:1fr;
  }
}

@media(max-width:600px){
  .reviews-section{
    padding:60px 0 56px;
  }

  .reviews-heading h2{
    font-size:31px;
  }

  .review-featured-card{
    min-height:0;
    padding:30px 24px 27px;
  }

  .review-featured-card blockquote{
    font-size:19px;
    line-height:1.5;
  }

  .review-quote-mark{
    right:18px;
    font-size:90px;
  }

  .reviews-coming-card{
    padding:28px 24px;
  }
}


/* =========================================================
   YDP FOOTER + LEGAL PAGES
   ========================================================= */

.footer-note{
  display:block;
  max-width:190px;
  margin-top:4px;
  color:#89a0aa;
  font-size:10px;
  line-height:1.55;
}

.legal-hero{
  background:
    radial-gradient(circle at 82% 20%,rgba(88,200,61,.12),transparent 28%),
    linear-gradient(120deg,#061b2a,#082e40);
  color:#fff;
  padding:72px 0 64px;
}

.legal-hero h1{
  margin:8px 0 10px;
  font:800 48px/1.08 Manrope,Inter,sans-serif;
  letter-spacing:-.045em;
}

.legal-updated{
  margin:0;
  color:#c9d8de;
  font-size:12px;
}

.legal-content{
  padding:68px 0 84px;
  background:#f8faf9;
}

.legal-content-inner{
  max-width:860px;
  padding:42px 46px;
  background:#fff;
  border:1px solid #dde6e2;
  border-radius:20px;
  box-shadow:0 14px 34px rgba(15,47,63,.06);
}

.legal-content-inner h2{
  margin:32px 0 9px;
  color:#143443;
  font:800 20px/1.25 Manrope,Inter,sans-serif;
  letter-spacing:-.025em;
}

.legal-content-inner h2:first-of-type{
  margin-top:28px;
}

.legal-content-inner p{
  margin:0 0 16px;
  color:#5f717a;
  font-size:13px;
  line-height:1.8;
}

@media(max-width:600px){
  .legal-hero{padding:54px 0 48px}
  .legal-hero h1{font-size:36px}
  .legal-content{padding:44px 0 58px}
  .legal-content-inner{padding:28px 22px;border-radius:16px}
}


/* =========================================================
   YDP FAQ PAGE
   ========================================================= */

.faq-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 18%,rgba(88,200,61,.13),transparent 28%),
    linear-gradient(120deg,#061b2a 0%,#072b3d 100%);
  color:#fff;
  padding:78px 0 102px;
}

.faq-hero-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:80px;
  align-items:center;
}

.faq-hero h1{
  max-width:760px;
  margin:8px 0 18px;
  font:800 52px/1.04 Manrope,Inter,sans-serif;
  letter-spacing:-.047em;
}

.faq-hero-copy{
  max-width:650px;
  margin:0;
  color:#d3e1e6;
  font-size:15px;
  line-height:1.72;
}

.faq-hero-note{
  max-width:360px;
  justify-self:end;
  padding:28px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  background:rgba(255,255,255,.055);
  box-shadow:0 16px 36px rgba(0,0,0,.12);
  backdrop-filter:blur(8px);
}

.faq-hero-note span,
.faq-hero-note strong{
  display:block;
}

.faq-hero-note>span{
  margin-bottom:8px;
  color:#68d84d;
  font:700 10px Manrope,Inter,sans-serif;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.faq-hero-note strong{
  margin-bottom:18px;
  font:700 20px/1.3 Manrope,Inter,sans-serif;
}

.faq-hero-note a{
  color:#fff;
  font:700 11px Manrope,Inter,sans-serif;
  text-decoration:none;
}

.faq-hero-note a:hover{
  color:#68d84d;
}

.faq-section{
  padding:76px 0 84px;
  background:#f8faf9;
}

.faq-layout{
  display:grid;
  grid-template-columns:285px 1fr;
  gap:58px;
  align-items:start;
}

.faq-intro{
  position:sticky;
  top:130px;
}

.faq-intro h2{
  margin:0 0 12px;
  color:#0c2b3c;
  font:800 30px/1.14 Manrope,Inter,sans-serif;
  letter-spacing:-.035em;
}

.faq-intro p{
  margin:0;
  color:#64767e;
  font-size:12px;
  line-height:1.72;
}

.faq-list{
  display:grid;
  gap:12px;
}

.faq-item{
  background:#fff;
  border:1px solid #dde6e2;
  border-radius:14px;
  box-shadow:0 7px 20px rgba(16,49,63,.035);
  overflow:hidden;
}

.faq-item summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:20px 22px;
  color:#153543;
  font:700 14px/1.4 Manrope,Inter,sans-serif;
}

.faq-item summary::-webkit-details-marker{
  display:none;
}

.faq-plus{
  width:28px;
  height:28px;
  flex:0 0 28px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#eef8eb;
  color:#3aa32d;
  font:700 18px/1 Inter,sans-serif;
  transition:transform .2s ease, background .2s ease;
}

.faq-item[open] .faq-plus{
  transform:rotate(45deg);
  background:#58c83d;
  color:#fff;
}

.faq-answer{
  padding:0 22px 20px;
}

.faq-answer p{
  margin:0;
  max-width:880px;
  color:#62747d;
  font-size:12px;
  line-height:1.75;
}

@media(max-width:900px){
  .faq-hero-grid{
    grid-template-columns:1fr;
    gap:30px;
  }

  .faq-hero-note{
    justify-self:start;
    max-width:520px;
  }

  .faq-layout{
    grid-template-columns:1fr;
    gap:28px;
  }

  .faq-intro{
    position:static;
    max-width:620px;
  }
}

@media(max-width:600px){
  .faq-hero{
    padding:56px 0 82px;
  }

  .faq-hero h1{
    font-size:38px;
  }

  .faq-section{
    padding:54px 0 62px;
  }

  .faq-item summary{
    padding:18px;
    font-size:13px;
  }

  .faq-answer{
    padding:0 18px 18px;
  }
}


/* =========================================================
   TRUST STRIP — RESTORE LOW-POLY ICON LAYOUT
   ========================================================= */

.trust-strip{
  background:linear-gradient(110deg,#032032,#05293d);
  color:#fff;
  padding:30px 0;
}

.trust-grid{
  display:grid;
  grid-template-columns:2.2fr 1fr 1fr 1fr;
  gap:28px;
  align-items:center;
}

.quote-block,
.trust-item{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
}

.trust-image{
  display:block;
  width:58px;
  height:58px;
  max-width:58px;
  max-height:58px;
  object-fit:contain;
  flex:0 0 58px;
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.24));
}

.trust-image-slash{
  width:48px;
  height:48px;
  max-width:48px;
  max-height:48px;
  flex-basis:48px;
}

.trust-grid strong{
  display:block;
  color:#fff;
  font-family:Manrope,Inter,sans-serif;
  font-size:13px;
  line-height:1.35;
}

.trust-grid p{
  margin:4px 0 0;
  color:#d3e0e6;
  font-size:10px;
  line-height:1.5;
  max-width:360px;
}

@media(max-width:1050px){
  .trust-grid{
    grid-template-columns:2fr 1fr 1fr;
  }

  .trust-grid>.trust-item:last-child{
    grid-column:2 / 3;
  }
}

@media(max-width:780px){
  .trust-grid{
    grid-template-columns:1fr 1fr;
  }

  .quote-block{
    grid-column:1 / -1;
  }

  .trust-grid>.trust-item:last-child{
    grid-column:auto;
  }
}

@media(max-width:520px){
  .trust-grid{
    grid-template-columns:1fr;
  }

  .quote-block,
  .trust-item{
    grid-column:auto;
  }

  .trust-image{
    width:52px;
    height:52px;
    max-width:52px;
    max-height:52px;
    flex-basis:52px;
  }

  .trust-image-slash{
    width:44px;
    height:44px;
    max-width:44px;
    max-height:44px;
    flex-basis:44px;
  }
}


/* =========================================================
   INDUSTRIES — SPECIALIST FOCUS + ADAPTABLE BEYOND TRADES
   ========================================================= */

.industry-section-head{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:60px;
  align-items:end;
  margin-bottom:30px;
}

.industry-section-head .section-title{
  margin-bottom:0;
}

.industry-section-copy{
  max-width:600px;
  margin:0;
  color:#61737c;
  font-size:13px;
  line-height:1.75;
}

.beyond-trades-panel{
  display:grid;
  grid-template-columns:1.25fr 1.15fr auto;
  gap:28px;
  align-items:center;
  margin-top:28px;
  padding:28px 30px;
  border:1px solid #dbe5e0;
  border-radius:18px;
  background:
    radial-gradient(circle at 88% 18%,rgba(88,200,61,.09),transparent 27%),
    linear-gradient(135deg,#f8fbf9,#ffffff);
  box-shadow:0 14px 32px rgba(15,47,63,.055);
}

.beyond-kicker{
  display:block;
  margin-bottom:7px;
  color:#3ba32e;
  font:800 9px Manrope,Inter,sans-serif;
  letter-spacing:.075em;
  text-transform:uppercase;
}

.beyond-trades-copy h3{
  margin:0 0 8px;
  color:#123442;
  font:800 21px/1.18 Manrope,Inter,sans-serif;
  letter-spacing:-.03em;
}

.beyond-trades-copy p{
  margin:0;
  color:#64767e;
  font-size:11px;
  line-height:1.7;
}

.beyond-trades-examples{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.beyond-trades-examples span{
  display:inline-flex;
  align-items:center;
  min-height:29px;
  padding:6px 10px;
  border-radius:999px;
  background:#edf7ea;
  color:#315344;
  font:650 9px Manrope,Inter,sans-serif;
  white-space:nowrap;
}

.beyond-trades-cta{
  white-space:nowrap;
}

@media(max-width:980px){
  .industry-section-head{
    grid-template-columns:1fr;
    gap:12px;
  }

  .industry-section-copy{
    max-width:760px;
  }

  .beyond-trades-panel{
    grid-template-columns:1fr 1fr;
  }

  .beyond-trades-cta{
    justify-self:start;
  }
}

@media(max-width:680px){
  .beyond-trades-panel{
    grid-template-columns:1fr;
    padding:24px 22px;
  }

  .beyond-trades-examples{
    gap:7px;
  }
}


/* =========================================================
   ADAPTABLE WORKFLOWS — BEAUTY SALON PREVIEW
   ========================================================= */

.beyond-trades-panel-with-preview{
  grid-template-columns:minmax(0,1fr) minmax(320px,440px);
  gap:34px;
  align-items:center;
}

.beyond-trades-panel-with-preview .beyond-trades-copy{
  min-width:0;
}

.beyond-trades-panel-with-preview .beyond-trades-examples{
  margin-top:18px;
}

.beyond-trades-panel-with-preview .beyond-trades-cta{
  margin-top:20px;
}

.adaptation-preview-card{
  width:100%;
  padding:0;
  overflow:hidden;
  border:1px solid #d7e3dc;
  border-radius:16px;
  background:#fff;
  text-align:left;
  cursor:pointer;
  box-shadow:0 12px 28px rgba(15,47,63,.08);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.adaptation-preview-card:hover{
  transform:translateY(-4px);
  border-color:#b9d8b2;
  box-shadow:0 18px 34px rgba(15,47,63,.12);
}

.adaptation-preview-image-wrap{
  position:relative;
  display:block;
  aspect-ratio:16 / 9;
  overflow:hidden;
  background:#edf5ef;
}

.adaptation-preview-image{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transition:transform .25s ease;
}

.adaptation-preview-card:hover .adaptation-preview-image{
  transform:scale(1.025);
}

.adaptation-preview-overlay{
  position:absolute;
  inset:0;
  display:flex;
  justify-content:flex-end;
  align-items:flex-start;
  padding:12px;
  background:linear-gradient(180deg,rgba(3,31,46,.12),transparent 45%);
  pointer-events:none;
}

.adaptation-preview-expand{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:rgba(6,30,44,.88);
  color:#fff;
  font-size:15px;
  box-shadow:0 8px 18px rgba(0,0,0,.15);
}

.adaptation-preview-copy{
  display:block;
  padding:16px 18px 18px;
}

.adaptation-preview-kicker{
  display:block;
  margin-bottom:5px;
  color:#3ba32e;
  font:800 8px Manrope,Inter,sans-serif;
  letter-spacing:.075em;
  text-transform:uppercase;
}

.adaptation-preview-copy strong{
  display:block;
  margin-bottom:5px;
  color:#143443;
  font:800 15px/1.25 Manrope,Inter,sans-serif;
}

.adaptation-preview-copy>span:not(.adaptation-preview-kicker){
  display:block;
  color:#64767e;
  font-size:10px;
  line-height:1.55;
}

.adaptation-preview-copy em{
  display:block;
  margin-top:10px;
  color:#2f9225;
  font:700 10px Manrope,Inter,sans-serif;
  font-style:normal;
}

.adaptation-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:28px;
}

.adaptation-modal.is-open{
  display:flex;
}

.adaptation-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(3,20,29,.82);
  backdrop-filter:blur(5px);
}

.adaptation-modal-dialog{
  position:relative;
  z-index:1;
  width:min(1180px,96vw);
  max-height:92vh;
  overflow:auto;
  border-radius:20px;
  background:#fff;
  box-shadow:0 30px 70px rgba(0,0,0,.32);
}

.adaptation-modal-close{
  position:absolute;
  top:14px;
  right:14px;
  z-index:3;
  width:40px;
  height:40px;
  border:0;
  border-radius:12px;
  background:#082b3d;
  color:#fff;
  font-size:26px;
  line-height:1;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(0,0,0,.18);
}

.adaptation-modal-heading{
  padding:28px 72px 20px 28px;
}

.adaptation-modal-heading>span{
  display:block;
  margin-bottom:6px;
  color:#3ba32e;
  font:800 9px Manrope,Inter,sans-serif;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.adaptation-modal-heading h2{
  margin:0 0 8px;
  color:#143443;
  font:800 28px/1.15 Manrope,Inter,sans-serif;
  letter-spacing:-.035em;
}

.adaptation-modal-heading p{
  margin:0;
  color:#64767e;
  font-size:12px;
  line-height:1.65;
}

.adaptation-modal-image{
  display:block;
  width:100%;
  height:auto;
  border-top:1px solid #e5ece8;
  border-bottom:1px solid #e5ece8;
}

.adaptation-modal-footer{
  display:flex;
  justify-content:space-between;
  gap:28px;
  align-items:center;
  padding:22px 28px 26px;
}

.adaptation-modal-footer p{
  max-width:760px;
  margin:0;
  color:#60727b;
  font-size:11px;
  line-height:1.65;
}

body.modal-open{
  overflow:hidden;
}

@media(max-width:900px){
  .beyond-trades-panel-with-preview{
    grid-template-columns:1fr;
  }

  .adaptation-preview-card{
    max-width:640px;
  }

  .adaptation-modal-footer{
    align-items:flex-start;
    flex-direction:column;
  }
}

@media(max-width:600px){
  .adaptation-modal{
    padding:12px;
  }

  .adaptation-modal-dialog{
    width:100%;
    max-height:94vh;
    border-radius:16px;
  }

  .adaptation-modal-heading{
    padding:24px 58px 18px 20px;
  }

  .adaptation-modal-heading h2{
    font-size:22px;
  }

  .adaptation-modal-footer{
    padding:18px 20px 22px;
  }
}

@media(prefers-reduced-motion:reduce){
  .adaptation-preview-card,
  .adaptation-preview-image{
    transition:none;
  }
}


/* =========================================================
   BEAUTY PREVIEW — TRUE FULL-SIZE LIGHTBOX
   ========================================================= */

.adaptation-modal{
  padding:18px;
}

.adaptation-modal-dialog{
  width:96vw;
  max-width:none;
  max-height:96vh;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  border-radius:18px;
}

.adaptation-modal-heading{
  flex:0 0 auto;
  padding:18px 64px 14px 22px;
}

.adaptation-modal-heading h2{
  font-size:24px;
}

.adaptation-modal-heading p{
  font-size:11px;
}

.adaptation-modal-image{
  display:block;
  width:100%;
  height:auto;
  max-height:74vh;
  object-fit:contain;
  object-position:center;
  background:#f4f6f5;
  flex:1 1 auto;
}

.adaptation-modal-footer{
  flex:0 0 auto;
  padding:14px 22px 18px;
}

@media(max-width:700px){
  .adaptation-modal{
    padding:8px;
  }

  .adaptation-modal-dialog{
    width:98vw;
    max-height:98vh;
  }

  .adaptation-modal-image{
    max-height:68vh;
  }

  .adaptation-modal-footer{
    padding:12px 16px 16px;
  }
}


.image-only-modal{
  position:fixed;
  inset:0;
  z-index:10050;
  display:none;
  align-items:center;
  justify-content:center;
  padding:14px;
  background:rgba(2,14,21,.96);
}

.image-only-modal.is-open{
  display:flex;
}

.image-only-modal img{
  display:block;
  width:auto;
  height:auto;
  max-width:98vw;
  max-height:96vh;
  object-fit:contain;
}

.image-only-close{
  position:fixed;
  top:16px;
  right:18px;
  z-index:10060;
  width:44px;
  height:44px;
  border:0;
  border-radius:12px;
  background:#fff;
  color:#082b3d;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  box-shadow:0 8px 20px rgba(0,0,0,.25);
}

.adaptation-modal-image{
  cursor:zoom-in;
}


/* =========================================================
   BEAUTY WORKFLOW PREVIEW — PURE CSS LIGHTBOX
   No JavaScript required
   ========================================================= */

.adaptation-preview-card{
  text-decoration:none;
  color:inherit;
}

.beauty-lightbox{
  position:fixed;
  inset:0;
  z-index:99999;
  display:none;
  padding:12px;
}

.beauty-lightbox:target{
  display:flex;
  align-items:center;
  justify-content:center;
}

.beauty-lightbox-backdrop{
  position:absolute;
  inset:0;
  background:rgba(2,15,23,.94);
  backdrop-filter:blur(5px);
}

.beauty-lightbox-panel{
  position:relative;
  z-index:1;
  width:98vw;
  max-width:1600px;
  max-height:97vh;
  overflow:auto;
  background:#fff;
  border-radius:18px;
  box-shadow:0 30px 80px rgba(0,0,0,.4);
}

.beauty-lightbox-close{
  position:sticky;
  float:right;
  top:12px;
  right:12px;
  z-index:5;
  width:42px;
  height:42px;
  margin:12px 12px -54px 0;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:#082b3d;
  color:#fff;
  text-decoration:none;
  font:500 28px/1 Inter,sans-serif;
  box-shadow:0 8px 20px rgba(0,0,0,.22);
}

.beauty-lightbox-header{
  padding:22px 70px 16px 24px;
}

.beauty-lightbox-header>span{
  display:block;
  margin-bottom:5px;
  color:#3ba32e;
  font:800 9px Manrope,Inter,sans-serif;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.beauty-lightbox-header h2{
  margin:0 0 7px;
  color:#143443;
  font:800 25px/1.14 Manrope,Inter,sans-serif;
  letter-spacing:-.035em;
}

.beauty-lightbox-header p{
  margin:0;
  color:#64767e;
  font-size:11px;
  line-height:1.6;
}

.beauty-lightbox-image-link{
  display:block;
  width:100%;
  background:#eef2f0;
  cursor:zoom-in;
  border-top:1px solid #e4ebe7;
  border-bottom:1px solid #e4ebe7;
}

.beauty-lightbox-image-link img{
  display:block;
  width:100%;
  height:auto;
  max-height:76vh;
  object-fit:contain;
  margin:0 auto;
}

.beauty-lightbox-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:14px 24px 18px;
}

.beauty-lightbox-footer p{
  max-width:820px;
  margin:0;
  color:#60727b;
  font-size:10px;
  line-height:1.6;
}

@media(max-width:700px){
  .beauty-lightbox{
    padding:6px;
  }

  .beauty-lightbox-panel{
    width:99vw;
    max-height:98vh;
    border-radius:14px;
  }

  .beauty-lightbox-header{
    padding:20px 58px 14px 18px;
  }

  .beauty-lightbox-header h2{
    font-size:21px;
  }

  .beauty-lightbox-image-link img{
    max-height:72vh;
  }

  .beauty-lightbox-footer{
    align-items:flex-start;
    flex-direction:column;
    padding:14px 18px 18px;
  }
}


/* =========================================================
   YDP ROLE-BASED PRICING
   ========================================================= */

.license-type-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin:30px 0 26px;
}

.license-type-card{
  position:relative;
  padding:26px 28px;
  border:1px solid #dbe5e0;
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 30px rgba(15,47,63,.055);
}

.field-license-card{
  background:
    radial-gradient(circle at 90% 16%,rgba(88,200,61,.11),transparent 28%),
    #fff;
  border-color:#cfe2ca;
}

.license-type-label{
  display:inline-flex;
  margin-bottom:10px;
  padding:6px 9px;
  border-radius:999px;
  background:#edf7ea;
  color:#36982b;
  font:800 8px Manrope,Inter,sans-serif;
  letter-spacing:.065em;
  text-transform:uppercase;
}

.license-type-card h3{
  margin:0 0 8px;
  color:#143443;
  font:800 23px/1.15 Manrope,Inter,sans-serif;
  letter-spacing:-.03em;
}

.license-type-card>p{
  margin:0 0 16px;
  color:#63757e;
  font-size:11px;
  line-height:1.7;
}

.license-type-card ul{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:8px;
}

.license-type-card li{
  position:relative;
  padding-left:17px;
  color:#536a75;
  font-size:10px;
  line-height:1.5;
}

.license-type-card li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:#45ae32;
  font-weight:800;
}

.field-price-line{
  display:flex;
  align-items:flex-end;
  gap:5px;
  margin:2px 0 18px;
}

.field-price-line .currency{
  margin-bottom:6px;
  color:#153543;
  font-size:18px;
  font-weight:700;
}

.field-price-line strong{
  color:#0b2c3c;
  font:800 42px/1 Manrope,Inter,sans-serif;
  letter-spacing:-.05em;
}

.field-price-line div{
  display:flex;
  flex-direction:column;
  margin:0 0 4px 2px;
  color:#5e727c;
}

.field-price-line div span{
  font-size:10px;
  font-weight:700;
}

.field-price-line div small{
  font-size:9px;
}

.operations-pricing-label{
  display:flex;
  justify-content:space-between;
  align-items:end;
  margin:32px 0 15px;
}

.operations-pricing-label span{
  display:block;
  color:#123442;
  font:800 18px Manrope,Inter,sans-serif;
}

.operations-pricing-label p{
  margin:4px 0 0;
  color:#6a7c84;
  font-size:10px;
}

.pricing-example{
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:32px;
  align-items:center;
  margin:30px 0 20px;
  padding:26px 28px;
  border:1px solid #dce6e1;
  border-radius:18px;
  background:
    radial-gradient(circle at 85% 20%,rgba(88,200,61,.08),transparent 28%),
    linear-gradient(135deg,#f8fbf9,#fff);
}

.pricing-example-copy h3{
  margin:0 0 7px;
  color:#143443;
  font:800 21px/1.2 Manrope,Inter,sans-serif;
  letter-spacing:-.03em;
}

.pricing-example-copy p{
  margin:0;
  color:#657780;
  font-size:11px;
  line-height:1.65;
}

.pricing-example-maths{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}

.pricing-example-maths div{
  padding:13px 14px;
  border-radius:12px;
  background:#fff;
  border:1px solid #e1e9e5;
}

.pricing-example-maths span,
.pricing-example-maths strong{
  display:block;
}

.pricing-example-maths span{
  margin-bottom:4px;
  color:#788990;
  font-size:8px;
  text-transform:uppercase;
  letter-spacing:.05em;
  font-weight:700;
}

.pricing-example-maths strong{
  color:#173846;
  font:800 12px Manrope,Inter,sans-serif;
}

.pricing-example-maths .pricing-example-total{
  background:#082b3d;
  border-color:#082b3d;
}

.pricing-example-maths .pricing-example-total span{
  color:#a9bcc4;
}

.pricing-example-maths .pricing-example-total strong{
  color:#fff;
  font-size:15px;
}

@media(max-width:850px){
  .license-type-grid{
    grid-template-columns:1fr;
  }

  .pricing-example{
    grid-template-columns:1fr;
  }
}

@media(max-width:620px){
  .license-type-card{
    padding:22px 20px;
  }

  .pricing-example{
    padding:22px 20px;
  }

  .pricing-example-maths{
    grid-template-columns:1fr;
  }
}

/* ===== Customer Portal Login Responsive Behaviour ===== */
@media(max-width:1050px){
  .ydp-customer-login{
    margin-left:auto;
  }
}

@media(max-width:780px){
  .ydp-customer-login{
    display:none;
  }

  .ydp-main-nav .ydp-mobile-login{
    display:block !important;
    margin-top:8px;
    padding:12px 14px !important;
    border:1px solid rgba(117,213,62,.46);
    border-radius:7px;
    background:rgba(67,181,45,.10);
    color:#8ee45f !important;
    font-weight:700 !important;
  }
}



/* =========================================================
   2026-08-26 — HOMEPAGE LAYOUT REFINEMENT
   ========================================================= */

.features-link-strip{
  padding:26px 0 10px;
  background:#fff;
}

.features-link-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:30px;
  padding:24px 28px;
  color:#153343;
  text-decoration:none;
  border:1px solid #dce8e1;
  border-radius:18px;
  background:linear-gradient(135deg,#f8fcf8 0%,#ffffff 62%);
  box-shadow:0 10px 30px rgba(11,44,57,.05);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}

.features-link-card:hover{
  transform:translateY(-2px);
  border-color:#b9dcb2;
  box-shadow:0 16px 34px rgba(11,44,57,.09);
}

.features-link-kicker{
  display:block;
  margin-bottom:6px;
  color:#47b92f;
  font:800 9px Manrope,Inter,sans-serif;
  text-transform:uppercase;
  letter-spacing:.1em;
}

.features-link-card strong{
  display:block;
  font:800 22px/1.25 Manrope,Inter,sans-serif;
}

.features-link-card p{
  max-width:760px;
  margin:7px 0 0;
  color:#667980;
  font-size:13px;
  line-height:1.55;
}

.features-link-action{
  white-space:nowrap;
  padding:11px 15px;
  border-radius:10px;
  background:#153343;
  color:#fff;
  font-size:11px;
  font-weight:800;
}

.context-section{
  padding:74px 0;
  background:#f7faf8;
}

.context-card{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(420px,1.12fr);
  gap:50px;
  align-items:center;
  padding:54px;
  border-radius:28px;
  overflow:hidden;
  position:relative;
  background:
    radial-gradient(circle at 100% 0%,rgba(82,201,49,.16),transparent 35%),
    linear-gradient(135deg,#082438 0%,#0b3042 58%,#123d35 100%);
  box-shadow:0 25px 70px rgba(7,34,50,.16);
}

.context-card::after{
  content:"";
  position:absolute;
  width:320px;
  height:320px;
  right:-120px;
  bottom:-180px;
  border-radius:50%;
  background:rgba(95,204,53,.1);
  pointer-events:none;
}

.context-copy{
  position:relative;
  z-index:2;
}

.context-copy .eyebrow{
  color:#6fe14e;
}

.context-copy h2{
  max-width:620px;
  margin:8px 0 16px;
  color:#fff;
  font:800 clamp(31px,3.4vw,48px)/1.06 Manrope,Inter,sans-serif;
  letter-spacing:-.035em;
}

.context-intro{
  max-width:600px;
  margin:0;
  color:#c8d7dc;
  font-size:14px;
  line-height:1.7;
}

.context-points{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px 18px;
  margin:27px 0 28px;
}

.context-points div{
  display:flex;
  align-items:center;
  gap:9px;
  color:#fff;
  font-size:11px;
}

.context-points span{
  width:22px;
  height:22px;
  flex:0 0 22px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#55c83e;
  color:#fff;
  font-size:11px;
  font-weight:900;
}

.context-actions{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
}

.context-text-link{
  color:#d8e6e9;
  font-size:11px;
  font-weight:800;
  text-decoration:none;
}

.context-text-link:hover{
  color:#fff;
}

.context-visual{
  min-width:0;
  position:relative;
  z-index:2;
}

.context-browser{
  overflow:hidden;
  border:1px solid rgba(255,255,255,.18);
  border-radius:17px;
  background:#fff;
  box-shadow:0 24px 55px rgba(0,0,0,.24);
  transform:perspective(1400px) rotateY(-2deg) rotateX(1deg);
  transform-origin:center;
}

.context-browser-bar{
  min-height:42px;
  padding:0 14px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:12px;
  background:#f2f5f6;
  border-bottom:1px solid #dfe6e8;
}

.context-browser-bar>strong{
  color:#54666d;
  font-size:9px;
  text-align:center;
}

.context-dots{
  display:flex;
  gap:5px;
}

.context-dots i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#c7d0d3;
}

.context-live{
  justify-self:end;
  display:flex;
  align-items:center;
  gap:5px;
  color:#53705b;
  font-size:8px;
  font-weight:800;
}

.context-live i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#4fc13b;
}

.context-image-wrap{
  background:#fff;
  padding:8px;
}

.context-image-wrap img{
  width:100%;
  height:auto;
  display:block;
  border-radius:10px;
}

.context-caption{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  margin:13px 6px 0;
  color:#fff;
}

.context-caption span{
  color:#6ee34f;
  font-size:8px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.context-caption strong{
  font-size:10px;
  font-weight:700;
}

/* Make the beauty adaptation block reliably two-column on desktop */
.beyond-trades-panel-with-preview{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(360px,460px) !important;
  align-items:center !important;
  gap:38px !important;
}

/* Modal hardening */
.adaptation-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:99990 !important;
  display:none !important;
  padding:28px !important;
  align-items:center !important;
  justify-content:center !important;
}

.adaptation-modal.is-open{
  display:flex !important;
}

.adaptation-modal-backdrop{
  position:absolute !important;
  inset:0 !important;
  background:rgba(3,18,29,.76) !important;
  backdrop-filter:blur(5px);
}

.adaptation-modal-dialog{
  position:relative !important;
  z-index:2 !important;
  width:min(1120px,94vw) !important;
  max-height:92vh !important;
  overflow:auto !important;
  border-radius:20px !important;
  background:#fff !important;
  box-shadow:0 30px 90px rgba(0,0,0,.34) !important;
}

.adaptation-modal-image{
  display:block !important;
  width:100% !important;
  max-height:64vh !important;
  object-fit:contain !important;
  background:#f3f7f4 !important;
}

.image-only-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:99999 !important;
  display:none !important;
  align-items:center !important;
  justify-content:center !important;
  padding:24px !important;
  background:rgba(2,15,24,.94) !important;
}

.image-only-modal.is-open{
  display:flex !important;
}

.image-only-modal img{
  max-width:96vw !important;
  max-height:92vh !important;
  object-fit:contain !important;
}

@media(max-width:980px){
  .context-card{
    grid-template-columns:1fr;
    gap:34px;
    padding:38px;
  }

  .context-browser{
    transform:none;
  }

  .beyond-trades-panel-with-preview{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:680px){
  .features-link-card{
    grid-template-columns:1fr;
    gap:18px;
    padding:21px;
  }

  .features-link-action{
    justify-self:start;
  }

  .context-section{
    padding:50px 0;
  }

  .context-card{
    padding:28px 22px;
    border-radius:21px;
  }

  .context-points{
    grid-template-columns:1fr;
  }

  .context-copy h2{
    font-size:31px;
  }

  .adaptation-modal{
    padding:10px !important;
  }

  .adaptation-modal-dialog{
    width:100% !important;
    max-height:96vh !important;
  }
}


/* =========================================================
   FEATURES PAGE — PORTAL VIEWS
   ========================================================= */

.portal-views-section{
  padding:74px 0;
  background:#f7faf8;
}

.portal-view-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
  margin-top:28px;
}

.portal-view-card{
  overflow:hidden;
  border:1px solid #dfe8e3;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 30px rgba(10,45,58,.06);
}

.portal-view-image{
  min-height:240px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:12px;
  background:#eef5f1;
  border-bottom:1px solid #e2ebe6;
}

.portal-view-image img{
  display:block;
  width:100%;
  max-height:360px;
  object-fit:contain;
  border-radius:10px;
}

.portal-view-copy{
  padding:20px 21px 22px;
}

.portal-view-copy>span{
  color:#4ab633;
  font:800 8px Manrope,Inter,sans-serif;
  text-transform:uppercase;
  letter-spacing:.09em;
}

.portal-view-copy h3{
  margin:5px 0 8px;
  color:#153443;
  font:800 19px Manrope,Inter,sans-serif;
}

.portal-view-copy p{
  margin:0;
  color:#697a81;
  font-size:12px;
  line-height:1.55;
}

.portal-view-large{
  grid-column:span 1;
}

@media(max-width:760px){
  .portal-view-grid{
    grid-template-columns:1fr;
  }

  .portal-view-image{
    min-height:190px;
  }
}


/* =========================================================
   YDP COMPLETE PLATFORM PRICING V2
   ========================================================= */

.ydp-pricing-v2{
  background:
    radial-gradient(circle at 88% 7%,rgba(67,181,45,.10),transparent 25%),
    linear-gradient(180deg,#f6faf7 0%,#fff 92%);
}

.pricing-head-v2{
  margin-bottom:24px;
}

.pricing-value-strip{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:9px 12px;
  margin:0 auto 26px;
  max-width:1100px;
}

.pricing-value-strip span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 11px;
  border:1px solid #dce8dc;
  border-radius:999px;
  background:#fff;
  color:#52636d;
  font-size:10px;
  font-weight:700;
}

.pricing-value-strip i{
  width:18px;
  height:18px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#edf8e9;
  color:#31a51e;
  font-style:normal;
  font-size:10px;
}

.pricing-core-layout{
  display:grid;
  grid-template-columns:minmax(0,1.75fr) minmax(270px,.75fr);
  gap:18px;
  align-items:stretch;
}

.pricing-core-card{
  position:relative;
  overflow:hidden;
  padding:30px;
  border-radius:22px;
  background:linear-gradient(135deg,#061d2d 0%,#082d41 100%);
  color:#fff;
  box-shadow:0 22px 55px rgba(8,35,53,.18);
}

.pricing-core-card:after{
  content:"";
  position:absolute;
  width:330px;
  height:330px;
  border-radius:50%;
  right:-155px;
  top:-175px;
  background:radial-gradient(circle,rgba(77,190,50,.23),transparent 68%);
  pointer-events:none;
}

.pricing-core-badge{
  display:inline-flex;
  position:relative;
  z-index:1;
  padding:6px 9px;
  border-radius:999px;
  background:rgba(95,203,68,.12);
  border:1px solid rgba(111,215,85,.27);
  color:#82e66c;
  font-size:8px;
  font-weight:900;
  letter-spacing:.11em;
}

.pricing-core-heading{
  position:relative;
  z-index:1;
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:22px;
  padding:18px 0 22px;
  border-bottom:1px solid rgba(255,255,255,.11);
}

.pricing-core-heading h3{
  margin:0;
  font-size:28px;
  line-height:1.05;
  letter-spacing:-.035em;
}

.pricing-core-heading p{
  margin:7px 0 0;
  color:#b9cbd3;
  font-size:11px;
}

.pricing-main-price{
  display:flex;
  align-items:flex-end;
  gap:4px;
  white-space:nowrap;
}

.pricing-main-price .pricing-currency{
  align-self:flex-start;
  padding-top:9px;
  color:#76dc5a;
  font-size:22px;
  font-weight:800;
}

.pricing-main-price>strong{
  font-family:Manrope,Inter,sans-serif;
  font-size:58px;
  line-height:.85;
  letter-spacing:-.06em;
}

.pricing-main-price>div{
  display:flex;
  flex-direction:column;
  padding:0 0 3px 5px;
  color:#dce7eb;
  font-size:10px;
  font-weight:800;
}

.pricing-main-price small{
  color:#849ba6;
  font-size:7px;
  font-weight:600;
  margin-top:2px;
}

.pricing-included-users{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin:20px 0;
}

.pricing-included-users>div{
  padding:14px 15px;
  border-radius:13px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.09);
}

.pricing-included-users span,
.pricing-included-users small{
  display:block;
}

.pricing-included-users span{
  color:#9eb1ba;
  font-size:8px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.07em;
}

.pricing-included-users strong{
  display:block;
  margin:4px 0 2px;
  font-size:18px;
}

.pricing-included-users small{
  color:#8299a4;
  font-size:8px;
}

.pricing-feature-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  padding:0 0 20px;
}

.pricing-feature-columns ul{
  list-style:none;
  margin:0;
  padding:0;
}

.pricing-feature-columns li{
  position:relative;
  padding:6px 0 6px 23px;
  color:#d6e1e5;
  font-size:10px;
  line-height:1.45;
}

.pricing-feature-columns li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:6px;
  color:#76dc5a;
  font-weight:900;
}

.pricing-core-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.11);
}

.pricing-annual-note span,
.pricing-annual-note small{
  display:block;
}

.pricing-annual-note span{
  color:#83df6d;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
}

.pricing-annual-note strong{
  display:block;
  margin:3px 0 1px;
  font-size:16px;
}

.pricing-annual-note small{
  color:#879fa9;
  font-size:8px;
}

.pricing-scale-card{
  display:flex;
  flex-direction:column;
  padding:26px;
  border:1px solid #dfe6e9;
  border-radius:22px;
  background:#fff;
  box-shadow:0 15px 35px rgba(11,39,56,.07);
}

.pricing-scale-kicker,
.pricing-setup-kicker{
  color:#36a51f;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.1em;
}

.pricing-scale-card h3{
  margin:7px 0 8px;
  font-size:22px;
  line-height:1.1;
}

.pricing-scale-card>p{
  margin:0 0 18px;
  color:#697a83;
  font-size:10px;
  line-height:1.55;
}

.pricing-scale-row{
  display:flex;
  justify-content:space-between;
  gap:15px;
  padding:15px 0;
  border-top:1px solid #e7ecef;
}

.pricing-scale-row>div strong,
.pricing-scale-row>div small{
  display:block;
}

.pricing-scale-row>div strong{
  font-size:10px;
}

.pricing-scale-row>div small{
  margin-top:2px;
  color:#84939a;
  font-size:8px;
}

.pricing-scale-row>span{
  color:#08283a;
  font-size:24px;
  font-weight:900;
  white-space:nowrap;
}

.pricing-scale-row>span small{
  color:#829098;
  font-size:8px;
  font-weight:700;
}

.pricing-scale-example{
  margin-top:15px;
  padding:14px;
  border-radius:13px;
  background:#eff8ed;
  border:1px solid #d9ead4;
}

.pricing-scale-example span{
  color:#329b1e;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase;
}

.pricing-scale-example p{
  margin:3px 0;
  color:#607079;
  font-size:9px;
}

.pricing-scale-example strong{
  font-size:18px;
}

.pricing-scale-small{
  margin-top:auto!important;
  padding-top:16px;
  font-size:8px!important;
}

.pricing-setup-v2{
  margin-top:20px;
  padding:25px 27px;
  border:1px solid #dce5e7;
  border-radius:20px;
  background:#fff;
  box-shadow:0 11px 30px rgba(12,42,58,.05);
}

.pricing-setup-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:18px;
}

.pricing-setup-header h3{
  margin:5px 0 0;
  font-size:23px;
}

.pricing-setup-price{
  color:#08283a;
  font-family:Manrope,Inter,sans-serif;
  font-size:34px;
  font-weight:900;
  letter-spacing:-.04em;
}

.pricing-setup-intro{
  max-width:760px;
  color:#687982;
  font-size:10px;
  line-height:1.6;
}

.pricing-setup-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin:18px 0;
}

.pricing-setup-grid>div{
  display:flex;
  align-items:flex-start;
  gap:8px;
  padding:12px;
  border-radius:12px;
  background:#f7f9f8;
  border:1px solid #e7ece9;
}

.pricing-setup-grid i{
  flex:0 0 20px;
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#e9f7e5;
  color:#32a41e;
  font-style:normal;
  font-size:9px;
  font-weight:900;
}

.pricing-setup-grid strong,
.pricing-setup-grid small{
  display:block;
}

.pricing-setup-grid strong{
  color:#183241;
  font-size:9px;
}

.pricing-setup-grid small{
  margin-top:2px;
  color:#798991;
  font-size:7.5px;
  line-height:1.45;
}

.pricing-boundaries{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:14px;
}

.pricing-boundary-card{
  display:flex;
  gap:12px;
  padding:16px;
  border-radius:14px;
  background:#f8faf9;
  border:1px solid #e1e7e5;
}

.pricing-boundary-icon{
  flex:0 0 34px;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#eaf6e6;
  color:#309c1d;
  font-weight:900;
}

.pricing-boundary-card strong{
  font-size:9px;
}

.pricing-boundary-card p{
  margin:3px 0 0;
  color:#78878e;
  font-size:8px;
  line-height:1.5;
}

.pricing-final-note{
  margin:13px 0 0;
  text-align:center;
  color:#8a979e;
  font-size:8px;
}

@media(max-width:980px){
  .pricing-core-layout{grid-template-columns:1fr}
  .pricing-setup-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:700px){
  .pricing-core-card,.pricing-scale-card,.pricing-setup-v2{padding:22px}
  .pricing-core-heading{align-items:flex-start;flex-direction:column}
  .pricing-main-price>strong{font-size:50px}
  .pricing-included-users,.pricing-feature-columns,.pricing-boundaries{grid-template-columns:1fr}
  .pricing-core-footer{align-items:flex-start;flex-direction:column}
  .pricing-setup-header{align-items:flex-start;flex-direction:column}
  .pricing-setup-grid{grid-template-columns:1fr}
}


/* =========================================================
   MOBILE OPTIMISATION PASS
   ========================================================= */

html{
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;
}

body{
  overflow-x:hidden;
}

img,svg,video,canvas{
  max-width:100%;
  height:auto;
}

button,a,input,select,textarea{
  -webkit-tap-highlight-color:transparent;
}

.mobile-menu-toggle{
  display:none;
}

@media(max-width:860px){

  .container,
  .nav-wrap,
  .hero-inner,
  .section-inner,
  .pricing-head,
  .footer-inner{
    width:min(100% - 28px, 100%)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  header,
  .site-header{
    position:sticky;
    top:0;
    z-index:1000;
    background:rgba(255,255,255,.97);
    backdrop-filter:blur(10px);
  }

  .nav-wrap,
  .header-inner{
    min-height:68px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
  }

  .brand,
  .site-brand,
  .logo{
    min-width:0;
  }

  .brand img,
  .site-brand img,
  .logo img{
    max-height:46px;
    width:auto;
  }

  .mobile-menu-toggle{
    display:flex;
    flex:0 0 44px;
    width:44px;
    height:44px;
    border:1px solid #dfe6e9;
    border-radius:11px;
    background:#fff;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:4px;
    cursor:pointer;
  }

  .mobile-menu-toggle span{
    width:19px;
    height:2px;
    border-radius:2px;
    background:#0c2b3c;
    transition:.2s ease;
  }

  .mobile-nav-open .mobile-menu-toggle span:nth-child(1){
    transform:translateY(6px) rotate(45deg);
  }
  .mobile-nav-open .mobile-menu-toggle span:nth-child(2){
    opacity:0;
  }
  .mobile-nav-open .mobile-menu-toggle span:nth-child(3){
    transform:translateY(-6px) rotate(-45deg);
  }

  .main-nav{
    display:none!important;
    position:absolute!important;
    left:14px!important;
    right:14px!important;
    top:66px!important;
    padding:12px!important;
    border:1px solid #dfe6e9!important;
    border-radius:16px!important;
    background:#fff!important;
    box-shadow:0 18px 40px rgba(12,42,58,.16)!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:4px!important;
  }

  .mobile-nav-open .main-nav{
    display:flex!important;
  }

  .main-nav a{
    display:flex!important;
    align-items:center!important;
    min-height:46px!important;
    padding:11px 12px!important;
    border-radius:10px!important;
    width:100%!important;
  }

  .header-actions,
  .nav-actions{
    display:none!important;
  }

  .hero{
    padding-top:42px!important;
    padding-bottom:42px!important;
  }

  .hero-inner,
  .hero-grid,
  .hero-layout{
    grid-template-columns:1fr!important;
    gap:26px!important;
  }

  .hero-copy{
    text-align:left!important;
  }

  .hero h1,
  .hero-title{
    font-size:clamp(36px,11vw,52px)!important;
    line-height:.98!important;
    letter-spacing:-.045em!important;
    max-width:100%!important;
  }

  .hero p,
  .hero-subtitle,
  .hero-copy p{
    font-size:15px!important;
    line-height:1.6!important;
    max-width:none!important;
  }

  .hero-actions,
  .cta-row,
  .button-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    width:100%!important;
  }

  .hero-actions .btn,
  .cta-row .btn,
  .button-row .btn{
    width:100%!important;
    min-height:50px!important;
    justify-content:center!important;
  }

  .hero-proof,
  .proof-row,
  .trust-row{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:8px!important;
  }

  .hero-visual,
  .hero-media,
  .hero-card,
  .dashboard-preview{
    width:100%!important;
    max-width:none!important;
  }

  section,
  .section{
    padding-top:48px!important;
    padding-bottom:48px!important;
  }

  .section-title,
  .pricing-title{
    font-size:clamp(30px,9vw,42px)!important;
    line-height:1.05!important;
    max-width:none!important;
  }

  .section-intro,
  .pricing-intro{
    font-size:14px!important;
    line-height:1.6!important;
    max-width:none!important;
  }

  .features-grid,
  .feature-grid,
  .benefits-grid,
  .demo-grid,
  .reviews-grid,
  .contact-grid,
  .footer-grid{
    grid-template-columns:1fr!important;
  }

  .feature-card,
  .benefit-card,
  .review-card{
    padding:20px!important;
  }

  .pricing-head-v2{
    display:block!important;
  }

  .pricing-value-strip{
    justify-content:flex-start!important;
  }

  .pricing-value-strip span{
    width:100%!important;
    justify-content:flex-start!important;
    border-radius:12px!important;
    padding:10px 12px!important;
  }

  .pricing-core-layout{
    grid-template-columns:1fr!important;
  }

  .pricing-core-card,
  .pricing-scale-card,
  .pricing-setup-v2{
    padding:20px!important;
    border-radius:18px!important;
  }

  .pricing-core-heading{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:18px!important;
  }

  .pricing-main-price{
    width:100%!important;
  }

  .pricing-main-price>strong{
    font-size:54px!important;
  }

  .pricing-included-users,
  .pricing-feature-columns,
  .pricing-boundaries,
  .pricing-setup-grid{
    grid-template-columns:1fr!important;
  }

  .pricing-core-footer{
    flex-direction:column!important;
    align-items:stretch!important;
  }

  .pricing-core-footer .btn{
    width:100%!important;
    justify-content:center!important;
  }

  .pricing-scale-row{
    align-items:flex-start!important;
  }

  .pricing-scale-row>span{
    font-size:22px!important;
  }

  .pricing-setup-header{
    flex-direction:column!important;
    align-items:flex-start!important;
  }

  .pricing-setup-price{
    font-size:38px!important;
  }

  .pricing-boundary-card{
    align-items:flex-start!important;
  }

  details summary{
    min-height:48px;
    display:flex;
    align-items:center;
  }

  input,
  select,
  textarea,
  button{
    font-size:16px!important;
  }

  input,
  select,
  textarea{
    width:100%!important;
    min-height:46px!important;
  }

  textarea{
    min-height:120px!important;
  }

  form .btn,
  form button[type="submit"]{
    width:100%!important;
    min-height:50px!important;
  }

  .contact-card,
  .form-card,
  .contact-form{
    padding:20px!important;
  }

  table{
    min-width:720px;
  }

  .table-wrap,
  .table-scroll,
  .responsive-table{
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }

  .footer{
    padding-top:38px!important;
    padding-bottom:28px!important;
  }

  .footer-grid{
    gap:24px!important;
  }

  .footer-links{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px 16px!important;
  }

  .footer-bottom{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:10px!important;
  }
}

@media(max-width:520px){

  .container,
  .nav-wrap,
  .hero-inner,
  .section-inner,
  .pricing-head,
  .footer-inner{
    width:min(100% - 22px, 100%)!important;
  }

  .hero{
    padding-top:32px!important;
    padding-bottom:34px!important;
  }

  .hero h1,
  .hero-title{
    font-size:clamp(34px,12vw,46px)!important;
  }

  .section-title,
  .pricing-title{
    font-size:clamp(28px,10vw,36px)!important;
  }

  .pricing-main-price>strong{
    font-size:48px!important;
  }

  .pricing-core-card,
  .pricing-scale-card,
  .pricing-setup-v2,
  .feature-card,
  .benefit-card,
  .review-card,
  .contact-card,
  .form-card{
    padding:18px!important;
  }

  .pricing-value-strip{
    gap:7px!important;
  }

  .footer-links{
    grid-template-columns:1fr!important;
  }

  .btn,
  button{
    min-height:48px;
  }
}


/* =========================================================
   MOBILE MENU CONTRAST / LAYOUT FIX
   ========================================================= */
@media(max-width:860px){

  .main-nav{
    max-height:calc(100vh - 92px)!important;
    overflow-y:auto!important;
    background:#ffffff!important;
    color:#0b2c3d!important;
    padding:10px!important;
  }

  .main-nav a,
  .main-nav a:visited{
    color:#0b2c3d!important;
    background:#ffffff!important;
    border:1px solid transparent!important;
    text-decoration:none!important;
    font-weight:800!important;
    opacity:1!important;
  }

  .main-nav a:hover,
  .main-nav a:focus{
    color:#0b2c3d!important;
    background:#f2f8f1!important;
    border-color:#d8ead3!important;
  }

  .main-nav .btn,
  .main-nav .button,
  .main-nav a.btn,
  .main-nav a.button{
    color:#0b2c3d!important;
    background:#f5fbf3!important;
    border:1px solid #a9dc9d!important;
  }

  .main-nav .btn-primary,
  .main-nav a.btn-primary{
    color:#ffffff!important;
    background:#35b723!important;
    border-color:#35b723!important;
  }

  .main-nav li,
  .main-nav ul{
    color:#0b2c3d!important;
    background:transparent!important;
  }

  .mobile-nav-open::before{
    content:"";
    position:fixed;
    inset:68px 0 0 0;
    background:rgba(4,24,36,.42);
    z-index:998;
  }

  .mobile-nav-open .main-nav{
    z-index:999!important;
  }

  .mobile-menu-toggle{
    position:relative;
    z-index:1001;
    background:#ffffff!important;
  }
}


/* =========================================================
   MOBILE MENU BRAND COLOUR PASS
   ========================================================= */
@media(max-width:860px){

  .main-nav{
    padding:12px!important;
    border-top:5px solid #35b723!important;
  }

  .main-nav a,
  .main-nav a:visited{
    position:relative;
    color:#0b2c3d!important;
    background:#ffffff!important;
    border:1px solid #e4ecef!important;
    font-weight:800!important;
    padding-left:16px!important;
  }

  .main-nav a::before{
    content:"";
    width:5px;
    height:20px;
    border-radius:999px;
    background:#35b723;
    margin-right:10px;
    flex:0 0 5px;
  }

  .main-nav a:hover,
  .main-nav a:focus{
    color:#0b2c3d!important;
    background:#eff9ec!important;
    border-color:#bfe6b6!important;
  }

  .main-nav a[href*="customer-login"]{
    background:#f1f8ff!important;
    border-color:#cfdfea!important;
  }

  .main-nav a[href*="customer-login"]::before{
    background:#0c4f6c;
  }

  .main-nav .btn-primary,
  .main-nav a.btn-primary{
    color:#ffffff!important;
    background:linear-gradient(180deg,#42c52d,#31a91f)!important;
    border-color:#31a91f!important;
    justify-content:center!important;
    box-shadow:0 8px 18px rgba(53,183,35,.20)!important;
  }

  .main-nav .btn-primary::before,
  .main-nav a.btn-primary::before{
    display:none!important;
  }

  .mobile-menu-toggle{
    border-color:#cfdde2!important;
    box-shadow:0 5px 14px rgba(9,43,62,.06);
  }

  .mobile-menu-toggle span{
    background:#0b2c3d!important;
  }

  .mobile-nav-open .mobile-menu-toggle{
    background:#f4fbf2!important;
    border-color:#9fd792!important;
  }

}


/* =========================================================
   MOBILE HEADER / MENU BUTTON STAYS WITH USER
   ========================================================= */
@media(max-width:860px){

  header,
  .site-header{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    z-index:1200!important;
    background:rgba(255,255,255,.98)!important;
    box-shadow:0 1px 0 rgba(10,42,59,.08)!important;
    backdrop-filter:blur(12px)!important;
  }

  body{
    padding-top:68px!important;
  }

  .mobile-menu-toggle{
    position:relative!important;
    z-index:1202!important;
  }

  .main-nav{
    position:fixed!important;
    top:76px!important;
    left:14px!important;
    right:14px!important;
    z-index:1201!important;
    max-height:calc(100vh - 92px)!important;
    overflow-y:auto!important;
  }

  .mobile-nav-open::before{
    top:68px!important;
    z-index:1199!important;
  }

  /* Anchor links land below the fixed mobile header */
  section[id],
  [id="pricing"],
  [id="reviews"],
  [id="contact"]{
    scroll-margin-top:86px!important;
  }
}



/* =========================================================
   MOBILE CROSS-PAGE NAV + CONTACT CONTRAST FIX
   ========================================================= */

.contact-details-card{
  color:#0b2c3d!important;
}

.contact-details-card strong{
  color:#0b2c3d!important;
}

.contact-details-card a,
.contact-details-card a:visited{
  color:#0b4f6c!important;
  opacity:1!important;
}

.contact-details-card a:hover,
.contact-details-card a:focus{
  color:#2ea51d!important;
}

.contact-details-card .ydp-social-link,
.contact-details-card .ydp-social-link:visited{
  color:#0b4f6c!important;
  border-color:#b9d5df!important;
  background:#ffffff!important;
  opacity:1!important;
}

@media(max-width:860px){

  /* Home uses body.mobile-nav-open; Features uses .main-nav.open.
     Support both so navigation behaves identically on every page. */
  .nav-toggle,
  .mobile-menu-toggle{
    display:flex!important;
    flex:0 0 44px!important;
    width:44px!important;
    height:44px!important;
    border:1px solid #cfdde2!important;
    border-radius:11px!important;
    background:#ffffff!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    gap:4px!important;
    cursor:pointer!important;
    position:relative!important;
    z-index:1202!important;
    color:#0b2c3d!important;
    font-size:0!important;
  }

  .nav-toggle span,
  .mobile-menu-toggle span{
    display:block!important;
    width:19px!important;
    height:2px!important;
    border-radius:2px!important;
    background:#0b2c3d!important;
    transition:.2s ease!important;
  }

  .nav-toggle[aria-expanded="true"] span:nth-child(1),
  .mobile-menu-toggle[aria-expanded="true"] span:nth-child(1){
    transform:translateY(6px) rotate(45deg)!important;
  }

  .nav-toggle[aria-expanded="true"] span:nth-child(2),
  .mobile-menu-toggle[aria-expanded="true"] span:nth-child(2){
    opacity:0!important;
  }

  .nav-toggle[aria-expanded="true"] span:nth-child(3),
  .mobile-menu-toggle[aria-expanded="true"] span:nth-child(3){
    transform:translateY(-6px) rotate(-45deg)!important;
  }

  .main-nav.open{
    display:flex!important;
    position:fixed!important;
    top:76px!important;
    left:14px!important;
    right:14px!important;
    z-index:1201!important;
    max-height:calc(100vh - 92px)!important;
    overflow-y:auto!important;
    padding:12px!important;
    border:1px solid #dfe6e9!important;
    border-top:5px solid #35b723!important;
    border-radius:16px!important;
    background:#ffffff!important;
    box-shadow:0 18px 40px rgba(12,42,58,.16)!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:4px!important;
  }

  body:has(.main-nav.open)::before{
    content:"";
    position:fixed;
    inset:68px 0 0 0;
    z-index:1199;
    background:rgba(4,24,36,.42);
  }

  .contact-details-card{
    background:#ffffff!important;
    border:1px solid #d8e5dd!important;
    box-shadow:0 12px 26px rgba(10,46,61,.07)!important;
  }

  .contact-details-card strong{
    color:#102f40!important;
  }

  .contact-details-card a,
  .contact-details-card a:visited{
    color:#0b4f6c!important;
    font-weight:800!important;
  }
}


/* =========================================================
   FINAL MOBILE NAV - HOME + FEATURES
   Single source of truth for open/closed states
   ========================================================= */
@media(max-width:860px){

  .nav-toggle,
  .mobile-menu-toggle{
    display:flex!important;
    flex:0 0 44px!important;
    width:44px!important;
    height:44px!important;
    padding:0!important;
    border:1px solid #cfdde2!important;
    border-radius:11px!important;
    background:#fff!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    gap:4px!important;
    position:relative!important;
    z-index:1302!important;
    cursor:pointer!important;
    font-size:0!important;
    color:transparent!important;
  }

  .nav-toggle span,
  .mobile-menu-toggle span{
    display:block!important;
    width:19px!important;
    height:2px!important;
    flex:0 0 2px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:2px!important;
    background:#0b2c3d!important;
    opacity:1!important;
    visibility:visible!important;
    transition:transform .2s ease, opacity .2s ease!important;
  }

  .nav-toggle[aria-expanded="true"] span:nth-child(1),
  .mobile-menu-toggle[aria-expanded="true"] span:nth-child(1){
    transform:translateY(6px) rotate(45deg)!important;
  }

  .nav-toggle[aria-expanded="true"] span:nth-child(2),
  .mobile-menu-toggle[aria-expanded="true"] span:nth-child(2){
    opacity:0!important;
  }

  .nav-toggle[aria-expanded="true"] span:nth-child(3),
  .mobile-menu-toggle[aria-expanded="true"] span:nth-child(3){
    transform:translateY(-6px) rotate(-45deg)!important;
  }

  .main-nav{
    display:none!important;
  }

  .main-nav.open,
  .mobile-nav-open .main-nav{
    display:flex!important;
    position:fixed!important;
    top:76px!important;
    left:14px!important;
    right:14px!important;
    z-index:1301!important;
    max-height:calc(100dvh - 92px)!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding:12px!important;
    border:1px solid #dfe6e9!important;
    border-top:5px solid #35b723!important;
    border-radius:16px!important;
    background:#fff!important;
    box-shadow:0 18px 40px rgba(12,42,58,.18)!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:6px!important;
    opacity:1!important;
    visibility:visible!important;
  }

  .main-nav.open a,
  .mobile-nav-open .main-nav a,
  .main-nav.open a:visited,
  .mobile-nav-open .main-nav a:visited{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:48px!important;
    padding:11px 14px!important;
    border:1px solid #e5ecef!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#0b2c3d!important;
    opacity:1!important;
    visibility:visible!important;
    font-size:15px!important;
    line-height:1.25!important;
    font-weight:800!important;
    text-decoration:none!important;
  }

  .main-nav.open a::before,
  .mobile-nav-open .main-nav a::before{
    content:""!important;
    display:block!important;
    width:5px!important;
    height:20px!important;
    flex:0 0 5px!important;
    margin-right:10px!important;
    border-radius:999px!important;
    background:#35b723!important;
  }

  .main-nav.open a.active,
  .mobile-nav-open .main-nav a.active{
    background:#eff9ec!important;
    border-color:#bfe6b6!important;
    color:#0b2c3d!important;
  }

  .main-nav.open a[href*="customer-login"],
  .mobile-nav-open .main-nav a[href*="customer-login"]{
    background:#f1f8ff!important;
    border-color:#cfdfeb!important;
  }

  .main-nav.open a[href*="customer-login"]::before,
  .mobile-nav-open .main-nav a[href*="customer-login"]::before{
    background:#0b4f6c!important;
  }

  body.mobile-nav-open{
    overflow:hidden!important;
  }

  body.mobile-nav-open::before{
    content:""!important;
    position:fixed!important;
    inset:68px 0 0 0!important;
    z-index:1299!important;
    background:rgba(4,24,36,.42)!important;
  }

  header,
  .site-header{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    z-index:1300!important;
  }
}


/* =========================================================
   REMOVE LEGACY DUPLICATE MOBILE MENU BUTTON
   ========================================================= */
@media(max-width:860px){
  .ydp-header .nav-toggle:not(.mobile-menu-toggle){
    display:none!important;
  }
}
