:root{--ink:#071a2d;--ink2:#0b2c46;--paper:#f6f9fb;--white:#fff;--text:#142b3d;--muted:#5d7181;--teal:#4fd1c5;--violet:#7c5cff;--line:#dfe7ec;--soft:#edf4f7;--shadow:0 22px 70px rgba(7,26,45,.12);--shadow2:0 12px 35px rgba(7,26,45,.09);--radius:28px;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--paper);line-height:1.65;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-4;background:radial-gradient(circle at 12% 0%,rgba(79,209,197,.1),transparent 28%),radial-gradient(circle at 90% 15%,rgba(124,92,255,.08),transparent 25%)}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}p{margin:0 0 1.15rem;color:var(--muted)}h1,h2,h3,h4{color:var(--ink);line-height:1.12;letter-spacing:0;margin:0 0 1rem}h1{font-size:clamp(2.75rem,6.8vw,5.6rem)}h2{font-size:clamp(2rem,4.4vw,3.35rem)}h3{font-size:1.25rem}.container{width:min(calc(100% - 2.2rem),var(--max));margin:0 auto}.section{padding:6.3rem 0;position:relative}.compact{padding-top:3rem}.soft{background:var(--soft)}.eyebrow{display:inline-flex;align-items:center;gap:.55rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800;font-size:.78rem;color:#237b77;margin-bottom:1rem}.eyebrow:before{content:"";width:27px;height:2px;background:linear-gradient(90deg,var(--teal),var(--violet));border-radius:3px}.lead{font-size:1.18rem;line-height:1.7;max-width:740px}.site-header{height:82px;position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(223,231,236,.8);background:rgba(246,249,251,.9);backdrop-filter:blur(18px)}.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:.72rem;min-width:max-content}.brand-mark{width:42px;height:42px;border-radius:14px;background:var(--ink);position:relative;box-shadow:0 10px 25px rgba(7,26,45,.16)}.brand-mark i{width:7px;height:7px;background:var(--teal);border-radius:50%;position:absolute}.brand-mark i:nth-child(1){left:9px;bottom:10px}.brand-mark i:nth-child(2){top:8px;left:18px;background:#87e2db}.brand-mark i:nth-child(3){right:8px;bottom:11px;background:#9d8bff}.brand-mark:after,.brand-mark:before{content:"";position:absolute;width:19px;height:2px;background:#b7c7d2;transform:rotate(-52deg);left:10px;top:22px}.brand-mark:after{transform:rotate(50deg);left:21px;top:23px}.brand-type{display:flex;flex-direction:column;line-height:1.02}.brand-type strong{font-size:.95rem;color:var(--ink)}.brand-type small{font-weight:800;color:#587084;letter-spacing:.12em;text-transform:uppercase;font-size:.63rem;margin-top:4px}.main-nav{display:flex;align-items:center;gap:.9rem}.main-nav>a:not(.btn){font-size:.84rem;font-weight:700;color:#4b6374}.main-nav>a.active,.main-nav>a:hover{color:var(--ink)}.nav-extra{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border:0;border-radius:999px;padding:.9rem 1.25rem;font-weight:800;font-size:.93rem;cursor:pointer;transition:transform .2s,box-shadow .2s;text-align:center}.btn-primary{background:linear-gradient(135deg,var(--teal),#65c2da 50%,#8a73ff);color:#fff;box-shadow:0 13px 30px rgba(70,182,180,.24)}.btn-ghost{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:0 8px 24px rgba(7,26,45,.05)}.btn-nav{padding:.72rem 1rem;font-size:.8rem}.btn-light{background:#fff;color:var(--ink)}.btn-outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.28)}.nav-toggle{display:none;border:0;background:transparent;width:46px;height:46px}.nav-toggle span{display:block;width:23px;height:2px;background:var(--ink);margin:5px auto}.home-hero{padding:5.3rem 0 6.5rem;background:linear-gradient(180deg,#f6f9fb,#eef5f7)}.hero-grid,.page-hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:4rem;align-items:center}.hero-actions{display:flex;gap:.85rem;flex-wrap:wrap;margin:2rem 0}.trust-row{display:flex;gap:1.1rem;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:1.2rem;color:#6b7f8d;font-size:.9rem}.trust-row b{color:var(--ink)}.hero-visual{position:relative}.hero-visual>img,.page-visual img{border-radius:32px;box-shadow:var(--shadow)}.float-chip{position:absolute;background:#fff;padding:.85rem 1rem;border-radius:18px;box-shadow:var(--shadow2);display:flex;gap:.75rem;align-items:center;animation:bob 5s ease-in-out infinite}.float-chip i{width:12px;height:12px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 7px rgba(79,209,197,.14)}.float-chip span{display:flex;flex-direction:column}.float-chip b{font-size:.85rem}.float-chip small{color:#728796}.chip1{left:-20px;bottom:64px}.chip2{right:-15px;top:55px;animation-delay:-2s}.chip2 i{background:var(--violet);box-shadow:0 0 0 7px rgba(124,92,255,.12)}@keyframes bob{50%{transform:translateY(-11px)}}.section-heading{max-width:780px;margin-bottom:2.6rem}.section-heading.center{text-align:center;margin-left:auto;margin-right:auto}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.resource-card{position:relative;padding:1.6rem;border:1px solid var(--line);background:#fff;border-radius:24px;min-height:280px;display:flex;flex-direction:column;transition:.25s;overflow:hidden}.resource-card:hover{transform:translateY(-6px);box-shadow:var(--shadow2)}.resource-card.featured{background:var(--ink);grid-column:span 2}.resource-card.featured h3,.resource-card.featured .card-arrow{color:#fff}.resource-card.featured p{color:#b9cbd8}.card-tag{display:inline-flex;align-self:flex-start;margin:.75rem 0 1.3rem;padding:.35rem .65rem;border-radius:999px;background:#eaf7f5;color:#277c77;font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.featured .card-tag{background:rgba(79,209,197,.13);color:#91e6df}.card-num{font-weight:900;color:#9cb0bd;font-size:.78rem}.resource-card h3{font-size:1.38rem}.resource-card p{font-size:.92rem}.card-arrow{margin-top:auto;font-weight:800;color:#2a6f72;font-size:.88rem}.dark-band{background:linear-gradient(135deg,#071a2d,#0c2c45 65%,#242052);color:#fff}.dark-band h2,.dark-band h3{color:#fff}.dark-band p{color:#b8cbd8}.split{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.principles{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.principles div{padding:1.35rem;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:rgba(255,255,255,.04)}.principles span{color:#7ee1d8;font-weight:900;font-size:.72rem}.principles h3{margin:.55rem 0}.principles p{font-size:.88rem;margin:0}.timeline{display:grid;grid-template-columns:repeat(6,1fr);gap:.6rem}.timeline a{padding:1.05rem;border-radius:20px;background:#fff;border:2px solid var(--edge,var(--line));min-height:170px;transition:transform .2s,box-shadow .2s,border-color .2s}.timeline a:hover{transform:translateY(-4px);border-color:var(--a);box-shadow:0 14px 30px var(--glow)}.timeline a:nth-child(1){--a:#33c9a7;--b:#1fb08d;--edge:rgba(51,201,167,.65);--glow:rgba(51,201,167,.28)}.timeline a:nth-child(2){--a:#45cfc4;--b:#2eb9ad;--edge:rgba(69,207,196,.6);--glow:rgba(69,207,196,.28)}.timeline a:nth-child(3){--a:#55bdda;--b:#3ea4c4;--edge:rgba(85,189,218,.6);--glow:rgba(85,189,218,.28)}.timeline a:nth-child(4){--a:#6699e4;--b:#4e83d4;--edge:rgba(102,153,228,.6);--glow:rgba(102,153,228,.28)}.timeline a:nth-child(5){--a:#7278ef;--b:#5b61df;--edge:rgba(114,120,239,.6);--glow:rgba(114,120,239,.28)}.timeline a:nth-child(6){--a:#7c5cff;--b:#6647e8;--edge:rgba(124,92,255,.6);--glow:rgba(124,92,255,.28)}.timeline b{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(140deg,var(--a,var(--teal)),var(--b,var(--violet)));color:#fff;box-shadow:0 8px 18px var(--glow,rgba(7,26,45,.14))}.timeline b svg{display:block;width:19px;height:19px}.timeline strong,.timeline small{display:block}.timeline strong{margin-top:.9rem}.timeline small{color:#748795;margin-top:.35rem}.page-hero{padding:4.5rem 0;background:linear-gradient(180deg,#f7fafb,#eef4f7)}.page-hero h1{font-size:clamp(2.7rem,5.7vw,4.9rem)}.page-visual{max-width:560px;justify-self:end}.article-section{background:#fff}.article-layout,.template-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:4rem;align-items:start}.toc{position:sticky;top:110px;display:flex;flex-direction:column;border-left:2px solid var(--line);padding-left:1rem}.toc strong{margin-bottom:.7rem}.toc a{font-size:.82rem;color:#6e8290;padding:.35rem 0}.article{max-width:850px}.article section{padding-bottom:5rem}.article p{font-size:1.02rem;line-height:1.78}.article a{color:#1e7772;text-decoration:underline;text-underline-offset:3px}.section-number{display:block;color:#4aa9a1;font-weight:900;font-size:.78rem;letter-spacing:.13em;margin-bottom:.65rem}.callout,.question-box,.tip-box{padding:1.45rem;border-radius:22px;background:#edf8f6;border:1px solid #d6ece8;margin:1.7rem 0}.callout{margin-bottom:4rem}.question-box{background:#f7fafb;border-color:var(--line)}.tip-box{background:#f7fafb;border:1px solid var(--line);border-left:5px solid var(--teal)}.check-list{list-style:none;padding:0}.check-list li{position:relative;padding:.5rem 0 .5rem 2rem;color:#536c7b}.check-list li:before{content:"✓";position:absolute;left:0;width:22px;height:22px;border-radius:50%;background:#dff5f2;color:#247b75;display:grid;place-items:center;font-size:.74rem;font-weight:900}.mini-grid{display:grid;gap:1rem;margin:1.7rem 0}.mini-grid.three{grid-template-columns:repeat(3,1fr)}.mini-grid.two{grid-template-columns:1fr 1fr}.mini-grid>div{background:#f6f9fb;border:1px solid var(--line);border-radius:20px;padding:1.2rem}.mini-grid p{font-size:.88rem;margin:.35rem 0 0}.table-wrap{overflow:auto;margin:1.7rem 0 2rem;border:1px solid var(--line);border-radius:20px}table{width:100%;border-collapse:collapse;min-width:680px;background:#fff}th,td{text-align:left;padding:1rem 1.1rem;border-bottom:1px solid var(--line);vertical-align:top}th{background:#f0f5f7;color:#3a5667;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}td{font-size:.88rem;color:#5d7483}.formula{margin:2rem 0;padding:1.6rem;border-radius:24px;background:var(--ink);color:#fff}.formula span{color:#7ee0d8;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:900}.formula strong{display:block;font-size:1.25rem;margin:.7rem 0}.formula p{color:#bbced9;margin:0;font-size:.88rem}.steps{list-style:none;padding:0;counter-reset:steps}.steps li{counter-increment:steps;display:grid;grid-template-columns:42px 1fr;column-gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.steps li:before{content:counter(steps);width:42px;height:42px;border-radius:14px;background:#e3f6f3;color:#277e78;display:grid;place-items:center;font-weight:900;grid-row:span 2}.steps span{grid-column:2;color:#6b7f8c;font-size:.9rem}.metric-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin:2rem 0}.metric-strip div{background:#0c2a42;padding:1.1rem;border-radius:18px}.metric-strip b{color:#fff;font-size:.88rem}.metric-strip span{display:block;color:#9fb6c5;font-size:.75rem;margin-top:.35rem}.phase-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:2rem 0}.phase-grid>div{border:1px solid var(--line);border-radius:22px;padding:1.3rem;background:#fafcfd}.phase-grid span{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:#277c77;font-weight:900}.phase-grid h3{margin:.5rem 0}.phase-grid p{font-size:.88rem;margin:0}.next-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}.next-grid a{border:1px solid var(--line);border-radius:20px;padding:1.2rem;background:#f9fbfc}.next-grid span,.next-grid small{display:block;color:#7b8d99;font-size:.73rem}.next-grid b{display:block;color:#267b76;margin:.4rem 0}.cta-panel{background:linear-gradient(135deg,#071a2d,#0b3049 65%,#27214e);padding:2.3rem;border-radius:30px;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;box-shadow:var(--shadow)}.cta-panel h2{color:#fff;font-size:2rem}.cta-panel p{color:#bdd0da;max-width:700px;margin:0}.cta-buttons{display:flex;gap:.7rem;flex-wrap:wrap}.tool-layout{display:grid;grid-template-columns:1.03fr .97fr;gap:1.4rem;align-items:start}.tool-card,.results-panel{background:#fff;border:1px solid var(--line);border-radius:28px;padding:2rem;box-shadow:var(--shadow2)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.3rem 0}.form-grid label>span{display:block;font-size:.83rem;font-weight:800;color:#314e60;margin-bottom:.45rem}.form-grid input,.form-grid select{width:100%;height:50px;border:1px solid #d8e3e8;border-radius:14px;background:#fbfdfe;padding:0 .9rem;font:inherit;color:var(--ink);outline:none}.form-grid small{display:block;color:#82939e;font-size:.71rem;margin-top:.4rem;line-height:1.45}.input-prefix,.input-suffix{position:relative}.input-prefix i,.input-suffix i{position:absolute;top:50%;transform:translateY(-50%);font-style:normal;color:#82939e;font-weight:800}.input-prefix i{left:14px}.input-prefix input{padding-left:30px}.input-suffix i{right:14px}.input-suffix input{padding-right:34px}.results-panel{background:var(--ink);color:#fff}.results-head{padding-bottom:1.4rem;border-bottom:1px solid rgba(255,255,255,.1)}.results-head span,.results-head small{display:block;color:#8fcfc9}.results-head b{display:block;font-size:clamp(2.4rem,5vw,4rem);letter-spacing:-.05em;margin:.25rem 0}.result-grid{display:grid;grid-template-columns:1fr 1fr}.result-grid>div{padding:1.1rem .9rem;border-bottom:1px solid rgba(255,255,255,.09)}.result-grid>div:nth-child(odd){border-right:1px solid rgba(255,255,255,.09)}.result-grid span{display:block;color:#97adbb;font-size:.76rem}.result-grid b{color:#fff}.result-explain{margin-top:1.2rem;padding:1rem;border-radius:18px;background:rgba(255,255,255,.06)}.result-explain p{font-size:.78rem;color:#afc2ce;margin:.35rem 0 0}.checklist-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:2rem;align-items:start}.checklist-main{display:grid;gap:1.1rem}.check-group{background:#fff;border:1px solid var(--line);border-radius:25px;padding:1.4rem}.check-group h2{font-size:1.4rem}.check-item{display:grid;grid-template-columns:32px 1fr;gap:.8rem;align-items:start;padding:.9rem 0;border-top:1px solid var(--line);cursor:pointer}.check-item input{position:absolute;opacity:0}.fake-check{width:30px;height:30px;border-radius:10px;border:2px solid #cad8df;color:transparent;display:grid;place-items:center;font-weight:900}.check-item input:checked+.fake-check{background:var(--teal);border-color:var(--teal);color:var(--ink)}.check-copy b{display:block;font-size:.9rem}.check-copy small{color:#82939e}.progress-card{position:sticky;top:108px;background:var(--ink);border-radius:28px;padding:1.6rem;color:#fff}.progress-ring{width:170px;height:170px;border-radius:50%;display:grid;place-items:center;margin:1rem auto;background:conic-gradient(var(--teal) 0%,rgba(255,255,255,.08) 0)}.progress-ring:before{content:"";position:absolute;width:132px;height:132px;border-radius:50%;background:var(--ink)}.progress-ring div{z-index:1;text-align:center}.progress-ring b{display:block;font-size:2rem}.progress-bar{height:9px;border-radius:999px;background:rgba(255,255,255,.1);overflow:hidden}.progress-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--teal),var(--violet))}.progress-card p{color:#a9bfcb;font-size:.84rem;margin-top:1rem}.progress-message{font-size:.8rem;color:#c7d6de;padding:1rem;border-radius:16px;background:rgba(255,255,255,.06);margin-bottom:1rem}.full{width:100%;margin-top:.7rem}.template-stack{display:grid;gap:1.3rem}.template-card{border:1px solid var(--line);border-radius:26px;background:#fff;overflow:hidden}.template-toolbar{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.3rem 1.5rem;border-bottom:1px solid var(--line)}.template-toolbar span{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:#2d7b77;font-weight:900}.template-toolbar h2{font-size:1.35rem;margin:.3rem 0 0}.template-note{padding:1rem 1.5rem;margin:0;font-size:.75rem}.ideas-grid,.metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.idea-card,.metric-card{background:#fff;border:1px solid var(--line);border-radius:23px;padding:1.45rem;transition:.25s}.idea-card:hover,.metric-card:hover{transform:translateY(-4px);box-shadow:var(--shadow2)}.idea-card>span{font-size:.73rem;font-weight:900;color:#62aaa4}.idea-card-head{display:flex;align-items:center;justify-content:space-between;gap:.85rem;margin-bottom:1.05rem}.idea-card .idea-num{height:30px;min-width:40px;padding:0 .65rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(237,244,247,.78);border:1px solid rgba(223,231,236,.9);font-size:.7rem;font-weight:900;color:#62aaa4;letter-spacing:.08em}.idea-glyph{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;color:#1d715e;background:rgba(255,255,255,.7);border:1px solid rgba(223,231,236,.92);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 22px rgba(7,26,45,.05)}.idea-glyph svg{width:24px;height:24px;display:block}.idea-card h3{margin-top:.25rem}.idea-card p,.metric-card p{font-size:.87rem}.idea-card small{display:block;color:#7b8e99;font-weight:700;border-top:1px solid var(--line);padding-top:.8rem}.metric-card code{display:block;background:#edf7f5;color:#256f6b;border-radius:12px;padding:.7rem;font-size:.73rem;line-height:1.45;margin:.8rem 0}.scenario-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.scenario-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:1.55rem}.scenario-card>span{display:inline-flex;padding:.34rem .65rem;border-radius:999px;background:#e7f7f5;color:#267a74;font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.scenario-card h2{font-size:1.45rem;margin-top:1rem}.scenario-detail{padding:1rem;border-radius:16px;background:#f3f8f9;margin-top:1rem}.scenario-detail.watch{background:#fff7f2}.scenario-detail p{font-size:.83rem;margin:.3rem 0 0}.faq-layout{max-width:900px}.faq-list{display:grid;gap:.75rem}.faq-item{border:1px solid var(--line);background:#fff;border-radius:20px;overflow:hidden}.faq-item button{width:100%;border:0;background:transparent;padding:1.15rem 1.3rem;display:flex;justify-content:space-between;gap:1rem;align-items:center;text-align:left;font:inherit;font-weight:800;color:var(--ink);cursor:pointer}.faq-item button i{width:31px;height:31px;border-radius:50%;background:#edf7f5;color:#247a74;display:grid;place-items:center;font-style:normal;font-size:1.25rem}.faq-answer{display:grid;grid-template-rows:0fr;transition:.28s}.faq-answer>p{overflow:hidden;padding:0 1.3rem;margin:0}.faq-item.open .faq-answer{grid-template-rows:1fr}.faq-item.open .faq-answer>p{padding-bottom:1.3rem}.faq-item.open button i{transform:rotate(45deg)}.about-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:3rem;align-items:start}.about-card{position:sticky;top:110px;border-radius:26px;background:#fff;border:1px solid var(--line);padding:1.5rem;box-shadow:var(--shadow2)}.about-card h3{font-size:.94rem;margin:1.1rem 0 .35rem}.about-card a{color:#277a75;font-size:.88rem;font-weight:800}.site-footer{background:#071a2d;color:#fff;padding:4.3rem 0 1.5rem;margin-top:5rem}.site-footer .brand-type strong{color:#fff}.site-footer .brand-type small{color:#92aab8}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:3rem}.footer-intro p{max-width:410px;font-size:.84rem;color:#9fb5c3;margin-top:1.1rem}.footer-intro a{color:#a0e5df}.footer-grid h4{color:#fff;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em}.footer-grid>div:not(.footer-intro){display:flex;flex-direction:column;gap:.5rem}.footer-grid>div:not(.footer-intro) a{color:#9eb3c0;font-size:.84rem}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:1.3rem;margin-top:3rem;display:flex;justify-content:space-between;color:#708998;font-size:.74rem}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.delay1{transition-delay:.1s}.delay2{transition-delay:.2s}.confetti{position:fixed;z-index:100;width:9px;height:16px;top:-20px;animation:fall 2.2s ease-in forwards}@keyframes fall{to{transform:translateY(110vh) rotate(780deg);opacity:.2}}
@media(max-width:1100px){.main-nav{gap:.62rem}.main-nav>a:not(.btn){font-size:.77rem}.timeline{grid-template-columns:repeat(3,1fr)}.resource-grid{grid-template-columns:1fr 1fr}.resource-card.featured{grid-column:span 2}.ideas-grid,.metrics-grid{grid-template-columns:1fr 1fr}}@media(max-width:900px){.nav-toggle{display:block}.main-nav{display:none;position:absolute;top:74px;left:1rem;right:1rem;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:1rem;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav>a:not(.btn){padding:.4rem}.nav-extra{display:block!important}.hero-grid,.page-hero-grid,.split,.tool-layout,.checklist-layout,.about-grid{grid-template-columns:1fr}.page-visual{justify-self:start}.article-layout,.template-layout{grid-template-columns:1fr}.toc{display:none}.progress-card,.about-card{position:relative;top:auto}.footer-grid{grid-template-columns:1fr 1fr}.cta-panel{grid-template-columns:1fr}.metric-strip{grid-template-columns:1fr 1fr}}@media(max-width:650px){.section{padding:4.4rem 0}.resource-grid,.ideas-grid,.metrics-grid,.scenario-grid,.mini-grid.three,.mini-grid.two,.phase-grid,.next-grid,.form-grid{grid-template-columns:1fr}.resource-card.featured{grid-column:auto}.timeline{grid-template-columns:1fr 1fr}.principles{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:.5rem}.float-chip{display:none}.result-grid{grid-template-columns:1fr}.result-grid>div:nth-child(odd){border-right:0}.metric-strip{grid-template-columns:1fr}.template-toolbar{align-items:flex-start;flex-direction:column}.page-hero h1{font-size:2.7rem}.cta-panel{padding:1.5rem}.hero-actions{flex-direction:column}.btn{width:100%}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}@media print{.site-header,.site-footer,.page-hero,.cta-panel,.progress-card .btn{display:none!important}.section{padding:1rem 0}.checklist-layout{display:block}.check-group{break-inside:avoid}.progress-card{position:static;background:#fff;color:#000;border:1px solid #ccc}}


/* Visual storytelling additions */
.visual-band{padding:5.2rem 0;background:#f6f9fb;overflow:hidden}
.visual-band.soft-band{background:#edf4f7}
.visual-band.deep-band{background:linear-gradient(135deg,#061828,#0b314c 58%,#272052);color:#fff}
.visual-band.deep-band h2,.visual-band.deep-band h3{color:#fff}
.visual-band.deep-band p{color:#bad0dc}
.visual-story{display:grid;grid-template-columns:.9fr 1.1fr;gap:3rem;align-items:center}
.visual-copy{max-width:520px}
.visual-copy h2{font-size:2.35rem;letter-spacing:0}
.visual-copy p{font-size:.98rem}
.visual-kicker{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:1rem;color:#287d78;text-transform:uppercase;font-size:.72rem;font-weight:900;letter-spacing:.12em}
.deep-band .visual-kicker{color:#82e5de}
.visual-kicker:before{content:"";width:28px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--teal),var(--violet))}
.visual-stage{position:relative;min-height:330px;border:1px solid rgba(159,180,193,.35);border-radius:28px;background:linear-gradient(145deg,#fff,#eef6f8);box-shadow:var(--shadow2);overflow:hidden}
.deep-band .visual-stage{background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025));border-color:rgba(255,255,255,.13)}
.visual-stage:before{content:"";position:absolute;inset:-35% -20% auto auto;width:280px;height:280px;border-radius:50%;background:rgba(79,209,197,.16)}
.visual-stage:after{content:"";position:absolute;left:-12%;bottom:-28%;width:260px;height:260px;border-radius:50%;background:rgba(124,92,255,.13)}
.visual-panel{position:absolute;border:1px solid var(--line);background:rgba(255,255,255,.86);backdrop-filter:blur(12px);box-shadow:0 18px 45px rgba(7,26,45,.11);border-radius:20px;padding:1rem;z-index:2}
.deep-band .visual-panel{background:rgba(8,31,50,.82);border-color:rgba(255,255,255,.12)}
.visual-panel b{display:block;color:var(--ink);font-size:.9rem;margin-bottom:.35rem}
.deep-band .visual-panel b{color:#fff}
.visual-panel span,.visual-panel small{display:block;color:#6e8391;font-size:.72rem;line-height:1.45}
.deep-band .visual-panel span,.deep-band .visual-panel small{color:#a8bfcc}
.visual-dot{width:12px;height:12px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 8px rgba(79,209,197,.14)}
.visual-line{position:absolute;height:2px;background:linear-gradient(90deg,transparent,var(--teal),var(--violet),transparent);transform-origin:left center;z-index:1;animation:signalMove 4.5s linear infinite}
.visual-count{font-variant-numeric:tabular-nums}
.orbit-stage{display:grid;place-items:center}
.orbit-core{width:128px;height:128px;border-radius:50%;display:grid;place-items:center;background:#071a2d;color:#fff;font-weight:900;text-align:center;z-index:3;box-shadow:0 22px 55px rgba(7,26,45,.2)}
.orbit-ring{position:absolute;width:238px;height:238px;border:1px dashed rgba(79,209,197,.6);border-radius:50%;animation:spinSlow 24s linear infinite}
.orbit-ring.two{width:300px;height:300px;border-color:rgba(124,92,255,.45);animation-duration:34s;animation-direction:reverse}
.orbit-node{position:absolute;width:88px;min-height:70px;border-radius:18px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;text-align:center;padding:.7rem;font-weight:900;font-size:.76rem;color:#163349;box-shadow:var(--shadow2);z-index:4}
.orbit-stage .orbit-node:nth-of-type(3){top:35px;left:50%;transform:translateX(-50%)}
.orbit-stage .orbit-node:nth-of-type(4){right:42px;top:48%}
.orbit-stage .orbit-node:nth-of-type(5){bottom:38px;left:50%;transform:translateX(-50%)}
.orbit-stage .orbit-node:nth-of-type(6){left:42px;top:48%}
.system-map .visual-panel:nth-child(1){left:7%;top:14%;width:36%}
.system-map .visual-panel:nth-child(2){right:8%;top:12%;width:36%}
.system-map .visual-panel:nth-child(3){left:13%;bottom:14%;width:34%}
.system-map .visual-panel:nth-child(4){right:12%;bottom:16%;width:34%}
.system-map .visual-line.l1{left:38%;top:27%;width:25%;transform:rotate(4deg)}
.system-map .visual-line.l2{left:52%;top:45%;width:24%;transform:rotate(72deg)}
.system-map .visual-line.l3{left:32%;top:66%;width:32%;transform:rotate(-6deg)}
.system-map .visual-line.l4{left:25%;top:46%;width:24%;transform:rotate(-68deg)}
.bar-compare{position:absolute;inset:42px;z-index:2;display:grid;align-content:end;grid-template-columns:1fr 1fr;gap:1rem}
.bar-stack{display:grid;align-content:end;gap:.8rem}
.bar-stack strong{color:var(--ink)}
.bar{border-radius:16px 16px 8px 8px;background:linear-gradient(180deg,var(--teal),#65c2da);box-shadow:0 16px 32px rgba(79,209,197,.2);animation:barRise 1.2s ease both}
.bar.short{height:110px}.bar.tall{height:205px;background:linear-gradient(180deg,#8a73ff,#4fd1c5);animation-delay:.2s}
.cost-ribbon{position:absolute;right:28px;top:28px;z-index:3;background:#071a2d;color:#fff;border-radius:18px;padding:.85rem 1rem;box-shadow:var(--shadow2)}
.cost-ribbon b{display:block;font-size:1.35rem}
.gauge{position:absolute;left:50%;top:52%;width:250px;height:250px;border-radius:50%;transform:translate(-50%,-50%);background:conic-gradient(#4fd1c5 0 34%,#65c2da 34% 64%,#8a73ff 64% 100%);box-shadow:0 24px 60px rgba(7,26,45,.16)}
.gauge:before{content:"";position:absolute;inset:34px;border-radius:50%;background:#fff}
.gauge-needle{position:absolute;left:50%;top:50%;width:104px;height:5px;background:#071a2d;border-radius:99px;transform-origin:left center;transform:rotate(28deg);animation:needleSweep 3.2s ease-in-out infinite}
.gauge-label{position:absolute;z-index:2;border-radius:999px;background:#fff;border:1px solid var(--line);padding:.55rem .75rem;font-weight:900;font-size:.75rem;color:#173148;box-shadow:var(--shadow2)}
.gauge-label.low{left:32px;bottom:55px}.gauge-label.mid{left:50%;top:32px;transform:translateX(-50%)}.gauge-label.high{right:28px;bottom:76px}
.radar{position:absolute;left:50%;top:50%;width:245px;height:245px;border-radius:50%;transform:translate(-50%,-50%);background:repeating-radial-gradient(circle,rgba(79,209,197,.14) 0 1px,transparent 1px 42px),conic-gradient(from 0deg,rgba(79,209,197,.06),rgba(124,92,255,.18),rgba(79,209,197,.06));animation:pulseRadar 4s ease-in-out infinite}
.radar:before,.radar:after{content:"";position:absolute;left:50%;top:50%;background:rgba(7,26,45,.12)}
.radar:before{width:100%;height:1px;transform:translate(-50%,-50%)}.radar:after{width:1px;height:100%;transform:translate(-50%,-50%)}
.radar-point{position:absolute;z-index:2;width:82px;border-radius:18px;background:#fff;border:1px solid var(--line);padding:.65rem;text-align:center;font-size:.72rem;font-weight:900;color:#163349;box-shadow:var(--shadow2)}
.radar-point.a{left:22px;top:34px}.radar-point.b{right:24px;top:64px}.radar-point.c{left:50%;bottom:24px;transform:translateX(-50%)}
.message-stack{position:absolute;inset:30px;z-index:2;display:grid;align-content:center;gap:.85rem}
.message-card{border-radius:18px;background:#fff;border:1px solid var(--line);padding:1rem;box-shadow:var(--shadow2);animation:floatCard 5s ease-in-out infinite}
.message-card:nth-child(2){margin-left:46px;animation-delay:-1.4s}.message-card:nth-child(3){margin-left:18px;margin-right:36px;animation-delay:-2.6s}
.message-card b{display:block;color:#173149}.message-card span{display:block;margin-top:.3rem;height:8px;border-radius:99px;background:#dce8ee}.message-card span:nth-child(3){width:68%}
.campaign-calendar{position:absolute;inset:34px;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem}
.calendar-cell{min-height:58px;border-radius:16px;background:#fff;border:1px solid var(--line);padding:.55rem;color:#6d8290;font-size:.68rem;font-weight:900;position:relative;box-shadow:0 8px 20px rgba(7,26,45,.06)}
.calendar-cell.hot{background:#071a2d;color:#fff}
.calendar-cell.hot:after{content:"";position:absolute;right:10px;bottom:10px;width:13px;height:13px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 8px rgba(79,209,197,.16);animation:ping 2.1s ease-out infinite}
.scorecard-wall{position:absolute;inset:30px;z-index:2;display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem}
.score-tile{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1rem;box-shadow:var(--shadow2)}
.score-tile b{display:block;color:#071a2d;font-size:1.55rem}
.score-tile span{display:block;color:#6d8290;font-size:.72rem;font-weight:800}
.spark{height:42px;margin-top:.8rem;border-radius:12px;background:linear-gradient(135deg,transparent 42%,rgba(79,209,197,.18) 42%),linear-gradient(160deg,transparent 54%,rgba(124,92,255,.18) 54%),#f2f7f8;position:relative;overflow:hidden}
.spark:after{content:"";position:absolute;left:-15%;top:23px;width:130%;height:3px;background:linear-gradient(90deg,var(--teal),var(--violet));transform:rotate(-8deg);animation:sparkSlide 3.6s ease-in-out infinite}
.scenario-quadrant{position:absolute;inset:38px;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.scenario-chip{border-radius:20px;background:#fff;border:1px solid var(--line);padding:1rem;display:grid;align-content:center;box-shadow:var(--shadow2);position:relative;overflow:hidden}
.scenario-chip:before{content:"";position:absolute;right:-28px;top:-28px;width:70px;height:70px;border-radius:50%;background:rgba(79,209,197,.18)}
.scenario-chip:nth-child(even):before{background:rgba(124,92,255,.16)}
.scenario-chip b{color:#173149}.scenario-chip span{font-size:.72rem;color:#718693}
.answer-path{position:absolute;inset:34px;z-index:2;display:grid;align-content:center;gap:.85rem}
.question-row{display:grid;grid-template-columns:52px 1fr;gap:.75rem;align-items:center}
.q-mark{width:52px;height:52px;border-radius:17px;background:#071a2d;color:#fff;display:grid;place-items:center;font-weight:900;box-shadow:var(--shadow2)}
.answer-bubble{border-radius:18px;background:#fff;border:1px solid var(--line);padding:.85rem 1rem;box-shadow:var(--shadow2);position:relative;overflow:hidden}
.answer-bubble:after{content:"";display:block;width:var(--w,70%);height:7px;border-radius:99px;background:linear-gradient(90deg,var(--teal),var(--violet));margin-top:.55rem;animation:answerFill 3.3s ease-in-out infinite}
.constellation{position:absolute;inset:28px;z-index:2}
.constellation .tool-node{position:absolute;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow2);padding:.8rem .9rem;font-size:.75rem;font-weight:900;color:#173149}
.tool-node.n1{left:8%;top:16%}.tool-node.n2{right:9%;top:18%}.tool-node.n3{left:36%;top:43%}.tool-node.n4{left:12%;bottom:14%}.tool-node.n5{right:12%;bottom:16%}
.constellation .visual-line{animation-duration:5.5s}.constellation .l1{left:26%;top:28%;width:42%;transform:rotate(2deg)}.constellation .l2{left:24%;top:58%;width:34%;transform:rotate(-34deg)}.constellation .l3{left:50%;top:58%;width:30%;transform:rotate(34deg)}
@keyframes spinSlow{to{transform:rotate(360deg)}}
@keyframes barRise{from{height:18px;opacity:.35}}
@keyframes needleSweep{0%,100%{transform:rotate(16deg)}50%{transform:rotate(38deg)}}
@keyframes pulseRadar{50%{transform:translate(-50%,-50%) scale(1.04)}}
@keyframes floatCard{50%{transform:translateY(-8px)}}
@keyframes ping{80%,100%{box-shadow:0 0 0 22px rgba(79,209,197,0)}}
@keyframes sparkSlide{50%{transform:rotate(-3deg) translateY(-8px)}}
@keyframes answerFill{0%,100%{width:45%}50%{width:var(--w,70%)}}
@media(max-width:900px){.visual-story{grid-template-columns:1fr}.visual-stage{min-height:310px}.visual-copy{max-width:720px}.visual-copy h2{font-size:2rem}}
@media(max-width:650px){.visual-band{padding:4rem 0}.visual-stage{min-height:360px}.system-map .visual-panel,.system-map .visual-panel:nth-child(n){position:relative;left:auto;right:auto;top:auto;bottom:auto;width:auto}.system-map{display:grid;gap:.75rem;padding:1rem}.system-map .visual-line{display:none}.orbit-node{width:78px}.scorecard-wall,.scenario-quadrant,.campaign-calendar{inset:18px;grid-template-columns:1fr 1fr}.message-stack,.answer-path{inset:18px}.bar-compare{inset:24px}.gauge{width:220px;height:220px}.visual-panel{padding:.85rem}.visual-copy h2{font-size:1.75rem}}
@media(prefers-reduced-motion:reduce){.visual-line,.orbit-ring,.bar,.gauge-needle,.radar,.message-card,.calendar-cell.hot:after,.spark:after,.answer-bubble:after{animation:none!important}}


/* People-centered hero visuals */
.page-visual.people-hero,.hero-visual.people-hero{width:min(100%,590px);max-width:590px;justify-self:end}
.people-scene{position:relative;min-height:520px;aspect-ratio:1/1;border-radius:36px;background:linear-gradient(145deg,#ffffff 0%,#eef7f8 58%,#e7efff 100%);box-shadow:var(--shadow);overflow:hidden;border:1px solid rgba(190,207,217,.75)}
.people-scene:before{content:"";position:absolute;inset:34px;border:1px dashed rgba(79,209,197,.42);border-radius:50%;animation:spinSlow 30s linear infinite}
.people-scene:after{content:"";position:absolute;right:-90px;top:-70px;width:260px;height:260px;border-radius:50%;background:rgba(124,92,255,.14)}
.scene-glow{position:absolute;left:-85px;bottom:-80px;width:280px;height:280px;border-radius:50%;background:rgba(79,209,197,.17)}
.people-link{position:absolute;height:3px;border-radius:99px;background:linear-gradient(90deg,rgba(79,209,197,0),rgba(79,209,197,.78),rgba(124,92,255,.7),rgba(124,92,255,0));transform-origin:left center;z-index:1;animation:signalMove 4.8s linear infinite}
.people-link.one{left:28%;top:30%;width:38%;transform:rotate(12deg)}
.people-link.two{left:54%;top:42%;width:31%;transform:rotate(88deg);animation-delay:-1.2s}
.people-link.three{left:25%;top:68%;width:44%;transform:rotate(-15deg);animation-delay:-2.4s}
.people-link.four{left:17%;top:42%;width:34%;transform:rotate(-55deg);animation-delay:-3.3s}
.person-card{position:absolute;z-index:3;display:flex;align-items:center;gap:.7rem;width:178px;padding:.8rem .9rem;border-radius:22px;background:rgba(255,255,255,.88);border:1px solid rgba(215,227,234,.9);box-shadow:0 18px 38px rgba(7,26,45,.12);backdrop-filter:blur(14px);animation:floatCard 5.5s ease-in-out infinite}
.person-card b{display:block;color:var(--ink);font-size:.84rem;line-height:1.15}
.person-card small{display:block;color:#687f8e;font-size:.68rem;line-height:1.2;margin-top:.16rem}
.person-a{left:7%;top:12%}.person-b{right:6%;top:20%;animation-delay:-1.8s}.person-c{right:9%;bottom:12%;animation-delay:-3.2s}.person-d{left:9%;bottom:15%;animation-delay:-2.4s}
.avatar{position:relative;flex:0 0 auto;width:46px;height:46px;border-radius:50%;background:linear-gradient(145deg,#4fd1c5,#7c5cff);box-shadow:0 10px 22px rgba(79,209,197,.26)}
.avatar:before{content:"";position:absolute;left:50%;top:9px;width:14px;height:14px;border-radius:50%;background:#fff;transform:translateX(-50%)}
.avatar:after{content:"";position:absolute;left:50%;bottom:8px;width:27px;height:15px;border-radius:14px 14px 8px 8px;background:#fff;transform:translateX(-50%)}
.avatar.alt{background:linear-gradient(145deg,#8a73ff,#65c2da)}.avatar.warm{background:linear-gradient(145deg,#58d9cb,#163c5a)}.avatar.deep{background:linear-gradient(145deg,#071a2d,#7c5cff)}
.collab-card{position:absolute;left:50%;top:50%;z-index:4;width:235px;min-height:180px;transform:translate(-50%,-50%);border-radius:28px;background:#071a2d;color:#fff;padding:1.25rem;box-shadow:0 24px 65px rgba(7,26,45,.24)}
.collab-card span{display:block;color:#84e5de;text-transform:uppercase;letter-spacing:.1em;font-size:.65rem;font-weight:900}
.collab-card b{display:block;color:#fff;font-size:1.45rem;line-height:1.12;margin:.45rem 0 .85rem}
.collab-card small{display:block;color:#acc4d1;font-size:.74rem;line-height:1.35}
.mini-bars{display:grid;gap:.42rem;margin-top:1rem}
.mini-bars i{display:block;height:8px;border-radius:99px;background:linear-gradient(90deg,var(--teal),var(--violet));width:var(--w,70%);animation:barPulse 3s ease-in-out infinite}
.mini-bars i:nth-child(2){animation-delay:-.8s}.mini-bars i:nth-child(3){animation-delay:-1.6s}
.chat-bubble{position:absolute;z-index:5;max-width:160px;border-radius:18px;background:#fff;border:1px solid var(--line);padding:.7rem .85rem;color:#25485d;font-size:.72rem;font-weight:900;box-shadow:var(--shadow2);animation:bob 5.2s ease-in-out infinite}
.chat-bubble.one{left:25%;top:4%}.chat-bubble.two{right:17%;bottom:4%;animation-delay:-2s}
.chat-bubble:after{content:"";position:absolute;width:12px;height:12px;background:#fff;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transform:rotate(45deg);bottom:-7px;left:28px}
.people-scene.metrics .collab-card{background:linear-gradient(145deg,#071a2d,#173d5b)}
.people-scene.templates .collab-card{background:linear-gradient(145deg,#0b2c46,#624ee8)}
.people-scene.checklist .collab-card{background:linear-gradient(145deg,#071a2d,#236d73)}
.people-scene.bonus .collab-card{background:linear-gradient(145deg,#10213a,#7c5cff)}
.people-scene.faq .collab-card{background:linear-gradient(145deg,#071a2d,#0e5461)}
@keyframes barPulse{0%,100%{transform:scaleX(.72);transform-origin:left;opacity:.72}50%{transform:scaleX(1);opacity:1}}
@media(max-width:1100px){.people-scene{min-height:460px}.person-card{width:160px}.collab-card{width:215px}}
@media(max-width:900px){.page-visual.people-hero,.hero-visual.people-hero{justify-self:start}.people-scene{max-width:560px;min-height:430px}}
@media(max-width:650px){.people-scene{min-height:0;border-radius:28px}.people-scene:before{inset:22px}.person-card{width:142px;padding:.65rem}.person-card b{font-size:.76rem}.person-card small{font-size:.62rem}.avatar{width:38px;height:38px}.avatar:before{top:8px;width:11px;height:11px}.avatar:after{width:22px;height:12px;bottom:7px}.collab-card{width:190px;min-height:150px;padding:1rem}.collab-card b{font-size:1.15rem}.chat-bubble{display:none}.person-a{left:4%;top:10%}.person-b{right:4%;top:16%}.person-c{right:4%;bottom:10%}.person-d{left:4%;bottom:12%}}
@media(prefers-reduced-motion:reduce){.people-scene:before,.people-link,.person-card,.chat-bubble,.mini-bars i{animation:none!important}}


/* Real people photo layer for referral hero scenes */
.people-scene.photo-backed{background:#071a2d}
.people-scene.photo-backed:before{inset:0;border:0;border-radius:0;background:linear-gradient(115deg,rgba(7,26,45,.7),rgba(7,26,45,.14) 44%,rgba(79,209,197,.12));animation:none;z-index:1}
.people-scene.photo-backed:after{right:-110px;top:-110px;background:rgba(79,209,197,.2);z-index:1}
.people-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;transform:scale(1.02);filter:saturate(1.03) contrast(1.02);animation:photoDrift 14s ease-in-out infinite}
.photo-backed .scene-glow{z-index:1;background:rgba(124,92,255,.14)}
.photo-backed .people-link{z-index:2;opacity:.75}
.photo-backed .person-card{background:rgba(255,255,255,.9);z-index:3}
.photo-backed .collab-card{background:rgba(7,26,45,.9);backdrop-filter:blur(12px);z-index:4}
.photo-backed .chat-bubble{z-index:5}
@keyframes photoDrift{50%{transform:scale(1.07) translate3d(-1.5%,1%,0)}}
@media(max-width:650px){.people-photo{animation:none}.photo-backed .person-card{background:rgba(255,255,255,.94)}}
@media(prefers-reduced-motion:reduce){.people-photo{animation:none!important}}


/* Glassier hero overlays so people imagery remains visible */
.people-scene.photo-backed:before{background:linear-gradient(115deg,rgba(7,26,45,.36),rgba(7,26,45,.04) 46%,rgba(79,209,197,.08))!important}
.photo-backed .people-link{opacity:.46;filter:blur(.2px)}
.photo-backed .person-card{
  background:linear-gradient(135deg,rgba(255,255,255,.58),rgba(255,255,255,.28));
  border:1px solid rgba(255,255,255,.54);
  box-shadow:0 18px 42px rgba(7,26,45,.16),inset 0 1px 0 rgba(255,255,255,.58);
  backdrop-filter:blur(10px) saturate(1.35);
}
.photo-backed .collab-card{
  background:linear-gradient(135deg,rgba(7,26,45,.64),rgba(7,26,45,.38));
  border:1px solid rgba(255,255,255,.24);
  box-shadow:0 24px 70px rgba(7,26,45,.24),inset 0 1px 0 rgba(255,255,255,.22);
  backdrop-filter:blur(12px) saturate(1.25);
}
.photo-backed .chat-bubble{
  background:rgba(255,255,255,.54);
  border:1px solid rgba(255,255,255,.62);
  backdrop-filter:blur(10px) saturate(1.35);
}
.photo-backed .chat-bubble:after{background:rgba(255,255,255,.54);border-color:rgba(255,255,255,.62)}
.photo-backed .avatar{box-shadow:0 10px 24px rgba(7,26,45,.18),inset 0 1px 0 rgba(255,255,255,.35)}
@media(max-width:650px){.photo-backed .person-card{background:rgba(255,255,255,.68)}.photo-backed .collab-card{background:rgba(7,26,45,.68)}}


/* Infographic additions */
.infographic-section{padding:5.8rem 0;position:relative;overflow:hidden}
.infographic-section.soft{background:#edf4f7}
.infographic-section.deep{background:linear-gradient(135deg,#061828,#0d3451 62%,#292052);color:#fff}
.infographic-section.deep h2,.infographic-section.deep h3{color:#fff}
.infographic-section.deep p{color:#bdd1dc}
.infographic-heading{max-width:790px;margin-bottom:2.2rem}
.infographic-heading.center{text-align:center;margin-left:auto;margin-right:auto}
.infographic-heading h2{font-size:clamp(2rem,3.8vw,3rem);letter-spacing:0}
.infographic-heading p{font-size:1rem}
.info-shell{border:1px solid rgba(174,194,207,.58);border-radius:28px;background:rgba(255,255,255,.72);box-shadow:var(--shadow2);backdrop-filter:blur(14px);padding:1.4rem}
.deep .info-shell{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14)}
.info-note{margin-top:1rem;color:#6c8290;font-size:.86rem}
.deep .info-note{color:#a9c0cd}
.flywheel-wrap{display:grid;grid-template-columns:.74fr 1.26fr;gap:2rem;align-items:center}
.flywheel-copy{padding:1rem}
.flywheel-copy h3{font-size:1.6rem}
.flywheel-copy ul{list-style:none;margin:1.1rem 0 0;padding:0;display:grid;gap:.65rem}
.flywheel-copy li{position:relative;padding-left:1.7rem;color:#526b7c;font-weight:700;font-size:.9rem}
.flywheel-copy li:before{content:"";position:absolute;left:0;top:.55rem;width:.68rem;height:.68rem;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--violet))}



.fly-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:4;width:178px;height:178px;border-radius:50%;display:grid;place-items:center;align-content:center;row-gap:0;text-align:center;background:#071a2d;color:#fff;padding:1.2rem;box-shadow:0 24px 64px rgba(7,26,45,.22)}
.fly-center b{display:block;color:#fff;font-size:1.1rem;line-height:1.18;letter-spacing:-.012em}.fly-center span{display:block;color:#88e4dd;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;line-height:1.1;margin-bottom:.34rem}

.fly-node i{display:grid;place-items:center;margin:0 auto .5rem;width:32px;height:32px;border-radius:12px;background:linear-gradient(135deg,var(--teal),var(--violet));color:#061828;font-style:normal;font-weight:900}
.fly-node b{display:block;color:#082034;font-size:.86rem;line-height:1.15}.fly-node small{display:block;color:#6f8491;font-size:.68rem;line-height:1.28;margin-top:.28rem}


.swimlane-info{margin:2rem 0 4rem;padding:1.2rem;border-radius:26px;background:#f6f9fb;border:1px solid var(--line)}
.swimlane-info h3{font-size:1.65rem}.swimlane-info>p{font-size:.95rem}
.swimlane-grid{display:grid;grid-template-columns:150px repeat(7,minmax(130px,1fr));gap:.55rem;overflow:auto;padding-bottom:.35rem}
.lane-head,.lane-cell{min-width:130px;border-radius:16px;border:1px solid var(--line);background:#fff;padding:.85rem;box-shadow:0 8px 24px rgba(7,26,45,.04)}
.lane-head{position:sticky;left:0;z-index:2;background:#071a2d;color:#fff;min-width:150px;font-weight:900}
.lane-cell b{display:block;color:#092236;font-size:.78rem;line-height:1.2}.lane-cell span{display:block;color:#6c8290;font-size:.68rem;line-height:1.32;margin-top:.35rem}
.lane-cell.key{background:#eaf8f6;border-color:#c9ece8}.lane-cell.warn{background:#fff7f2;border-color:#f1ded0}
.lane-stage{display:grid;place-items:center;background:#eaf2f6;color:#31556a;text-transform:uppercase;letter-spacing:.09em;font-size:.65rem;font-weight:900}
.funnel-board{display:grid;grid-template-columns:1.1fr .9fr;gap:1.4rem;align-items:stretch}
.funnel-stack{display:grid;gap:.65rem;align-content:center}
.funnel-step{display:grid;grid-template-columns:86px 1fr auto;align-items:center;gap:.8rem;border-radius:18px;background:#fff;border:1px solid var(--line);padding:.9rem 1rem;box-shadow:0 10px 26px rgba(7,26,45,.06)}
.funnel-step strong{color:#071a2d}.funnel-step span{color:#6d8391;font-size:.76rem}.funnel-step b{display:grid;place-items:center;width:58px;height:38px;border-radius:14px;background:#e9f8f6;color:#247a74}
.funnel-step[data-level="2"]{margin-inline:4%}.funnel-step[data-level="3"]{margin-inline:8%}.funnel-step[data-level="4"]{margin-inline:12%}.funnel-step[data-level="5"]{margin-inline:16%}.funnel-step[data-level="6"]{margin-inline:20%}.funnel-step[data-level="7"]{margin-inline:24%;background:#071a2d}.funnel-step[data-level="7"] strong{color:#fff}.funnel-step[data-level="7"] span{color:#b7cbd8}.funnel-step[data-level="7"] b{background:linear-gradient(135deg,var(--teal),var(--violet));color:#061828}
.score-side{display:grid;gap:.8rem}.score-side h3{font-size:1.4rem}.score-metric{display:grid;grid-template-columns:72px 1fr;gap:.8rem;align-items:center;border-radius:18px;background:#fff;border:1px solid var(--line);padding:.9rem;box-shadow:0 10px 26px rgba(7,26,45,.05)}
.score-metric b{display:grid;place-items:center;width:72px;height:58px;border-radius:16px;background:#071a2d;color:#fff;font-size:1.05rem}.score-metric strong{display:block;color:#092236}.score-metric span{display:block;color:#6d8391;font-size:.76rem}
.waterfall-board{display:grid;grid-template-columns:.82fr 1.18fr;gap:1.5rem;align-items:end}
.waterfall-copy{align-self:center}.waterfall-copy h3{font-size:1.55rem}.waterfall-copy p{font-size:.94rem}
.waterfall-chart{position:relative;min-height:380px;border-radius:24px;background:linear-gradient(145deg,#fff,#eef7f8);border:1px solid var(--line);padding:1.2rem;display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem;align-items:end;overflow:hidden}
.waterfall-chart:before{content:"";position:absolute;left:1.2rem;right:1.2rem;bottom:76px;height:1px;background:#cddde5}
.waterfall-bar{position:relative;z-index:2;display:grid;align-content:end;gap:.6rem;min-height:310px}
.waterfall-bar i{display:block;border-radius:16px 16px 8px 8px;box-shadow:0 18px 38px rgba(7,26,45,.12);animation:barRise 1s ease both}
.waterfall-bar.gain i{height:260px;background:linear-gradient(180deg,#4fd1c5,#65c2da)}
.waterfall-bar.cost i{height:98px;background:linear-gradient(180deg,#9e8dff,#7c5cff);animation-delay:.15s}
.waterfall-bar.admin i{height:54px;background:linear-gradient(180deg,#8fc4d8,#5488a5);animation-delay:.3s}
.waterfall-bar.net i{height:170px;background:linear-gradient(180deg,#071a2d,#215878);animation-delay:.45s}
.waterfall-bar b{color:#071a2d;font-size:.85rem;line-height:1.15}.waterfall-bar span{color:#698090;font-size:.7rem;line-height:1.25}
.waterfall-bar.net b,.waterfall-bar.net strong{color:#071a2d}.waterfall-value{display:inline-flex;align-self:start;justify-self:start;padding:.38rem .55rem;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:900;color:#16364b;font-size:.72rem}
@media(max-width:980px){.flywheel-wrap,.funnel-board,.waterfall-board{grid-template-columns:1fr}.flywheel{min-height:580px}.swimlane-grid{grid-template-columns:140px repeat(7,150px)}}
@media(max-width:650px){.infographic-section{padding:4rem 0}.info-shell{padding:1rem}.swimlane-info{margin-bottom:3rem}.funnel-step{grid-template-columns:1fr}.funnel-step,.funnel-step[data-level]{margin-inline:0}.score-metric{grid-template-columns:1fr}.waterfall-chart{grid-template-columns:1fr;min-height:auto}.waterfall-bar{min-height:auto;grid-template-columns:90px 1fr;align-items:center}.waterfall-bar i{height:56px!important;border-radius:14px}.waterfall-chart:before{display:none}}


/* ROI waterfall polish: aligned bar floor and separated captions */
#roi-waterfall .info-shell{padding:1.6rem}
#roi-waterfall .waterfall-chart{
  min-height:440px;
  padding:1.45rem;
  gap:1.05rem;
  align-items:stretch;
  background:
    linear-gradient(180deg,rgba(255,255,255,.92),rgba(238,247,248,.96)),
    radial-gradient(circle at 18% 16%,rgba(79,209,197,.14),transparent 32%),
    radial-gradient(circle at 82% 18%,rgba(124,92,255,.12),transparent 28%);
}
#roi-waterfall .waterfall-chart:before{
  left:1.45rem;
  right:1.45rem;
  top:316px;
  bottom:auto;
  height:2px;
  background:linear-gradient(90deg,rgba(79,209,197,.16),rgba(12,45,69,.28),rgba(124,92,255,.16));
  z-index:1;
}
#roi-waterfall .waterfall-chart:after{
  content:"";
  position:absolute;
  left:1.45rem;
  right:1.45rem;
  top:92px;
  height:224px;
  border-radius:18px;
  background:repeating-linear-gradient(180deg,rgba(111,132,145,.12) 0 1px,transparent 1px 56px);
  pointer-events:none;
  z-index:0;
}
#roi-waterfall .waterfall-bar{
  min-height:0;
  display:grid;
  grid-template-rows:44px 226px auto;
  gap:.75rem;
  align-content:stretch;
}
#roi-waterfall .waterfall-value{
  align-self:start;
  justify-self:center;
  padding:.45rem .7rem;
  background:rgba(255,255,255,.82);
  border-color:rgba(203,219,228,.92);
  box-shadow:0 10px 24px rgba(7,26,45,.08);
  backdrop-filter:blur(10px);
  font-size:.8rem;
}
#roi-waterfall .waterfall-bar i{
  align-self:end;
  justify-self:stretch;
  width:100%;
  border-radius:18px 18px 9px 9px;
  box-shadow:0 18px 42px rgba(7,26,45,.14);
}
#roi-waterfall .waterfall-bar.gain i{height:226px}
#roi-waterfall .waterfall-bar.cost i{height:86px}
#roi-waterfall .waterfall-bar.admin i{height:48px}
#roi-waterfall .waterfall-bar.net i{height:146px}
#roi-waterfall .waterfall-bar b,
#roi-waterfall .waterfall-bar > span:not(.waterfall-value){
  display:block;
  position:relative;
  z-index:2;
  margin:0;
  padding:0;
}
#roi-waterfall .waterfall-bar b{
  padding-top:.15rem;
  font-size:.92rem;
  line-height:1.08;
}
#roi-waterfall .waterfall-bar > span:not(.waterfall-value){
  color:#60788a;
  font-size:.72rem;
  line-height:1.32;
  margin-top:-.35rem;
}
@media(max-width:980px){
  #roi-waterfall .waterfall-chart:before{top:316px}
}
@media(max-width:650px){
  #roi-waterfall .waterfall-chart{
    min-height:auto;
    gap:.85rem;
  }
  #roi-waterfall .waterfall-chart:before,
  #roi-waterfall .waterfall-chart:after{display:none}
  #roi-waterfall .waterfall-bar{
    grid-template-columns:86px minmax(0,1fr);
    grid-template-rows:auto auto;
    gap:.55rem .8rem;
    align-items:center;
    padding:.8rem;
    border-radius:18px;
    background:rgba(255,255,255,.72);
    border:1px solid var(--line);
  }
  #roi-waterfall .waterfall-value{grid-column:1;grid-row:1 / span 2;justify-self:start}
  #roi-waterfall .waterfall-bar i{display:none}
  #roi-waterfall .waterfall-bar b{grid-column:2;grid-row:1}
  #roi-waterfall .waterfall-bar > span:not(.waterfall-value){grid-column:2;grid-row:2;margin-top:0}
}


/* Hero glass text contrast polish */
.photo-backed .person-card{
  background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(255,255,255,.56));
  border-color:rgba(255,255,255,.72);
  box-shadow:0 18px 44px rgba(7,26,45,.18),inset 0 1px 0 rgba(255,255,255,.72);
  backdrop-filter:blur(14px) saturate(1.35);
}
.photo-backed .person-card b{
  color:#061a2d;
  font-weight:900;
  text-shadow:0 1px 0 rgba(255,255,255,.45);
}
.photo-backed .person-card small{
  color:#24465a;
  font-size:.72rem;
  font-weight:850;
  line-height:1.22;
  text-shadow:0 1px 0 rgba(255,255,255,.5);
}
.photo-backed .collab-card{
  background:linear-gradient(135deg,rgba(7,26,45,.78),rgba(7,26,45,.56));
  border-color:rgba(255,255,255,.3);
}
.photo-backed .collab-card small{
  color:#e3f0f6;
  font-weight:750;
}
.photo-backed .collab-card span{
  color:#8ff2eb;
}
.photo-backed .chat-bubble{
  background:rgba(255,255,255,.76);
  color:#17384d;
  border-color:rgba(255,255,255,.78);
  text-shadow:0 1px 0 rgba(255,255,255,.45);
}
.photo-backed .chat-bubble:after{
  background:rgba(255,255,255,.76);
  border-color:rgba(255,255,255,.78);
}
@media(max-width:650px){
  .photo-backed .person-card{background:rgba(255,255,255,.84)}
  .photo-backed .person-card small{font-size:.66rem}
}


/* Hero overlay placement: keep faces visible */
.photo-backed .person-card{
  width:158px;
  padding:.68rem .76rem;
  gap:.58rem;
}
.photo-backed .avatar{
  width:40px;
  height:40px;
}
.photo-backed .avatar:before{top:8px;width:12px;height:12px}
.photo-backed .avatar:after{bottom:7px;width:24px;height:13px}
.photo-backed .person-a{left:4%;top:4%}
.photo-backed .person-b{right:4%;top:4%}
.photo-backed .person-c{right:4%;bottom:5%}
.photo-backed .person-d{left:4%;bottom:5%}
.photo-backed .collab-card{
  top:64%;
  width:220px;
  min-height:150px;
  padding:1rem;
}
.photo-backed .collab-card b{
  font-size:1.2rem;
  margin:.35rem 0 .62rem;
}
.photo-backed .collab-card small{
  font-size:.72rem;
}
.photo-backed .mini-bars{
  margin-top:.78rem;
  gap:.34rem;
}
.photo-backed .mini-bars i{
  height:7px;
}
.photo-backed .chat-bubble.one{
  left:50%;
  top:3.2%;
  transform:translateX(-50%);
}
.photo-backed .chat-bubble.two{
  right:16%;
  bottom:1.8%;
}
.photo-backed .people-photo{
  object-position:center 43%;
}
@media(max-width:1100px){
  .photo-backed .person-card{width:148px}
  .photo-backed .collab-card{width:205px;top:65%}
}
@media(max-width:650px){
  .photo-backed .person-card{
    width:132px;
    padding:.58rem;
  }
  .photo-backed .collab-card{
    top:62%;
    width:178px;
    min-height:132px;
    padding:.85rem;
  }
  .photo-backed .collab-card b{font-size:1rem}
  .photo-backed .person-a{left:3%;top:4%}
  .photo-backed .person-b{right:3%;top:4%}
  .photo-backed .person-c{right:3%;bottom:4%}
  .photo-backed .person-d{left:3%;bottom:4%}
}

/* Animated template workflow hero */
.template-hero-visual{width:min(100%,600px);max-width:600px;justify-self:end}
.template-system-hero{position:relative;width:600px;height:585px;transform-origin:top left;border-radius:36px;overflow:visible;background:transparent;border:0;box-shadow:none;isolation:isolate}
.template-system-hero:before{content:"";position:absolute;inset:26px 14px 30px 2px;border-radius:42% 58% 48% 52%;background:linear-gradient(135deg,rgba(79,209,197,.16),rgba(255,255,255,.42) 42%,rgba(124,92,255,.14));z-index:0;animation:templateBlob 13s ease-in-out infinite}
.template-ambient{position:absolute;border:1px solid rgba(79,160,180,.23);background:rgba(255,255,255,.23);border-radius:42% 58% 55% 45%;z-index:1;animation:templateBlob 12s ease-in-out infinite}
.template-ambient-one{width:312px;height:292px;left:-18px;top:12px}
.template-ambient-two{width:300px;height:284px;right:-10px;bottom:22px;animation-delay:-5s}
.template-dotfield{position:absolute;width:124px;height:104px;background-image:radial-gradient(circle,rgba(92,114,255,.28) 1.3px,transparent 1.6px);background-size:14px 14px;z-index:1;opacity:.65;animation:templateDrift 9s ease-in-out infinite}
.template-dotfield-one{left:290px;top:18px}
.template-dotfield-two{left:-10px;bottom:24px;animation-delay:-3s}
.template-ui-card{position:absolute;z-index:4;border:1px solid rgba(255,255,255,.82);background:rgba(255,255,255,.72);backdrop-filter:blur(18px);box-shadow:0 22px 52px rgba(7,26,45,.11);border-radius:20px;color:var(--ink)}
.template-card-kicker{display:block;color:#536f88;text-transform:uppercase;letter-spacing:.1em;font-size:.66rem;font-weight:900;margin-bottom:.8rem}
.template-library-panel{left:0;top:44px;width:218px;padding:.95rem;animation:templateFloat 6.5s ease-in-out infinite}
.template-list{display:grid;gap:.42rem}
.template-list-item{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:.5rem;min-height:46px;padding:.44rem .5rem;border-radius:11px;background:rgba(255,255,255,.64);border:1px solid rgba(218,230,237,.72);animation:templateListScan 7.2s ease-in-out infinite}.template-list-item:nth-child(2),.template-list-item:nth-child(2) i{animation-delay:1.2s}.template-list-item:nth-child(3),.template-list-item:nth-child(3) i{animation-delay:2.4s}.template-list-item:nth-child(4),.template-list-item:nth-child(4) i{animation-delay:3.6s}.template-list-item:nth-child(5),.template-list-item:nth-child(5) i{animation-delay:4.8s}.template-list-item:nth-child(6),.template-list-item:nth-child(6) i{animation-delay:6s}
.template-list-item i{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(79,209,197,.18),rgba(124,92,255,.22));color:#5147de;font-style:normal;animation:templateListIcon 7.2s ease-in-out infinite}.template-list-item i svg{display:block;width:16px;height:16px}
.template-list-item b,.template-step b,.template-message-card b{display:block;color:var(--ink);line-height:1.2}
.template-list-item b{font-size:.71rem}.template-list-item small{display:block;color:#5f788b;font-size:.65rem;line-height:1.25;margin-top:.08rem}.template-list-item.active{box-shadow:inset 4px 0 0 var(--teal)}
.template-message-card{width:236px;padding:1.15rem 1.25rem}.template-launch-card{right:76px;top:26px;animation:templateFloat 7s ease-in-out infinite;animation-delay:-2s}.template-reminder-card{right:44px;bottom:0;animation:templateFloat 7.5s ease-in-out infinite;animation-delay:-4s}
.template-message-card b{font-size:.88rem}.template-message-card small{display:block;color:#536f83;font-size:.75rem;line-height:1.35;margin-top:.25rem}.template-line{display:block;height:6px;border-radius:999px;background:#dfe8f0;margin-top:.85rem}.template-line.short{width:58%;margin-top:.5rem}.template-line.long{width:84%}.template-cta-line{display:block;width:70px;height:8px;border-radius:999px;background:linear-gradient(90deg,#55cfc5,#8067f5);margin:.85rem 0 0 auto;animation:templateBar 2.6s ease-in-out infinite}
.template-float-icon,.template-orbit-icon{position:absolute;display:grid;place-items:center;border-radius:50%;color:#fff;font-weight:900;box-shadow:0 14px 28px rgba(7,26,45,.16);z-index:6}.template-float-icon svg,.template-orbit-icon svg{display:block;width:26px;height:26px;color:#fff}.template-orbit-icon.check svg{width:22px;height:22px}
.template-float-icon{width:54px;height:54px;left:-36px;top:-16px;background:linear-gradient(135deg,#4fd1c5,#7c5cff);animation:templatePulse 2.8s ease-in-out infinite}.template-float-icon.bell{background:linear-gradient(135deg,#9f95ff,#7560ef)}
.template-orbit-icon{width:58px;height:58px;background:linear-gradient(135deg,#4fd1c5,#6866e9);border:5px solid rgba(255,255,255,.88);animation:templatePulse 3.1s ease-in-out infinite}.template-orbit-icon.team{right:-6px;top:196px}.template-orbit-icon.check{width:48px;height:48px;left:246px;bottom:14px;background:linear-gradient(135deg,#4fd1c5,#65c2da);animation-delay:-1.3s}
.template-workflow-card{right:19px;top:214px;width:330px;padding:1.05rem 1.2rem 1.15rem;animation:templateFloat 6.8s ease-in-out infinite;animation-delay:-1s}
.template-workflow-track{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.template-workflow-track:before,.template-workflow-track:after{content:"";position:absolute;left:12%;right:12%;top:22px;height:4px;border-radius:999px}.template-workflow-track:before{background:#e2ecf3}.template-workflow-track:after{background:linear-gradient(90deg,#4fd1c5,#6d89e9,#7c5cff);clip-path:inset(0 100% 0 0);animation:templateTrackFill 7.2s ease-in-out infinite}
.template-step{position:relative;text-align:center;z-index:2}.template-step i{width:48px;height:48px;margin:0 auto .5rem;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #dbe8ef;color:#88a0b3;font-style:normal;box-shadow:0 8px 20px rgba(7,26,45,.08);animation:templateStepScan 7.2s ease-in-out infinite}.template-step i svg{display:block;width:22px;height:22px}.template-step:nth-child(2) i{animation-delay:1.8s}.template-step:nth-child(3) i{animation-delay:3.6s}.template-step:nth-child(4) i{animation-delay:5.4s}
.template-step.is-active i{background:#fff;box-shadow:inset 0 0 0 3px var(--teal),0 8px 20px rgba(7,26,45,.08);color:#2aa79d}.template-step.is-done i{background:linear-gradient(135deg,#8a73ff,#6f5bef);border-color:transparent;color:#fff;animation-name:templateStepScanDone}.template-step b{font-size:.76rem}.template-step small{display:block;color:#5f788b;font-size:.64rem;line-height:1.25;margin-top:.14rem}
.template-stat-card{left:44px;bottom:13px;width:220px;padding:1.05rem 1.1rem 1rem;display:grid;grid-template-columns:56px 1fr;column-gap:.8rem;align-items:center;animation:templateFloat 7.2s ease-in-out infinite;animation-delay:-3s}.template-stat-card span:not(.template-stat-icon){color:#48677d;font-size:.75rem;line-height:1.35}.template-stat-card b{display:block;color:#1f9c9a;font-size:1.85rem;line-height:1;margin-top:.15rem}.template-stat-card small{grid-column:2;color:#5f788b;font-size:.68rem;margin-top:.2rem}
.template-stat-icon{grid-row:span 3;width:52px;height:52px;border-radius:15px;background:linear-gradient(135deg,#4fd1c5,#7c5cff);display:grid;grid-template-columns:repeat(3,7px);gap:4px;align-items:end;justify-content:center;padding:13px}.template-stat-icon i{display:block;width:7px;border-radius:999px;background:#fff;animation:templateMiniBars 2.4s ease-in-out infinite}.template-stat-icon i:nth-child(1){height:15px}.template-stat-icon i:nth-child(2){height:22px;animation-delay:.15s}.template-stat-icon i:nth-child(3){height:30px;animation-delay:.3s}
.template-wires{position:absolute;inset:0;width:100%;height:100%;z-index:2;overflow:visible;pointer-events:none}.template-wires .wire{fill:none;stroke:rgba(124,92,255,.38);stroke-width:2;stroke-linecap:round;stroke-dasharray:6 7;animation:wireDash 1.7s linear infinite}.template-wires .wire-flow{fill:none;stroke:url(#templateWireGrad);stroke-width:3.4;stroke-linecap:round;stroke-dasharray:.16 .84;filter:drop-shadow(0 0 5px rgba(92,114,255,.45));animation:wireFlow 3.6s linear infinite}.template-wires .w2{animation-delay:-.9s}.template-wires .w3{animation-delay:-1.8s}.template-wires .w4{animation-delay:-2.7s}.template-wires .wire-node{fill:#5c72ff}.template-wires .wire-halo{fill:rgba(92,114,255,.22);transform-box:fill-box;transform-origin:center;animation:wireHalo 2.6s ease-in-out infinite}@keyframes wireDash{to{stroke-dashoffset:-13}}@keyframes wireFlow{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes wireHalo{0%,100%{transform:scale(.85);opacity:.9}50%{transform:scale(1.6);opacity:.25}}
@keyframes templateFloat{50%{transform:translateY(-10px)}}@keyframes templatePulse{50%{transform:scale(1.07);box-shadow:0 16px 32px rgba(79,209,197,.22)}}@keyframes templateBlob{50%{transform:translate(12px,8px) rotate(7deg);border-radius:58% 42% 45% 55%}}@keyframes templateDrift{50%{transform:translateY(-12px);opacity:.9}}@keyframes templateListScan{0%{background:rgba(255,255,255,.64);border-color:rgba(218,230,237,.72);box-shadow:inset 4px 0 0 rgba(79,209,197,0),0 0 0 rgba(7,26,45,0)}4%{background:#fff;border-color:rgba(79,209,197,.5);box-shadow:inset 4px 0 0 rgba(79,209,197,1),0 8px 18px rgba(7,26,45,.08)}14%{background:#fff;border-color:rgba(79,209,197,.5);box-shadow:inset 4px 0 0 rgba(79,209,197,1),0 8px 18px rgba(7,26,45,.08)}19%{background:rgba(255,255,255,.64);border-color:rgba(218,230,237,.72);box-shadow:inset 4px 0 0 rgba(79,209,197,0),0 0 0 rgba(7,26,45,0)}100%{background:rgba(255,255,255,.64);border-color:rgba(218,230,237,.72);box-shadow:inset 4px 0 0 rgba(79,209,197,0),0 0 0 rgba(7,26,45,0)}}@keyframes templateListIcon{0%{box-shadow:inset 0 0 0 30px rgba(107,92,231,0);color:#5147de}4%{box-shadow:inset 0 0 0 30px rgba(107,92,231,1);color:#fff}14%{box-shadow:inset 0 0 0 30px rgba(107,92,231,1);color:#fff}19%{box-shadow:inset 0 0 0 30px rgba(107,92,231,0);color:#5147de}100%{box-shadow:inset 0 0 0 30px rgba(107,92,231,0);color:#5147de}}@keyframes templateStepScan{0%{transform:scale(1);box-shadow:inset 0 0 0 0 rgba(79,209,197,0),0 8px 20px rgba(7,26,45,.08);color:#88a0b3}4%{transform:scale(1.1);box-shadow:inset 0 0 0 3px rgba(79,209,197,1),0 12px 26px rgba(79,209,197,.3);color:#2aa79d}20%{transform:scale(1.1);box-shadow:inset 0 0 0 3px rgba(79,209,197,1),0 12px 26px rgba(79,209,197,.3);color:#2aa79d}25%{transform:scale(1);box-shadow:inset 0 0 0 0 rgba(79,209,197,0),0 8px 20px rgba(7,26,45,.08);color:#88a0b3}100%{transform:scale(1);box-shadow:inset 0 0 0 0 rgba(79,209,197,0),0 8px 20px rgba(7,26,45,.08);color:#88a0b3}}@keyframes templateStepScanDone{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(124,92,255,0),0 8px 20px rgba(124,92,255,.26)}4%{transform:scale(1.12);box-shadow:0 0 0 6px rgba(124,92,255,.18),0 14px 30px rgba(124,92,255,.42)}20%{transform:scale(1.12);box-shadow:0 0 0 6px rgba(124,92,255,.18),0 14px 30px rgba(124,92,255,.42)}25%{transform:scale(1);box-shadow:0 0 0 0 rgba(124,92,255,0),0 8px 20px rgba(124,92,255,.26)}100%{transform:scale(1);box-shadow:0 0 0 0 rgba(124,92,255,0),0 8px 20px rgba(124,92,255,.26)}}@keyframes templateTrackFill{0%{clip-path:inset(0 100% 0 0);opacity:1}20%{clip-path:inset(0 100% 0 0)}26%{clip-path:inset(0 66.7% 0 0)}45%{clip-path:inset(0 66.7% 0 0)}51%{clip-path:inset(0 33.3% 0 0)}70%{clip-path:inset(0 33.3% 0 0)}76%{clip-path:inset(0 0 0 0)}95%{clip-path:inset(0 0 0 0);opacity:1}99%{clip-path:inset(0 0 0 0);opacity:0}100%{clip-path:inset(0 100% 0 0);opacity:0}}@keyframes templateBar{50%{width:102px}}@keyframes templateMiniBars{50%{transform:scaleY(.72);opacity:.82}}
.template-hero-grid{grid-template-columns:1fr 1.12fr;gap:3rem}
@media(max-width:1180px){.template-system-hero{transform:scale(.9);margin-bottom:-59px}}
@media(max-width:1040px){.template-system-hero{transform:scale(.8);margin-bottom:-117px}}
@media(max-width:940px){.template-system-hero{transform:scale(.72);margin-bottom:-164px}}
@media(max-width:900px){.template-hero-grid{grid-template-columns:1fr}.template-hero-visual{justify-self:start;width:min(100%,600px)}.template-system-hero{transform:none;margin-bottom:0}}
@media(max-width:635px){.template-system-hero{transform:scale(0.93);margin-bottom:-41px}}@media(max-width:600px){.template-system-hero{transform:scale(0.87);margin-bottom:-76px}}@media(max-width:560px){.template-system-hero{transform:scale(0.8);margin-bottom:-117px}}@media(max-width:500px){.template-system-hero{transform:scale(0.71);margin-bottom:-170px}}@media(max-width:450px){.template-system-hero{transform:scale(0.63);margin-bottom:-216px}}@media(max-width:400px){.template-system-hero{transform:scale(0.55);margin-bottom:-263px}}@media(max-width:360px){.template-system-hero{transform:scale(0.48);margin-bottom:-304px}}@media(max-width:320px){.template-system-hero{transform:scale(0.43);margin-bottom:-333px}}

/* Animated home dashboard hero */
.home-hero{position:relative;overflow:hidden}
.home-dashboard-grid{grid-template-columns:minmax(430px,.88fr) minmax(520px,1.12fr);gap:1.5rem}
.home-dashboard-grid h1{font-size:clamp(3rem,4.75vw,4.45rem);max-width:640px}
.home-dashboard-grid .lead{max-width:560px}.home-dashboard-visual{width:min(100%,690px);max-width:690px;justify-self:end}
.home-dashboard-hero{position:relative;width:690px;height:665px;transform-origin:top left;transform:scale(.935);margin-bottom:-43px;border-radius:38px;isolation:isolate}
.home-dashboard-hero:before,.home-dashboard-hero:after{content:"";position:absolute;z-index:0;pointer-events:none}.home-dashboard-hero:before{inset:14px -14px 0 -10px;border-radius:46% 54% 42% 58%;background:radial-gradient(56% 52% at 24% 30%,rgba(66,206,192,.62),transparent 70%),radial-gradient(54% 56% at 78% 66%,rgba(124,92,255,.5),transparent 72%),radial-gradient(46% 44% at 60% 16%,rgba(88,148,240,.4),transparent 68%),radial-gradient(60% 60% at 46% 50%,rgba(168,214,235,.34),transparent 74%);filter:blur(5px);animation:homeCloud 17s ease-in-out infinite}.home-dashboard-hero:after{inset:78px 44px 72px 54px;border-radius:58% 42% 55% 45%;background:radial-gradient(58% 58% at 38% 38%,rgba(255,255,255,.7),transparent 68%),radial-gradient(52% 52% at 72% 72%,rgba(120,196,222,.34),transparent 70%);filter:blur(12px);animation:homeCloudTwo 21s ease-in-out infinite}
.home-dash-blob{position:absolute;border-radius:44% 56% 58% 42%;border:1px solid rgba(79,170,190,.26);background:rgba(255,255,255,.22);z-index:1;animation:homeBlob 14s ease-in-out infinite}.blob-one{width:410px;height:370px;right:58px;top:8px}.blob-two{width:380px;height:330px;right:0;bottom:42px;animation-delay:-6s}.blob-three{width:330px;height:300px;left:-46px;top:210px;border-color:rgba(124,92,255,.2);animation-delay:-10s;animation-duration:18s}
.home-dash-dots{position:absolute;width:150px;height:126px;background-image:radial-gradient(circle,rgba(79,209,197,.38) 1.4px,transparent 1.7px);background-size:13px 13px;z-index:1;opacity:.72;animation:homeDrift 8.5s ease-in-out infinite}.dots-one{left:166px;top:0}.dots-two{width:112px;height:96px;left:24px;bottom:8px;background-image:radial-gradient(circle,rgba(124,92,255,.3) 1.4px,transparent 1.7px);animation-delay:-4s;animation-duration:10s}
.home-dash-orbit{position:absolute;z-index:1;border:1.5px solid rgba(124,92,255,.2);border-radius:50%;animation:homeOrbit 26s linear infinite}.orbit-one{width:520px;height:310px;right:4px;top:36px;--tilt:17deg}.orbit-two{width:470px;height:390px;right:34px;bottom:14px;--tilt:-21deg;border-color:rgba(79,170,190,.22);animation-duration:34s;animation-direction:reverse}.orbit-three{width:600px;height:470px;left:-72px;top:96px;--tilt:8deg;border-color:rgba(96,152,238,.16);animation-duration:44s}.home-dash-spark{position:absolute;z-index:2;border-radius:50%;animation:homeSpark 5.4s ease-in-out infinite}.home-dash-spark.s1{left:24%;top:15%;width:9px;height:9px;background:#4fd1c5}.home-dash-spark.s2{right:15%;top:6%;width:12px;height:12px;background:#5fc9d6;animation-delay:-.7s}.home-dash-spark.s3{right:7%;top:21%;width:9px;height:9px;background:#7c5cff;animation-delay:-1.4s}.home-dash-spark.s4{left:2%;top:35%;width:11px;height:11px;background:#5b9be8;animation-delay:-2.1s}.home-dash-spark.s5{right:2%;top:47%;width:9px;height:9px;background:#8a73ff;animation-delay:-2.8s}.home-dash-spark.s6{left:6%;top:60%;width:8px;height:8px;background:#4fd1c5;animation-delay:-3.5s}.home-dash-spark.s7{left:41%;bottom:2%;width:10px;height:10px;background:#6d8fe8;animation-delay:-4.2s}.home-dash-spark.s8{left:33%;top:8%;width:7px;height:7px;background:#7c5cff;animation-delay:-1.1s}.home-dash-spark.s9{right:26%;bottom:6%;width:8px;height:8px;background:#4fd1c5;animation-delay:-3.1s}
.dash-card{position:absolute;z-index:4;border:1px solid rgba(255,255,255,.86);background:rgba(255,255,255,.78);backdrop-filter:blur(18px);border-radius:22px;box-shadow:0 22px 58px rgba(7,26,45,.12);color:var(--ink)}
.hub-workflow-card{right:72px;top:126px;width:460px;padding:1.4rem 1.5rem 1.6rem;border-radius:28px;animation:homeFloat 7s ease-in-out infinite}.hub-head{display:grid;grid-template-columns:44px 1fr;gap:.85rem;align-items:center}.hub-logo{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(140deg,#eef1ff,#e4f6f6);border:1px solid rgba(190,200,245,.6);color:#6d5eea}.hub-logo svg{display:block;width:22px;height:22px}.hub-head b{display:block;font-size:1rem}.hub-head small{display:block;color:#5b7182;font-size:.76rem;line-height:1.45;margin-top:.12rem}
.hub-flow{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem;margin-top:1.3rem;padding:1.15rem .6rem 1rem;border:1px solid rgba(216,229,240,.9);border-radius:20px;background:rgba(255,255,255,.5)}
.hub-step{position:relative;z-index:2;text-align:center}.hub-step i{width:58px;height:58px;margin:0 auto .6rem;border-radius:50%;display:grid;place-items:center;color:#fff;font-style:normal;box-shadow:0 10px 22px rgba(7,26,45,.14);animation:hubStepScan 7.6s ease-in-out infinite}.hub-step i svg{display:block;width:26px;height:26px}.hub-step.s1 i{background:linear-gradient(140deg,#5ad9c4,#31b6a4);--halo:rgba(79,209,197,.3)}.hub-step.s2 i{background:linear-gradient(140deg,#6bb6ea,#4184d4);--halo:rgba(80,145,220,.28);animation-delay:1.9s}.hub-step.s3 i{background:linear-gradient(140deg,#8390ea,#5a63d8);--halo:rgba(103,113,222,.28);animation-delay:3.8s}.hub-step.s4 i{background:linear-gradient(140deg,#9a80ff,#6c48e8);--halo:rgba(124,92,255,.3);animation-delay:5.7s}.hub-step+.hub-step:before,.hub-step+.hub-step:after{content:"";position:absolute;top:29px;background:none}.hub-step+.hub-step:before{left:-.35rem;width:22px;height:2px;border-radius:2px;background:#cfdce6;transform:translate(-50%,-50%);animation:7.6s ease-in-out infinite}.hub-step+.hub-step:after{left:calc(-.35rem + 8px);width:8px;height:8px;border-top:2px solid #cfdce6;border-right:2px solid #cfdce6;border-radius:0 2px 0 0;transform:translate(-50%,-50%) rotate(45deg);animation:7.6s ease-in-out infinite}.hub-step.s2:before{animation-name:hubArrowBar2}.hub-step.s2:after{animation-name:hubArrowHead2}.hub-step.s3:before{animation-name:hubArrowBar3}.hub-step.s3:after{animation-name:hubArrowHead3}.hub-step.s4:before{animation-name:hubArrowBar4}.hub-step.s4:after{animation-name:hubArrowHead4}.hub-step b{display:block;font-size:.78rem}.hub-step small{display:block;color:#607787;font-size:.64rem;line-height:1.25;margin-top:.18rem}
.quarter-card{right:48px;top:8px;width:245px;padding:1.1rem 1.2rem;animation:homeFloat 6.8s ease-in-out infinite;animation-delay:-1.5s}.quarter-card span,.teams-card>b,.resources-card>b{display:block;font-size:.72rem;color:#425f75;font-weight:900;margin-bottom:.45rem}.quarter-card div:not(.quarter-bars){display:flex;align-items:center;gap:.75rem}.quarter-card b{font-size:2.05rem;line-height:1}.quarter-card em{font-style:normal;color:#159b92;background:#dcf7f2;border-radius:999px;padding:.25rem .48rem;font-size:.67rem;font-weight:900}.quarter-card small{display:block;color:#7b8c99;font-size:.67rem}.quarter-bars{position:absolute;right:1.1rem;bottom:1rem;display:flex;gap:.42rem;align-items:end;height:54px}.quarter-bars i{width:9px;border-radius:999px;background:linear-gradient(180deg,#91b4ff,#7c5cff);animation:homeBars 2.4s ease-in-out infinite}.quarter-bars i:nth-child(1){height:12px;background:#58c6cf}.quarter-bars i:nth-child(2){height:22px;background:#59bfd7;animation-delay:.1s}.quarter-bars i:nth-child(3){height:31px;background:#66aedf;animation-delay:.2s}.quarter-bars i:nth-child(4){height:40px;animation-delay:.3s}.quarter-bars i:nth-child(5){height:48px;animation-delay:.4s}.quarter-bars i:nth-child(6){height:56px;animation-delay:.5s}
.teams-card{left:18px;bottom:96px;width:205px;padding:1rem 1.1rem;animation:homeFloat 7.3s ease-in-out infinite;animation-delay:-3s}.team-row{display:grid;grid-template-columns:1fr auto;gap:.45rem;margin-top:.62rem}.team-row span{font-size:.69rem;color:#425f75}.team-row strong{font-size:.72rem}.team-row i{grid-column:1/3;height:7px;border-radius:999px;background:linear-gradient(90deg,#4fd1c5,#7c5cff);width:var(--w);animation:homeWidth 3s ease-in-out infinite}
.health-card{left:268px;bottom:108px;width:212px;padding:1rem 1rem 1.1rem;display:grid;justify-items:center;gap:.7rem;background:linear-gradient(135deg,rgba(79,209,197,.88),rgba(92,126,219,.92));color:#fff;text-align:center;animation:homeFloat 7.1s ease-in-out infinite;animation-delay:-2s}.health-title{display:block;color:#fff;font-size:.82rem;letter-spacing:.02em}.health-ring{width:104px;height:104px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:conic-gradient(#fff 0 78%,rgba(255,255,255,.26) 78%);position:relative}.health-ring:before{content:"";position:absolute;inset:11px;border-radius:50%;background:linear-gradient(135deg,#54c6d0,#6b82dc)}.health-ring b,.health-ring small{position:relative;z-index:1;color:#fff}.health-ring b{font-size:2.05rem;line-height:.92}.health-ring small{font-size:.62rem;font-weight:800;line-height:1;margin-top:.2rem}
.resources-card{right:-45px;bottom:108px;width:210px;padding:1.1rem 1.05rem;animation:homeFloat 7.6s ease-in-out infinite;animation-delay:-4s}.resources-card span{display:block;color:#36556a;font-size:.69rem;font-weight:800;margin:.62rem 0}.resources-card span:before{content:"";display:inline-block;width:8px;height:8px;border:1px solid #8aa2b4;border-radius:2px;margin-right:.45rem}.resources-card a{display:inline-block;color:#6d5eea;font-size:.7rem;font-weight:900;margin-top:.45rem}
.referral-toast{left:132px;bottom:0;width:360px;padding:.9rem 1rem;display:grid;grid-template-columns:42px 1fr auto;gap:.8rem;align-items:center;animation:homeToast 6.5s ease-in-out infinite}.toast-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#4fd1c5,#7c5cff);color:#fff;font-weight:900}.referral-toast p{margin:0;color:#22394c;font-size:.78rem;line-height:1.35}.referral-toast small{color:#718795;font-size:.66rem}.referral-toast em{grid-column:2/4;justify-self:end;font-style:normal;color:#168c86;background:#dff8f4;border-radius:999px;padding:.25rem .55rem;font-size:.62rem;font-weight:900}
.home-dash-icon{position:absolute;display:grid;place-items:center;border-radius:50%;z-index:5;color:#fff;box-shadow:0 14px 30px rgba(7,26,45,.16);animation:homePulse 3s ease-in-out infinite}.home-dash-icon svg{display:block;width:30px;height:30px}.home-dash-icon.users{left:52px;top:142px;width:68px;height:68px;background:linear-gradient(135deg,#4fd1c5,#39a8c4);border:5px solid rgba(255,255,255,.9)}.home-dash-icon.users svg{width:32px;height:32px}.home-dash-icon.star{right:6px;top:244px;width:60px;height:60px;background:linear-gradient(135deg,#9078ff,#6742e6);border:5px solid rgba(255,255,255,.9);animation-delay:-1s}.home-dash-icon.star svg{width:28px;height:28px}.home-dash-icon.bell{right:116px;bottom:28px;width:58px;height:58px;background:#fff;color:#7c5cff;border:1px solid #e6edf3;animation-delay:-2s}.home-dash-icon.bell svg{width:26px;height:26px}.home-dash-icon.bell:after{content:"";position:absolute;top:1px;right:1px;width:15px;height:15px;border-radius:50%;background:#4b9bf0;border:3px solid #fff;animation:homeBadge 2.6s ease-in-out infinite}
@keyframes homeFloat{50%{transform:translateY(-11px)}}@keyframes homePulse{50%{transform:scale(1.07)}}@keyframes homeBlob{50%{transform:translate(12px,9px) rotate(7deg);border-radius:58% 42% 45% 55%}}@keyframes homeDrift{50%{transform:translateY(-13px);opacity:.95}}@keyframes homeOrbit{0%{transform:rotate(var(--tilt,0deg)) scale(1)}50%{transform:rotate(calc(var(--tilt,0deg) + 180deg)) scale(1.04)}100%{transform:rotate(calc(var(--tilt,0deg) + 360deg)) scale(1)}}@keyframes homeCloud{0%,100%{border-radius:46% 54% 42% 58%;transform:translate(0,0) rotate(0) scale(1)}33%{border-radius:58% 42% 56% 44%;transform:translate(10px,-8px) rotate(4deg) scale(1.03)}66%{border-radius:40% 60% 48% 52%;transform:translate(-8px,10px) rotate(-4deg) scale(.98)}}@keyframes homeCloudTwo{0%,100%{border-radius:58% 42% 55% 45%;transform:translate(0,0) scale(1);opacity:.85}50%{border-radius:44% 56% 40% 60%;transform:translate(-14px,12px) scale(1.07);opacity:1}}@keyframes homeSpark{0%,100%{transform:translateY(0) scale(.72);opacity:.35}50%{transform:translateY(-10px) scale(1);opacity:1}}@keyframes homeBadge{0%{box-shadow:0 0 0 0 rgba(75,155,240,.55)}70%{box-shadow:0 0 0 9px rgba(75,155,240,0)}100%{box-shadow:0 0 0 0 rgba(75,155,240,0)}}@keyframes hubStepScan{0%{transform:scale(1);filter:saturate(.6) brightness(1.06);box-shadow:0 0 0 0 var(--halo),0 10px 22px rgba(7,26,45,.14)}5%{transform:scale(1.13);filter:saturate(1.08) brightness(1);box-shadow:0 0 0 8px var(--halo),0 16px 30px rgba(7,26,45,.2)}22%{transform:scale(1.13);filter:saturate(1.08) brightness(1);box-shadow:0 0 0 8px var(--halo),0 16px 30px rgba(7,26,45,.2)}28%{transform:scale(1);filter:saturate(.6) brightness(1.06);box-shadow:0 0 0 0 var(--halo),0 10px 22px rgba(7,26,45,.14)}100%{transform:scale(1);filter:saturate(.6) brightness(1.06);box-shadow:0 0 0 0 var(--halo),0 10px 22px rgba(7,26,45,.14)}}@keyframes hubArrowBar2{0%{background:#cfdce6}22%{background:#cfdce6}25%{background:#4184d4}95%{background:#4184d4}99%{background:#cfdce6}100%{background:#cfdce6}}@keyframes hubArrowHead2{0%{border-color:#cfdce6}22%{border-color:#cfdce6}25%{border-color:#4184d4}95%{border-color:#4184d4}99%{border-color:#cfdce6}100%{border-color:#cfdce6}}@keyframes hubArrowBar3{0%{background:#cfdce6}47%{background:#cfdce6}50%{background:#5a63d8}95%{background:#5a63d8}99%{background:#cfdce6}100%{background:#cfdce6}}@keyframes hubArrowHead3{0%{border-color:#cfdce6}47%{border-color:#cfdce6}50%{border-color:#5a63d8}95%{border-color:#5a63d8}99%{border-color:#cfdce6}100%{border-color:#cfdce6}}@keyframes hubArrowBar4{0%{background:#cfdce6}72%{background:#cfdce6}75%{background:#6c48e8}95%{background:#6c48e8}99%{background:#cfdce6}100%{background:#cfdce6}}@keyframes hubArrowHead4{0%{border-color:#cfdce6}72%{border-color:#cfdce6}75%{border-color:#6c48e8}95%{border-color:#6c48e8}99%{border-color:#cfdce6}100%{border-color:#cfdce6}}@keyframes homeBars{50%{transform:scaleY(.72);opacity:.82}}@keyframes homeWidth{50%{width:calc(var(--w) - 12%)}}@keyframes homeToast{0%,100%{transform:translateY(0);opacity:.96}50%{transform:translateY(-9px);opacity:1}}
@media(max-width:1240px){.home-dashboard-hero{transform:scale(.91);margin-bottom:-60px}}@media(max-width:1180px){.home-dashboard-hero{transform:scale(.845);margin-bottom:-103px}}@media(max-width:1100px){.home-dashboard-grid{grid-template-columns:1fr;gap:3rem}.home-dashboard-visual{justify-self:start}.home-dashboard-hero{transform:none;margin-bottom:0}}@media(max-width:745px){.home-dashboard-hero{transform:scale(.88);margin-bottom:-80px}}
@media(max-width:650px){.home-dashboard-grid h1{font-size:2.85rem}}@media(max-width:640px){.home-dashboard-hero{transform:scale(0.76);margin-bottom:-160px}}@media(max-width:560px){.home-dashboard-hero{transform:scale(0.68);margin-bottom:-213px}}@media(max-width:500px){.home-dashboard-hero{transform:scale(0.6);margin-bottom:-266px}}@media(max-width:450px){.home-dashboard-hero{transform:scale(0.53);margin-bottom:-313px}}@media(max-width:400px){.home-dashboard-hero{transform:scale(0.47);margin-bottom:-352px}}@media(max-width:360px){.home-dashboard-hero{transform:scale(0.41);margin-bottom:-392px}}@media(max-width:320px){.home-dashboard-hero{transform:scale(0.37);margin-bottom:-419px}}

/* Sequence ramp: shared teal->violet scale applied to ordered sequences site-wide. */
.fly-node i{color:#fff}
.fly-node.n1 i{background:linear-gradient(140deg,#33c9a7,#2bab8e)}
.fly-node.n2 i{background:linear-gradient(140deg,#45cfc4,#3bb0a7)}
.fly-node.n3 i{background:linear-gradient(140deg,#55bdda,#48a1b9)}
.fly-node.n4 i{background:linear-gradient(140deg,#6699e4,#5782c2)}
.fly-node.n5 i{background:linear-gradient(140deg,#7278ef,#6166cb)}
.fly-node.n6 i{background:linear-gradient(140deg,#7c5cff,#694ed9)}






.steps-7 li:nth-child(1):before{background:rgba(51,201,167,.17);color:#1d715e}
.steps-7 li:nth-child(2):before{background:rgba(66,206,191,.17);color:#25736b}
.steps-7 li:nth-child(3):before{background:rgba(80,195,211,.17);color:#2d6d76}
.steps-7 li:nth-child(4):before{background:rgba(94,171,223,.17);color:#35607d}
.steps-7 li:nth-child(5):before{background:rgba(106,142,232,.17);color:#3b5082}
.steps-7 li:nth-child(6):before{background:rgba(116,115,242,.17);color:#414088}
.steps-7 li:nth-child(7):before{background:rgba(124,92,255,.17);color:#45348f}
.steps-5 li:nth-child(1):before{background:rgba(51,201,167,.17);color:#1d715e}
.steps-5 li:nth-child(2):before{background:rgba(73,202,202,.17);color:#297171}
.steps-5 li:nth-child(3):before{background:rgba(94,171,223,.17);color:#35607d}
.steps-5 li:nth-child(4):before{background:rgba(111,128,236,.17);color:#3e4884}
.steps-5 li:nth-child(5):before{background:rgba(124,92,255,.17);color:#45348f}
.phase-grid>div{border-width:2px}
.phase-grid>div:nth-child(1){border-color:rgba(51,201,167,.5)}
.phase-grid>div:nth-child(1) span{color:#1d715e}
.phase-grid>div:nth-child(2){border-color:rgba(80,195,211,.5)}
.phase-grid>div:nth-child(2) span{color:#2d6d76}
.phase-grid>div:nth-child(3){border-color:rgba(106,142,232,.5)}
.phase-grid>div:nth-child(3) span{color:#3b5082}
.phase-grid>div:nth-child(4){border-color:rgba(124,92,255,.5)}
.phase-grid>div:nth-child(4) span{color:#45348f}
.principles>div:nth-child(1){border-color:rgba(51,201,167,.34)}
.principles>div:nth-child(1) span{color:#91e2cf}
.principles>div:nth-child(2){border-color:rgba(80,195,211,.34)}
.principles>div:nth-child(2) span{color:#a0dfe7}
.principles>div:nth-child(3){border-color:rgba(106,142,232,.34)}
.principles>div:nth-child(3) span{color:#afc2f3}
.principles>div:nth-child(4){border-color:rgba(124,92,255,.34)}
.principles>div:nth-child(4) span{color:#b8a7ff}
.ideas-grid .idea-card{border-width:2px}
.ideas-grid .idea-card:nth-child(1){border-color:rgba(51,201,167,.5)}
.ideas-grid .idea-card:nth-child(1) .idea-num,.ideas-grid .idea-card:nth-child(1) .idea-glyph{color:#1d715e}
.ideas-grid .idea-card:nth-child(2){border-color:rgba(59,204,180,.5)}
.ideas-grid .idea-card:nth-child(2) .idea-num,.ideas-grid .idea-card:nth-child(2) .idea-glyph{color:#217265}
.ideas-grid .idea-card:nth-child(3){border-color:rgba(67,206,193,.5)}
.ideas-grid .idea-card:nth-child(3) .idea-num,.ideas-grid .idea-card:nth-child(3) .idea-glyph{color:#26736c}
.ideas-grid .idea-card:nth-child(4){border-color:rgba(75,200,204,.5)}
.ideas-grid .idea-card:nth-child(4) .idea-num,.ideas-grid .idea-card:nth-child(4) .idea-glyph{color:#2a7072}
.ideas-grid .idea-card:nth-child(5){border-color:rgba(82,192,214,.5)}
.ideas-grid .idea-card:nth-child(5) .idea-num,.ideas-grid .idea-card:nth-child(5) .idea-glyph{color:#2e6c78}
.ideas-grid .idea-card:nth-child(6){border-color:rgba(90,179,221,.5)}
.ideas-grid .idea-card:nth-child(6) .idea-num,.ideas-grid .idea-card:nth-child(6) .idea-glyph{color:#32647c}
.ideas-grid .idea-card:nth-child(7){border-color:rgba(97,163,225,.5)}
.ideas-grid .idea-card:nth-child(7) .idea-num,.ideas-grid .idea-card:nth-child(7) .idea-glyph{color:#365b7e}
.ideas-grid .idea-card:nth-child(8){border-color:rgba(104,147,230,.5)}
.ideas-grid .idea-card:nth-child(8) .idea-num,.ideas-grid .idea-card:nth-child(8) .idea-glyph{color:#3a5281}
.ideas-grid .idea-card:nth-child(9){border-color:rgba(110,132,235,.5)}
.ideas-grid .idea-card:nth-child(9) .idea-num,.ideas-grid .idea-card:nth-child(9) .idea-glyph{color:#3e4a84}
.ideas-grid .idea-card:nth-child(10){border-color:rgba(115,117,240,.5)}
.ideas-grid .idea-card:nth-child(10) .idea-num,.ideas-grid .idea-card:nth-child(10) .idea-glyph{color:#404286}
.ideas-grid .idea-card:nth-child(11){border-color:rgba(119,105,248,.5)}
.ideas-grid .idea-card:nth-child(11) .idea-num,.ideas-grid .idea-card:nth-child(11) .idea-glyph{color:#433b8b}
.ideas-grid .idea-card:nth-child(12){border-color:rgba(124,92,255,.5)}
.ideas-grid .idea-card:nth-child(12) .idea-num,.ideas-grid .idea-card:nth-child(12) .idea-glyph{color:#45348f}
.resource-grid .resource-card{border-width:2px}
.resource-grid .resource-card:nth-child(1){border-color:rgba(51,201,167,.5)}
.resource-grid .resource-card:nth-child(1) .card-num{color:#1d715e}
.resource-grid .resource-card:nth-child(2){border-color:rgba(62,205,185,.5)}
.resource-grid .resource-card:nth-child(2) .card-num{color:#237368}
.resource-grid .resource-card:nth-child(3){border-color:rgba(73,202,202,.5)}
.resource-grid .resource-card:nth-child(3) .card-num{color:#297171}
.resource-grid .resource-card:nth-child(4){border-color:rgba(83,191,215,.5)}
.resource-grid .resource-card:nth-child(4) .card-num{color:#2e6b78}
.resource-grid .resource-card:nth-child(5){border-color:rgba(94,171,223,.5)}
.resource-grid .resource-card:nth-child(5) .card-num{color:#35607d}
.resource-grid .resource-card:nth-child(6){border-color:rgba(104,149,229,.5)}
.resource-grid .resource-card:nth-child(6) .card-num{color:#3a5380}
.resource-grid .resource-card:nth-child(7){border-color:rgba(111,128,236,.5)}
.resource-grid .resource-card:nth-child(7) .card-num{color:#3e4884}
.resource-grid .resource-card:nth-child(8){border-color:rgba(118,110,245,.5)}
.resource-grid .resource-card:nth-child(8) .card-num{color:#423e89}
.resource-grid .resource-card:nth-child(9){border-color:rgba(124,92,255,.5)}
.resource-grid .resource-card:nth-child(9) .card-num{color:#45348f}
.resource-grid .resource-card.featured{border-color:rgba(51,201,167,.42)}
.resource-grid .resource-card.featured .card-num{color:#91e2cf}
.check-group{border-width:2px;border-color:var(--edge,var(--line))}
.checklist-main .check-group:nth-of-type(1){--c:#33c9a7;--edge:rgba(51,201,167,.5)}
.checklist-main .check-group:nth-of-type(2){--c:#49caca;--edge:rgba(73,202,202,.5)}
.checklist-main .check-group:nth-of-type(3){--c:#5eabdf;--edge:rgba(94,171,223,.5)}
.checklist-main .check-group:nth-of-type(4){--c:#6f80ec;--edge:rgba(111,128,236,.5)}
.checklist-main .check-group:nth-of-type(5){--c:#7c5cff;--edge:rgba(124,92,255,.5)}
.check-item input:checked+.fake-check{background:var(--c,var(--teal));border-color:var(--c,var(--teal));color:#fff}
#goal .mini-grid>div{border-width:2px}
#goal .mini-grid>div:nth-child(1){border-color:rgba(51,201,167,.5);background:rgba(51,201,167,.07)}
#goal .mini-grid>div:nth-child(2){border-color:rgba(69,207,196,.5);background:rgba(69,207,196,.07)}
#goal .mini-grid>div:nth-child(3){border-color:rgba(85,189,218,.5);background:rgba(85,189,218,.07)}
#goal .mini-grid>div:nth-child(4){border-color:rgba(102,153,228,.5);background:rgba(102,153,228,.07)}
#goal .mini-grid>div:nth-child(5){border-color:rgba(114,120,239,.5);background:rgba(114,120,239,.07)}
#goal .mini-grid>div:nth-child(6){border-color:rgba(124,92,255,.5);background:rgba(124,92,255,.07)}
/* Fixed-width hero art must not set the grid track width on narrow screens. */
.hero-grid>*,.page-hero-grid>*,.article-layout>*,.template-layout>*,.split>*,.tool-layout>*,.checklist-layout>*,.about-grid>*,.visual-story>*,.cta-panel>*,.home-dashboard-grid>*,.flywheel-wrap>*,.faq-layout>*{min-width:0}
.home-dashboard-visual,.template-hero-visual{max-width:100%}
.footer-grid>div:not(.footer-intro) a{padding:.22rem 0}
/* Long unbreakable tokens (e.g. EmployeeReferrals.com) must wrap, not overflow. */
h1,h2,h3,h4,p,li,td,th,b,strong,small{overflow-wrap:break-word}

/* ---- guide.html hero: animated Program Blueprint dashboard ---- */
.guide-hero-grid{grid-template-columns:1fr 1.1fr;gap:3rem}
.guide-hero-visual{width:min(100%,600px);max-width:100%;justify-self:end}
.guide-blueprint-hero{position:relative;width:600px;height:680px;transform-origin:top left;isolation:isolate;transform:scale(.93);margin-bottom:-52px}
.gb-cloud{position:absolute;z-index:0;pointer-events:none;filter:blur(6px);animation:gbCloud 19s ease-in-out infinite}
.gb-cloud-one{inset:18px -6px 44px -10px;border-radius:46% 54% 42% 58%;background:radial-gradient(56% 52% at 26% 30%,rgba(66,206,192,.5),transparent 70%),radial-gradient(54% 56% at 78% 62%,rgba(124,92,255,.42),transparent 72%),radial-gradient(46% 44% at 58% 20%,rgba(88,148,240,.32),transparent 68%)}
.gb-cloud-two{inset:100px 62px 110px 70px;border-radius:58% 42% 55% 45%;background:radial-gradient(58% 58% at 38% 38%,rgba(255,255,255,.72),transparent 68%),radial-gradient(52% 52% at 72% 72%,rgba(120,196,222,.32),transparent 70%);filter:blur(12px);animation-delay:-8s;animation-duration:24s}
.gb-dots{position:absolute;z-index:1;left:236px;top:0;width:118px;height:96px;opacity:.7;background-image:radial-gradient(circle,rgba(92,114,255,.32) 1.4px,transparent 1.7px);background-size:13px 13px;animation:gbDrift 9s ease-in-out infinite}
.gb-spark{position:absolute;z-index:2;border-radius:50%;animation:gbSpark 5.6s ease-in-out infinite}
.gb-spark.s1{left:11%;top:24%;width:9px;height:9px;background:#4fd1c5;animation-delay:0s}
.gb-spark.s2{left:88%;top:9%;width:10px;height:10px;background:#7c5cff;animation-delay:-0.8s}
.gb-spark.s3{left:3%;top:52%;width:8px;height:8px;background:#5b9be8;animation-delay:-1.6s}
.gb-spark.s4{left:95%;top:44%;width:9px;height:9px;background:#8a73ff;animation-delay:-2.4s}
.gb-spark.s5{left:6%;top:78%;width:8px;height:8px;background:#4fd1c5;animation-delay:-3.2s}
.gb-spark.s6{left:63%;top:2%;width:7px;height:7px;background:#6d8fe8;animation-delay:-4s}
.gb-spark.s7{left:90%;top:88%;width:9px;height:9px;background:#5fc9d6;animation-delay:-4.8s}
.gb-wires{position:absolute;inset:0;width:100%;height:100%;z-index:2;overflow:visible;pointer-events:none}
.gb-ring-path{fill:none;stroke:rgba(124,92,255,.26);stroke-width:2;stroke-linecap:round;stroke-dasharray:6 9;animation:gbDash 2.2s linear infinite}
.gb-ring-flow{fill:none;stroke:url(#gbWire);stroke-width:3.2;stroke-linecap:round;stroke-dasharray:.1 .9;filter:drop-shadow(0 0 5px rgba(92,114,255,.4));animation:gbFlow 7s linear infinite}

.gb-node{fill:#5c72ff;transform-box:fill-box;transform-origin:center;animation:gbNode 2.6s ease-in-out infinite}
.gb-card{position:absolute;z-index:4;border:1px solid rgba(255,255,255,.86);background:rgba(255,255,255,.82);backdrop-filter:blur(16px);border-radius:20px;box-shadow:0 20px 52px rgba(7,26,45,.12);color:var(--ink);animation:gbFloat 7s ease-in-out infinite}
.gb-card-title{display:block;font-size:.74rem;font-weight:900;color:#28455c;margin-bottom:.55rem}
.gb-score{left:0;top:4px;width:240px;padding:1rem 1.05rem;animation-delay:-1s}
.gb-health{right:0;top:4px;width:240px;padding:1rem 1.05rem;animation-delay:-3.5s}
.gb-score-row{display:grid;grid-template-columns:74px minmax(0,1fr);gap:.85rem;align-items:center}
.gb-ring{position:relative;width:74px;height:74px;display:grid;place-items:center}
.gb-ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.gb-ring-track{fill:none;stroke:#e4edf4;stroke-width:9}
.gb-ring-fill{fill:none;stroke-width:9;stroke-linecap:round;animation:gbRing 5.2s ease-in-out infinite}
.gb-ring.violet .gb-ring-fill{stroke:#7c5cff}.gb-ring.teal .gb-ring-fill{stroke:#3fc4c0;animation-delay:-1.2s}
.gb-ring span{position:relative;display:grid;justify-items:center;line-height:1}
.gb-ring b{font-size:1.42rem;color:var(--ink)}
.gb-ring small{font-size:.53rem;font-weight:900;color:#5f7a8d;margin-top:.1rem}
.gb-checks{list-style:none;margin:0;padding:0;display:grid;gap:.42rem}
.gb-checks li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:.45rem;align-items:center;font-size:.72rem;color:#3f5c72;font-weight:700;animation:gbTick 5.2s ease-in-out infinite}
.gb-checks li svg{display:block;width:16px;height:16px;color:#37c2ae}
.gb-checks li:nth-child(2){animation-delay:0.28s}
.gb-checks li:nth-child(3){animation-delay:0.56s}
.gb-checks li:nth-child(4){animation-delay:0.84s}
.gb-blueprint{left:0;top:202px;width:576px;padding:1rem 1rem 1.1rem;border-radius:24px;animation-delay:-2s}
.gb-bp-head{display:grid;grid-template-columns:42px minmax(0,1fr);gap:.75rem;align-items:center;margin-bottom:.9rem}
.gb-bp-logo{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(140deg,#9078ff,#6742e6);color:#fff;box-shadow:0 10px 22px rgba(124,92,255,.3)}
.gb-bp-logo svg{display:block;width:23px;height:23px}
.gb-bp-head b{display:block;font-size:1.02rem;line-height:1.15}
.gb-bp-head small{display:block;color:#5b7182;font-size:.75rem;margin-top:.14rem}
.gb-steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.45rem}
.gb-step{position:relative;text-align:center;padding:.7rem .15rem .65rem;border-radius:15px;background:rgba(255,255,255,.72);border:1px solid rgba(219,231,240,.9)}
.gb-step i{display:grid;place-items:center;width:36px;height:36px;margin:0 auto .5rem;border-radius:12px;color:#fff;font-style:normal;animation:gbStep 8.4s ease-in-out infinite}
.gb-step i svg{display:block;width:20px;height:20px}
.gb-step b{display:block;font-size:.66rem;line-height:1.15;white-space:nowrap}
.gb-step small{display:block;color:#63798a;font-size:.53rem;line-height:1.2;margin-top:.2rem;white-space:nowrap}
.gb-step.s1 i{background:linear-gradient(140deg,#33c9a7,#2bab8e);--halo:rgba(51,201,167,.3);animation-delay:0s}
.gb-step.s2 i{background:linear-gradient(140deg,#45cfc4,#3bb0a7);--halo:rgba(69,207,196,.3);animation-delay:1.4s}
.gb-step.s3 i{background:linear-gradient(140deg,#55bdda,#48a1b9);--halo:rgba(85,189,218,.3);animation-delay:2.8s}
.gb-step.s4 i{background:linear-gradient(140deg,#6699e4,#5782c2);--halo:rgba(102,153,228,.3);animation-delay:4.2s}
.gb-step.s5 i{background:linear-gradient(140deg,#7278ef,#6166cb);--halo:rgba(114,120,239,.3);animation-delay:5.6s}
.gb-step.s6 i{background:linear-gradient(140deg,#7c5cff,#694ed9);--halo:rgba(124,92,255,.3);animation-delay:7s}
.gb-step+.gb-step:before,.gb-step+.gb-step:after{content:"";position:absolute;top:26px;z-index:2}
.gb-step+.gb-step:before{left:-.275rem;width:13px;height:2px;border-radius:2px;background:#cfdce6;transform:translate(-50%,-50%)}
.gb-step+.gb-step:after{left:calc(-.275rem + 5px);width:6px;height:6px;border-top:2px solid #cfdce6;border-right:2px solid #cfdce6;transform:translate(-50%,-50%) rotate(45deg)}
@keyframes gbArrowBar2{0%{background:#cfdce6}16%{background:#cfdce6}19%{background:#45cfc4}95%{background:#45cfc4}99%,100%{background:#cfdce6}}
@keyframes gbArrowHead2{0%{border-color:#cfdce6}16%{border-color:#cfdce6}19%{border-color:#45cfc4}95%{border-color:#45cfc4}99%,100%{border-color:#cfdce6}}
.gb-step.s2:before{animation:gbArrowBar2 8.4s ease-in-out infinite}
.gb-step.s2:after{animation:gbArrowHead2 8.4s ease-in-out infinite}
@keyframes gbArrowBar3{0%{background:#cfdce6}33%{background:#cfdce6}36%{background:#55bdda}95%{background:#55bdda}99%,100%{background:#cfdce6}}
@keyframes gbArrowHead3{0%{border-color:#cfdce6}33%{border-color:#cfdce6}36%{border-color:#55bdda}95%{border-color:#55bdda}99%,100%{border-color:#cfdce6}}
.gb-step.s3:before{animation:gbArrowBar3 8.4s ease-in-out infinite}
.gb-step.s3:after{animation:gbArrowHead3 8.4s ease-in-out infinite}
@keyframes gbArrowBar4{0%{background:#cfdce6}50%{background:#cfdce6}53%{background:#6699e4}95%{background:#6699e4}99%,100%{background:#cfdce6}}
@keyframes gbArrowHead4{0%{border-color:#cfdce6}50%{border-color:#cfdce6}53%{border-color:#6699e4}95%{border-color:#6699e4}99%,100%{border-color:#cfdce6}}
.gb-step.s4:before{animation:gbArrowBar4 8.4s ease-in-out infinite}
.gb-step.s4:after{animation:gbArrowHead4 8.4s ease-in-out infinite}
@keyframes gbArrowBar5{0%{background:#cfdce6}66%{background:#cfdce6}69%{background:#7278ef}95%{background:#7278ef}99%,100%{background:#cfdce6}}
@keyframes gbArrowHead5{0%{border-color:#cfdce6}66%{border-color:#cfdce6}69%{border-color:#7278ef}95%{border-color:#7278ef}99%,100%{border-color:#cfdce6}}
.gb-step.s5:before{animation:gbArrowBar5 8.4s ease-in-out infinite}
.gb-step.s5:after{animation:gbArrowHead5 8.4s ease-in-out infinite}
@keyframes gbArrowBar6{0%{background:#cfdce6}83%{background:#cfdce6}86%{background:#7c5cff}95%{background:#7c5cff}99%,100%{background:#cfdce6}}
@keyframes gbArrowHead6{0%{border-color:#cfdce6}83%{border-color:#cfdce6}86%{border-color:#7c5cff}95%{border-color:#7c5cff}99%,100%{border-color:#cfdce6}}
.gb-step.s6:before{animation:gbArrowBar6 8.4s ease-in-out infinite}
.gb-step.s6:after{animation:gbArrowHead6 8.4s ease-in-out infinite}
.gb-launch{left:139px;top:204px;width:322px;padding:1.2rem 1.25rem 1.25rem;animation-delay:-4.5s}
.gb-launch-head{display:grid;grid-template-columns:64px minmax(0,1fr);gap:1.05rem;align-items:center}
.gb-launch-icon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(140deg,#4fd1c5,#3f9fd6);color:#fff;box-shadow:0 10px 22px rgba(79,209,197,.32)}
.gb-launch-icon svg{display:block;width:32px;height:32px}
.gb-launch-head small{display:block;font-size:.88rem;font-weight:900;color:#28455c}
.gb-launch-head b{display:block;font-size:2.05rem;line-height:1.05;margin-top:.1rem}
.gb-launch-head em{display:block;font-style:normal;font-size:.8rem;font-weight:800;color:#2aa79d;margin-top:.15rem}
.gb-bar{display:block;height:8px;border-radius:999px;background:#e4edf4;margin:1.15rem 0 1.05rem;overflow:hidden;position:relative}
.gb-bar:after{content:"";position:absolute;inset:0 auto 0 0;border-radius:999px;background:linear-gradient(90deg,#4fd1c5,#6d89e9,#7c5cff);animation:gbFill 5.2s ease-in-out infinite}
.gb-resources{left:0;top:460px;width:186px;padding:.9rem 1rem;animation-delay:-5.5s}
.gb-resources span{display:grid;grid-template-columns:16px minmax(0,1fr);gap:.45rem;align-items:center;color:#39566b;font-size:.63rem;font-weight:800;margin:0;padding:.38rem 0;white-space:nowrap;border-bottom:1px solid #eaf0f5}
.gb-resources span svg{display:block;width:15px;height:15px;color:#6d5eea}
.gb-resources a{display:inline-block;color:#6d5eea;font-size:.665rem;font-weight:900;margin-top:.4rem}
.gb-quarter{right:0;top:472px;width:218px;padding:.9rem 1rem;animation-delay:-6.5s}
.gb-q-row{display:flex;align-items:center;gap:.55rem}
.gb-quarter .gb-q-row b{font-size:2.05rem;line-height:1}
.gb-quarter em{font-style:normal;color:#159b92;background:#dcf7f2;border-radius:999px;padding:.2rem .42rem;font-size:.6rem;font-weight:900}
.gb-quarter>small{display:block;color:#7b8c99;font-size:.62rem;margin-top:.15rem}
.gb-bars{display:flex;gap:.4rem;align-items:end;height:56px;margin-top:.85rem}
.gb-bars i{flex:1;border-radius:999px;background:linear-gradient(180deg,#91b4ff,#7c5cff);animation:gbBars 2.6s ease-in-out infinite}
.gb-bars i:nth-child(1){height:16px;background:#58c6cf;animation-delay:0s}
.gb-bars i:nth-child(2){height:23px;background:#59bfd7;animation-delay:0.1s}
.gb-bars i:nth-child(3){height:31px;background:#66aedf;animation-delay:0.2s}
.gb-bars i:nth-child(4){height:39px;animation-delay:0.3s}
.gb-bars i:nth-child(5){height:47px;animation-delay:0.4s}
.gb-bars i:nth-child(6){height:56px;animation-delay:0.5s}




.gb-badge{position:absolute;z-index:6;display:grid;place-items:center;border-radius:50%;color:#fff;box-shadow:0 14px 30px rgba(7,26,45,.18);animation:gbPulse 3.2s ease-in-out infinite}
.gb-badge.star{right:-30px;top:210px;width:58px;height:58px;background:linear-gradient(140deg,#9078ff,#6742e6);border:5px solid rgba(255,255,255,.9);animation-delay:-1.4s}
.gb-badge svg{display:block;width:26px;height:26px}
@keyframes gbFloat{50%{transform:translateY(-7px)}}
@keyframes gbPulse{50%{transform:scale(1.07)}}
@keyframes gbCloud{0%,100%{border-radius:46% 54% 42% 58%;transform:translate(0,0) rotate(0) scale(1)}33%{border-radius:58% 42% 56% 44%;transform:translate(10px,-8px) rotate(4deg) scale(1.03)}66%{border-radius:40% 60% 48% 52%;transform:translate(-8px,10px) rotate(-4deg) scale(.98)}}
@keyframes gbDrift{50%{transform:translateY(-12px);opacity:.95}}
@keyframes gbSpark{0%,100%{transform:translateY(0) scale(.72);opacity:.35}50%{transform:translateY(-10px) scale(1);opacity:1}}
@keyframes gbDash{to{stroke-dashoffset:-14}}
@keyframes gbFlow{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes gbNode{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.45);opacity:.6}}
@keyframes gbRing{0%{stroke-dasharray:0 100}6%{stroke-dasharray:0 100}34%{stroke-dasharray:var(--v) 100}92%{stroke-dasharray:var(--v) 100}100%{stroke-dasharray:0 100}}
@keyframes gbTick{0%,4%{opacity:.28;transform:translateX(-4px)}14%,92%{opacity:1;transform:none}100%{opacity:.28;transform:translateX(-4px)}}
@keyframes gbFill{0%{width:0}30%{width:92%}92%{width:92%}100%{width:0}}
@keyframes gbBars{50%{transform:scaleY(.72);opacity:.82}}
@keyframes gbStep{0%{transform:scale(1);filter:saturate(.6) brightness(1.05);box-shadow:0 0 0 0 var(--halo)}4%{transform:scale(1.14);filter:saturate(1.08) brightness(1);box-shadow:0 0 0 7px var(--halo)}15%{transform:scale(1.14);filter:saturate(1.08) brightness(1);box-shadow:0 0 0 7px var(--halo)}20%{transform:scale(1);filter:saturate(.6) brightness(1.05);box-shadow:0 0 0 0 var(--halo)}100%{transform:scale(1);filter:saturate(.6) brightness(1.05);box-shadow:0 0 0 0 var(--halo)}}

@media(max-width:1240px){.guide-blueprint-hero{transform:scale(.9);margin-bottom:-68px}}@media(max-width:1180px){.guide-blueprint-hero{transform:scale(.83);margin-bottom:-116px}}@media(max-width:1100px){.guide-hero-grid{grid-template-columns:1fr}.guide-hero-visual{justify-self:start}.guide-blueprint-hero{transform:none;margin-bottom:0}}@media(max-width:673px){.guide-blueprint-hero{transform:scale(0.94);margin-bottom:-41px}}@media(max-width:635px){.guide-blueprint-hero{transform:scale(0.88);margin-bottom:-82px}}@media(max-width:600px){.guide-blueprint-hero{transform:scale(0.82);margin-bottom:-122px}}@media(max-width:560px){.guide-blueprint-hero{transform:scale(0.72);margin-bottom:-190px}}@media(max-width:500px){.guide-blueprint-hero{transform:scale(0.64);margin-bottom:-245px}}@media(max-width:450px){.guide-blueprint-hero{transform:scale(0.57);margin-bottom:-292px}}@media(max-width:400px){.guide-blueprint-hero{transform:scale(0.5);margin-bottom:-340px}}@media(max-width:360px){.guide-blueprint-hero{transform:scale(0.44);margin-bottom:-381px}}@media(max-width:320px){.guide-blueprint-hero{transform:scale(0.38);margin-bottom:-422px}}








@media(prefers-reduced-motion:reduce){.gb-bar:after{width:92%}.gb-ring-fill{stroke-dasharray:82 100}}
/* Program Blueprint as a standalone full-width panel */
.gb-blueprint-full{position:static;inset:auto;width:auto;max-width:none;margin-top:2.6rem;padding:2.1rem 2.2rem 2.3rem;border-radius:30px;background:rgba(255,255,255,.9);border:1px solid rgba(223,231,236,.9);box-shadow:0 26px 64px rgba(7,26,45,.1);animation:none;transform:none}
.gb-blueprint-full .gb-bp-head{grid-template-columns:58px minmax(0,1fr);gap:1.05rem;margin-bottom:1.7rem}
.gb-blueprint-full .gb-bp-logo{width:58px;height:58px;border-radius:18px}
.gb-blueprint-full .gb-bp-logo svg{width:31px;height:31px}
.gb-blueprint-full .gb-bp-head b{font-size:1.5rem}
.gb-blueprint-full .gb-bp-head small{font-size:.98rem;margin-top:.3rem}
.gb-blueprint-full .gb-steps{gap:1rem}
.gb-blueprint-full .gb-step{padding:1.5rem .85rem 1.35rem;border-radius:20px}
.gb-blueprint-full .gb-step i{width:56px;height:56px;border-radius:18px;margin-bottom:.9rem}
.gb-blueprint-full .gb-step i svg{width:30px;height:30px}
.gb-blueprint-full .gb-step b{font-size:1.02rem;white-space:normal}
.gb-blueprint-full .gb-step small{font-size:.8rem;line-height:1.35;margin-top:.4rem;white-space:normal}
.gb-blueprint-full .gb-step+.gb-step:before{top:52px;left:-.5rem;width:22px;height:2px}
.gb-blueprint-full .gb-step+.gb-step:after{top:52px;left:calc(-.5rem + 9px);width:9px;height:9px}
@media(max-width:1080px){.gb-blueprint-full .gb-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.gb-blueprint-full .gb-step+.gb-step:before,.gb-blueprint-full .gb-step+.gb-step:after{display:none}}
@media(max-width:620px){.gb-blueprint-full{padding:1.4rem 1.3rem 1.6rem;border-radius:24px}.gb-blueprint-full .gb-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.gb-blueprint-full .gb-bp-head b{font-size:1.2rem}.gb-blueprint-full .gb-bp-head small{font-size:.88rem}}
.gb-launch .gb-checks{position:relative;grid-auto-flow:column;grid-template-rows:repeat(2,auto);grid-template-columns:1fr 1fr;column-gap:1.5rem;row-gap:.5rem}
.gb-launch .gb-checks:before{content:"";position:absolute;left:calc(50% - .375rem);top:1px;bottom:1px;width:1px;background:#e1ebf3}
.gb-launch .gb-checks li{font-size:.75rem}
.gb-resources span:last-of-type{border-bottom:0}
.gb-resources a{margin-top:.6rem}
.gb-snapshot{left:209px;top:486px;width:150px;padding:1.05rem .9rem 1.1rem;text-align:center;background:linear-gradient(160deg,rgba(224,247,244,.95),rgba(238,248,251,.95));border-color:rgba(178,226,220,.8);animation-delay:-3.4s}
.gb-snap-icon{display:grid;place-items:center;width:46px;height:46px;margin:0 auto .65rem;border-radius:50%;background:linear-gradient(140deg,#4fd1c5,#39a8c4);color:#fff;box-shadow:0 10px 22px rgba(79,209,197,.3)}
.gb-snap-icon svg{display:block;width:23px;height:23px}
.gb-snapshot b{display:block;font-size:.78rem;line-height:1.2;white-space:nowrap}
.gb-snapshot small{display:block;color:#3f6d72;font-size:.68rem;line-height:1.4;margin-top:.35rem}

/* ---- calculator.html hero: animated savings chart ---- */
.calc-hero-grid{grid-template-columns:1fr 1.04fr;gap:3.2rem}
.roi-hero-visual{width:min(100%,540px);max-width:100%;justify-self:end}
.roi-chart-hero{position:relative;width:540px;height:405px;transform-origin:top left;isolation:isolate}
.roi-blob{position:absolute;z-index:0;border-radius:50%;filter:blur(2px);animation:roiBlob 16s ease-in-out infinite}
.roi-blob-one{left:6px;top:12px;width:238px;height:238px;background:radial-gradient(circle at 34% 30%,rgba(196,190,255,.62),rgba(214,224,255,.32) 62%,transparent 74%)}
.roi-blob-two{left:290px;top:16px;width:248px;height:248px;animation-delay:-8s;background:radial-gradient(circle at 60% 36%,rgba(140,226,214,.5),rgba(206,240,235,.3) 62%,transparent 74%)}
.roi-dots{position:absolute;z-index:1;background-image:radial-gradient(circle,rgba(124,140,200,.42) 1.5px,transparent 1.8px);background-size:13px 13px;animation:roiDrift 9s ease-in-out infinite}
.roi-dots-out{left:470px;top:222px;width:70px;height:126px;opacity:.75;animation-delay:-4s}
.roi-dots-in{left:34px;top:40px;width:57px;height:83px;opacity:.6;background-image:radial-gradient(circle,rgba(124,140,200,.5) 1.6px,transparent 1.9px)}
.roi-panel{position:absolute;z-index:3;left:108px;top:78px;width:354px;height:270px;border-radius:24px;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.9);backdrop-filter:blur(14px);box-shadow:0 26px 60px rgba(7,26,45,.12);animation:roiFloat 8s ease-in-out infinite}
.roi-chart{position:absolute;left:14px;right:14px;bottom:16px;width:calc(100% - 28px);height:196px}
.roi-base{stroke:#e3ebf3;stroke-width:1.5;stroke-linecap:round}
.roi-area{stroke:none;opacity:0;animation:roiFade 1.5s ease-out .85s both}
.roi-area-teal{fill:url(#roiTealFill)}
.roi-area-violet{fill:url(#roiVioletFill);animation-delay:.6s}
.roi-line{fill:none;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:roiDraw 2.1s cubic-bezier(.35,.1,.25,1) .3s both}
.roi-line-teal{stroke:url(#roiTealStroke)}
.roi-line-violet{stroke:url(#roiVioletStroke);animation-delay:.1s}
.roi-peak{fill:#3aa9e0;stroke:#fff;stroke-width:2.5;transform-box:fill-box;transform-origin:center;opacity:0;animation:roiPeak .5s cubic-bezier(.2,.8,.3,1.4) 2.2s both}.roi-peak-halo{fill:rgba(58,169,224,.4);transform-box:fill-box;transform-origin:center;opacity:0;animation:roiHalo 2.8s ease-out 2.6s infinite}
.roi-tooltip{position:absolute;z-index:4;right:8px;bottom:22px;width:178px;padding:.95rem 1.05rem 1rem;border-radius:16px;background:linear-gradient(150deg,#12263c,#0a1b2c);color:#fff;box-shadow:0 20px 44px rgba(7,26,45,.32);opacity:0;animation:roiTip .7s cubic-bezier(.2,.8,.3,1.15) 1.75s both}
.roi-tooltip span{display:block;color:#9db4c6;font-size:.68rem;font-weight:700}
.roi-tooltip b{display:block;color:#fff;font-size:1.72rem;line-height:1.1;margin:.28rem 0 .5rem;letter-spacing:-.01em}
.roi-tooltip em{display:inline-block;font-style:normal;font-size:.68rem;font-weight:900;color:#5ee2b4;background:rgba(94,226,180,.14);border-radius:999px;padding:.24rem .55rem;animation:roiPill 3.2s ease-in-out infinite}
@keyframes roiFloat{50%{transform:translateY(-8px)}}
@keyframes roiBlob{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(10px,-8px) scale(1.05)}}
@keyframes roiDrift{50%{transform:translateY(-10px);opacity:.9}}
@keyframes roiDraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes roiFade{from{opacity:0}to{opacity:1}}
@keyframes roiPeak{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}@keyframes roiHalo{0%{transform:scale(1);opacity:.55}70%,100%{transform:scale(3.2);opacity:0}}
@keyframes roiTip{from{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}
@keyframes roiPill{50%{background:rgba(94,226,180,.28)}}
@media(max-width:1180px){.roi-chart-hero{transform:scale(.95);margin-bottom:-20px}}
@media(max-width:1000px){.roi-chart-hero{transform:scale(.86);margin-bottom:-57px}}
@media(max-width:900px){.calc-hero-grid{grid-template-columns:1fr}.roi-hero-visual{justify-self:start}.roi-chart-hero{transform:none;margin-bottom:0}}
@media(max-width:575px){.roi-chart-hero{transform:scale(0.93);margin-bottom:-28px}}
@media(max-width:540px){.roi-chart-hero{transform:scale(0.86);margin-bottom:-57px}}
@media(max-width:500px){.roi-chart-hero{transform:scale(0.76);margin-bottom:-97px}}
@media(max-width:450px){.roi-chart-hero{transform:scale(0.67);margin-bottom:-134px}}
@media(max-width:400px){.roi-chart-hero{transform:scale(0.6);margin-bottom:-162px}}
@media(max-width:360px){.roi-chart-hero{transform:scale(0.52);margin-bottom:-194px}}
@media(max-width:320px){.roi-chart-hero{transform:scale(0.44);margin-bottom:-227px}}
@media(prefers-reduced-motion:reduce){.roi-line{stroke-dashoffset:0}.roi-area,.roi-tooltip,.roi-peak{opacity:1}.roi-peak-halo{opacity:0}}

/* ---- ROI calculator tool (scoped to #roi-tool; bonus-calculator shares these class names) ---- */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
#roi-tool .tool-layout{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:1.6rem;align-items:start}
#roi-tool .tool-card,#roi-tool .results-panel{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:26px;padding:1.6rem;box-shadow:0 18px 44px rgba(7,26,45,.07)}
.tool-head{display:grid;grid-template-columns:46px minmax(0,1fr);gap:.85rem;align-items:center;margin-bottom:1.4rem}
.tool-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(140deg,#e7f7f5,#eaf0ff);border:1px solid rgba(196,214,240,.7);color:#4a83d6}
.tool-icon.violet{border-radius:50%;background:linear-gradient(140deg,#efeaff,#e9f6f6);color:#7259e8}
.tool-icon svg{display:block;width:24px;height:24px}
.tool-head b{display:block;font-size:1.16rem;line-height:1.2;color:var(--ink)}
.tool-head small{display:block;color:#65798a;font-size:.82rem;margin-top:.15rem}
#roi-tool .form-grid{grid-template-columns:1fr;gap:1rem;margin:0 0 1.3rem}
#roi-tool .form-grid label>span.field-label{display:flex;align-items:center;justify-content:space-between;gap:.6rem;font-size:.82rem;font-weight:800;color:#26445c;margin-bottom:.45rem}
.field-help{flex:0 0 auto;width:17px;height:17px;border-radius:50%;display:grid;place-items:center;background:#eef3f8;color:#7d93a5;font-style:normal;font-size:.62rem;font-weight:900;cursor:help}
.field-help:hover,.field-help:focus{background:#e2ecf6;color:#3f6a94;outline:none}
#roi-tool .form-grid input{height:52px;border-radius:14px;font-size:.95rem;font-weight:700}
#roi-tool .form-grid input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(79,209,197,.18)}
#roi-tool .btn-primary.full svg{display:block;width:19px;height:19px}
.tool-reset{display:flex;align-items:center;justify-content:center;gap:.45rem;width:100%;margin-top:.85rem;padding:.55rem;border:0;background:none;color:#6a8093;font:inherit;font-size:.84rem;font-weight:800;cursor:pointer}
.tool-reset:hover{color:var(--ink)}.tool-reset svg{display:block;width:15px;height:15px}
.tool-note{font-size:.78rem;color:#8195a3;margin:1rem 0 0;text-align:center}
#roi-tool .result-explain{margin-top:1.1rem;padding:1.1rem 1.2rem;border-radius:18px;background:linear-gradient(150deg,rgba(238,240,255,.9),rgba(233,246,248,.9));border:1px solid rgba(206,216,245,.8)}
#roi-tool .result-explain>b{display:flex;align-items:center;gap:.5rem;color:var(--ink);font-size:.88rem}
.explain-icon{flex:0 0 auto;display:grid;place-items:center;color:#4a83d6}
.explain-icon svg{display:block;width:18px;height:18px}
#roi-tool .result-explain p{color:#5b7183;font-size:.78rem;line-height:1.5;margin:.65rem 0 0}
#roi-tool .result-explain .explain-math{color:var(--ink);font-weight:800}
@media(max-width:900px){#roi-tool .tool-layout{grid-template-columns:1fr}}
@media(max-width:520px){#roi-tool .tool-card,#roi-tool .results-panel{padding:1.2rem}}

/* ---- benefit cards ("what this means") ---- */
.benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.benefit-card{display:grid;grid-template-columns:42px minmax(0,1fr);column-gap:.9rem;row-gap:.7rem;align-items:center;background:#fff;border:1px solid var(--line);border-radius:22px;padding:1.35rem 1.4rem 1.45rem;box-shadow:0 12px 32px rgba(7,26,45,.05);transition:transform .22s,box-shadow .22s,border-color .22s}
.benefit-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(7,26,45,.09)}
.benefit-icon{grid-row:1;width:42px;height:42px;border-radius:14px;display:grid;place-items:center}
.benefit-icon svg{display:block;width:21px;height:21px}
.benefit-card b{grid-column:2;grid-row:1;font-size:1rem;line-height:1.25;color:var(--ink)}
.benefit-card p{grid-column:2;grid-row:2;margin:0;color:#5f7787;font-size:.85rem;line-height:1.55}
.benefit-card.b1{border-color:rgba(51,201,167,.3)}
.benefit-card.b1:hover{border-color:rgba(51,201,167,.6)}
.benefit-card.b1 .benefit-icon{background:rgba(51,201,167,.16);color:#1b6957}
.benefit-card.b2{border-color:rgba(80,195,211,.3)}
.benefit-card.b2:hover{border-color:rgba(80,195,211,.6)}
.benefit-card.b2 .benefit-icon{background:rgba(80,195,211,.16);color:#2a656e}
.benefit-card.b3{border-color:rgba(106,142,232,.3)}
.benefit-card.b3:hover{border-color:rgba(106,142,232,.6)}
.benefit-card.b3 .benefit-icon{background:rgba(106,142,232,.16);color:#374a79}
.benefit-card.b4{border-color:rgba(124,92,255,.3)}
.benefit-card.b4:hover{border-color:rgba(124,92,255,.6)}
.benefit-card.b4 .benefit-icon{background:rgba(124,92,255,.16);color:#403085}
@media(max-width:1100px){.benefit-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.benefit-grid{grid-template-columns:1fr}.benefit-card{padding:1.15rem 1.2rem 1.25rem}}

/* ---- promotion-ideas.html hero: animated campaign scene ---- */
.promo-hero-grid{grid-template-columns:1fr 1.12fr;gap:3rem}
.promo-hero-visual{width:min(100%,600px);max-width:100%;justify-self:end}
.promo-scene{position:relative;width:600px;height:600px;transform-origin:top left;isolation:isolate}
.pm-blob{position:absolute;z-index:0;border-radius:50%;filter:blur(4px);animation:pmBlob 18s ease-in-out infinite}
.pm-blob-one{right:34px;top:56px;width:210px;height:210px;background:radial-gradient(circle at 40% 36%,rgba(160,196,238,.34),transparent 70%)}
.pm-blob-two{left:26px;bottom:26px;width:230px;height:230px;animation-delay:-9s;background:radial-gradient(circle at 56% 44%,rgba(178,206,240,.3),transparent 70%)}
.pm-dots{position:absolute;z-index:1;background-image:radial-gradient(circle,rgba(140,158,200,.36) 1.4px,transparent 1.7px);background-size:11px 11px;animation:pmDrift 10s ease-in-out infinite}
.pm-dots-one{left:262px;top:24px;width:66px;height:44px}
.pm-dots-two{left:100px;bottom:22px;width:66px;height:44px;animation-delay:-5s}
.pm-wires{position:absolute;inset:0;width:100%;height:100%;z-index:2;overflow:visible;pointer-events:none}
.pm-wire{fill:none;stroke:#7fb4d8;stroke-width:3;stroke-linecap:round;stroke-dasharray:.001 .09;animation:pmFlow 3.2s linear infinite}
.pm-wires .w2{animation-delay:-.4s}
.pm-wires .w3{animation-delay:-.8s}
.pm-wires .w4{animation-delay:-1.2s}
.pm-wires .w5{animation-delay:-1.6s}
.pm-wires .w6{animation-delay:-2s}
.pm-wires .w7{animation-delay:-2.4s}
.pm-card{position:absolute;z-index:4;background:#fff;border:1px solid rgba(226,235,243,.9);border-radius:18px;box-shadow:0 16px 38px rgba(7,26,45,.09);color:var(--ink);animation:pmFloat 8s ease-in-out infinite}
.pm-head{display:grid;grid-template-columns:34px minmax(0,1fr);gap:.55rem;align-items:center;margin-bottom:.6rem}
.pm-chip{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;color:#fff}
.pm-chip svg{display:block;width:18px;height:18px}
.pm-chip.teal{background:linear-gradient(140deg,#5ad9c4,#37b6c8)}
.pm-chip.violet{background:linear-gradient(140deg,#9078ff,#6742e6)}
.pm-chip.quote{background:linear-gradient(140deg,#8b76f6,#6f52e6)}
.pm-chip.blue{background:linear-gradient(140deg,#5fa8e8,#3f7fd6)}
.pm-head b{font-size:.66rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;line-height:1.28;color:#26445c}
.pm-card p{margin:0;color:#4e6879;font-size:.68rem;line-height:1.5}
.pm-prompt{left:0;top:8px;width:146px;padding:.85rem .9rem .9rem}
.pm-share{display:flex;align-items:center;justify-content:center;gap:.35rem;margin-top:.75rem;padding:.42rem;border-radius:10px;background:rgba(79,209,197,.14);color:#1f8d84;font-size:.64rem;font-weight:900;animation:pmGlow 3s ease-in-out infinite}
.pm-share svg{display:block;width:13px;height:13px}
.pm-calendar{right:0;top:4px;width:176px;padding:.85rem .85rem .8rem}
.pm-cal{display:grid;gap:.32rem}
.pm-cal-row{display:grid;grid-template-columns:31px minmax(0,1fr);gap:.4rem;align-items:center;padding:.3rem;border-radius:8px;animation:pmRow 6.6s ease-in-out infinite}
.pm-cal-row.r2{animation-delay:2.2s}.pm-cal-row.r3{animation-delay:4.4s}
.pm-date{display:grid;justify-items:center;padding:.2rem 0;border-radius:7px;background:rgba(124,92,255,.1)}
.pm-date i{font-style:normal;font-size:.44rem;font-weight:900;letter-spacing:.08em;color:#6f7fb0}
.pm-date b{font-size:.72rem;line-height:1;color:#2b3f66}
.pm-cal-row>span:last-child b{display:block;font-size:.575rem;line-height:1.2;white-space:nowrap}
.pm-cal-row>span:last-child small{display:block;color:#71879a;font-size:.5rem;margin-top:.06rem;white-space:nowrap}
.pm-link{display:flex;align-items:center;gap:.3rem;margin-top:.55rem;color:#3f7fd6;font-size:.6rem;font-weight:900}
.pm-link svg{display:block;width:12px;height:12px}
.pm-spotlight{left:156px;top:74px;width:260px;padding:0;overflow:hidden;border-radius:20px;animation-delay:-2s}
.pm-poster{position:relative;padding:.95rem 1rem 1.05rem;overflow:hidden;background:linear-gradient(150deg,#132a45,#0b1b2e 58%,#101f38)}
.pm-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.26rem .55rem;border-radius:999px;background:linear-gradient(120deg,rgba(79,209,197,.28),rgba(94,168,232,.28));color:#8fe6dc;font-size:.53rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.pm-pill svg{display:block;width:11px;height:11px;color:#5ad9c4;animation:pmFlame 1.8s ease-in-out infinite}
.pm-poster>b{display:block;position:relative;z-index:2;color:#fff;font-size:1.24rem;line-height:1.12;margin:.55rem 0 .6rem;letter-spacing:-.01em}
.pm-meta{position:relative;z-index:2;display:grid;gap:.28rem}
.pm-meta span{display:flex;align-items:center;gap:.42rem;color:#c3d5e4;font-size:.6rem;font-weight:600}
.pm-meta svg{display:block;width:12px;height:12px;color:#7fb4d8;flex:0 0 auto}
.pm-beam{position:absolute;z-index:0;right:-30px;top:-58px;width:150px;height:190px;background:linear-gradient(190deg,rgba(120,220,225,.3),transparent 68%);clip-path:polygon(38% 0,62% 0,100% 100%,0 100%);animation:pmBeam 4.4s ease-in-out infinite}
.pm-chair{position:absolute;z-index:1;right:20px;bottom:20px;width:44px;height:44px;border-radius:14px 14px 5px 5px;background:linear-gradient(150deg,#6fdce4,#6f6ff0);box-shadow:0 12px 24px rgba(20,50,90,.45);animation:pmChair 5.2s ease-in-out infinite}.pm-chair:before{content:"";position:absolute;left:-7px;right:-7px;bottom:-11px;height:14px;border-radius:7px;background:linear-gradient(150deg,#5fd0dc,#6a68ec)}
.pm-chair:after{content:"";position:absolute;left:50%;bottom:-24px;width:64px;height:13px;border-radius:50%;transform:translateX(-50%);background:radial-gradient(ellipse,rgba(120,220,225,.55),transparent 70%)}
.pm-spark{position:absolute;z-index:2;border-radius:50%;background:#fff;animation:pmSpark 3s ease-in-out infinite}
.pm-spark.s1{right:74px;top:26px;width:5px;height:5px}
.pm-spark.s2{right:34px;top:60px;width:3px;height:3px;animation-delay:-1s}
.pm-spark.s3{right:96px;top:84px;width:3px;height:3px;animation-delay:-2s}
.pm-foot{padding:.85rem .95rem 1rem;text-align:center}
.pm-foot b{display:block;font-size:.72rem;line-height:1.25}
.pm-foot small{display:block;color:#677f90;font-size:.63rem;margin-top:.2rem}
.pm-cta{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:.7rem;padding:.55rem;border-radius:11px;color:#fff;font-size:.7rem;font-weight:900;background:linear-gradient(120deg,#4fd1c5,#5b8ee6 52%,#7c5cff);background-size:180% 100%;box-shadow:0 10px 22px rgba(88,132,226,.28);animation:pmCta 5s ease-in-out infinite}
.pm-cta svg{display:block;width:13px;height:13px}
.pm-story{left:0;top:322px;width:146px;padding:.85rem .9rem .95rem;animation-delay:-4s}
.pm-story small{display:block;color:#71879a;font-size:.6rem;margin-top:.45rem}
.pm-tag{display:inline-block;margin-top:.6rem;padding:.26rem .6rem;border-radius:999px;background:rgba(79,209,197,.16);color:#1f8d84;font-size:.56rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.pm-stats{left:196px;top:404px;width:198px;padding:.85rem .95rem .9rem;animation-delay:-6s}
.pm-stats-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.55rem}
.pm-stats-head span{color:#5b7183;font-size:.55rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.pm-stats-head svg{display:block;width:14px;height:14px;color:#4a83d6}
.pm-stats-row{display:grid;grid-template-columns:auto auto auto auto;align-items:center;gap:.2rem .45rem}
.pm-stats-row b{display:block;font-size:1.12rem;line-height:1}
.pm-stats-row small{display:block;color:#71879a;font-size:.56rem;margin-top:.1rem}
.pm-stats-row em{font-style:normal;color:#1f9c8f;font-size:.56rem;font-weight:900}
.pm-bars{display:flex;align-items:end;gap:.34rem;height:52px;margin-top:.6rem}
.pm-bars i{flex:1;border-radius:5px;transform-origin:bottom;animation:pmBar 2.8s ease-in-out infinite}
.pm-bars i:nth-child(1){height:22px;background:linear-gradient(180deg,#33c9a7,#42cebf);animation-delay:0s}
.pm-bars i:nth-child(2){height:29px;background:linear-gradient(180deg,#42cebf,#50c3d3);animation-delay:0.12s}
.pm-bars i:nth-child(3){height:25px;background:linear-gradient(180deg,#50c3d3,#5eabdf);animation-delay:0.24s}
.pm-bars i:nth-child(4){height:37px;background:linear-gradient(180deg,#5eabdf,#6a8ee8);animation-delay:0.36s}
.pm-bars i:nth-child(5){height:32px;background:linear-gradient(180deg,#6a8ee8,#7473f2);animation-delay:0.48s}
.pm-bars i:nth-child(6){height:44px;background:linear-gradient(180deg,#7473f2,#7c5cff);animation-delay:0.6s}
.pm-bars i:nth-child(7){height:52px;background:linear-gradient(180deg,#7c5cff,#7c5cff);animation-delay:0.72s}
.pm-reminder{right:8px;top:330px;width:158px;padding:.85rem .9rem .9rem;animation-delay:-3s}
.pm-goal{display:flex;justify-content:space-between;gap:.5rem;margin-top:.7rem;color:#5b7183;font-size:.58rem;font-weight:800}
.pm-progress{display:block;position:relative;height:7px;border-radius:999px;background:#e6eef5;margin-top:.3rem;overflow:hidden}
.pm-progress:after{content:"";position:absolute;inset:0 auto 0 0;border-radius:999px;background:linear-gradient(90deg,#4fd1c5,#6d89e9,#7c5cff);animation:pmFill 5.4s ease-in-out infinite}
.pm-reminder>small{display:block;color:#71879a;font-size:.58rem;font-weight:800;margin-top:.35rem}
.pm-badge{position:absolute;z-index:6;display:grid;place-items:center;border-radius:50%;color:#fff;box-shadow:0 14px 28px rgba(7,26,45,.18);animation:pmPulse 3.4s ease-in-out infinite}
.pm-badge svg{display:block;width:24px;height:24px}
.pm-badge:before,.pm-badge:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(120,150,220,.3);animation:pmRing 3.6s ease-out infinite}
.pm-badge:before{inset:-14px}.pm-badge:after{inset:-26px;animation-delay:-1.8s}
.pm-badge.people{left:42px;top:230px;width:56px;height:56px;background:linear-gradient(140deg,#7b8cf0,#6a4fe8)}
.pm-badge.send{left:498px;top:256px;width:54px;height:54px;background:linear-gradient(140deg,#4fd1c5,#4a90dd);animation-delay:-1.7s}
@keyframes pmFloat{50%{transform:translateY(-6px)}}
@keyframes pmPulse{50%{transform:scale(1.06)}}
@keyframes pmRing{0%{transform:scale(.82);opacity:.75}100%{transform:scale(1.25);opacity:0}}
@keyframes pmBlob{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(10px,-8px) scale(1.06)}}
@keyframes pmDrift{50%{transform:translateY(-8px);opacity:.85}}
@keyframes pmFlow{to{stroke-dashoffset:-.36}}
@keyframes pmRow{0%,4%{background:transparent}10%,26%{background:rgba(124,92,255,.09)}34%,100%{background:transparent}}
@keyframes pmFlame{50%{transform:scale(1.16) translateY(-1px)}}
@keyframes pmBeam{0%,100%{opacity:.55}50%{opacity:1}}
@keyframes pmChair{50%{transform:translateY(-5px)}}
@keyframes pmSpark{0%,100%{opacity:.25;transform:scale(.7)}50%{opacity:1;transform:scale(1)}}
@keyframes pmCta{0%,100%{background-position:0 0}50%{background-position:100% 0}}
@keyframes pmGlow{50%{background:rgba(79,209,197,.24)}}
@keyframes pmBar{50%{transform:scaleY(.74);opacity:.85}}
@keyframes pmFill{0%{width:0}34%{width:64%}88%{width:64%}100%{width:0}}
@media(max-width:1180px){.promo-scene{transform:scale(.9);margin-bottom:-60px}}
@media(max-width:1100px){.promo-scene{transform:scale(.84);margin-bottom:-96px}}
@media(max-width:900px){.promo-hero-grid{grid-template-columns:1fr}.promo-hero-visual{justify-self:start}.promo-scene{transform:none;margin-bottom:0}}
@media(max-width:650px){.promo-scene{transform:scale(0.93);margin-bottom:-42px}}
@media(max-width:600px){.promo-scene{transform:scale(0.86);margin-bottom:-84px}}
@media(max-width:560px){.promo-scene{transform:scale(0.8);margin-bottom:-120px}}
@media(max-width:500px){.promo-scene{transform:scale(0.71);margin-bottom:-174px}}
@media(max-width:450px){.promo-scene{transform:scale(0.63);margin-bottom:-222px}}
@media(max-width:400px){.promo-scene{transform:scale(0.55);margin-bottom:-270px}}
@media(max-width:360px){.promo-scene{transform:scale(0.48);margin-bottom:-312px}}
@media(max-width:320px){.promo-scene{transform:scale(0.43);margin-bottom:-342px}}
/* `container article` combined both rules: .container centered the box while .article capped it at 850px,
   so these sections started ~165px right of every other section. Keep the container full width and cap the children. */
.container.article,.container.faq-layout{max-width:none}

/* ---- metrics.html hero: animated signals dashboard ---- */
.metrics-hero-grid,.examples-hero-grid{grid-template-columns:1fr 1.1fr;gap:3rem}
.metrics-hero-visual,.examples-hero-visual{width:min(100%,600px);max-width:100%;justify-self:end}
.mt-scene{position:relative;width:600px;height:540px;transform-origin:top left;isolation:isolate}
.mt-blob{position:absolute;z-index:0;border-radius:50%;filter:blur(3px);animation:mtBlob 18s ease-in-out infinite}
.mt-blob-one{right:20px;top:60px;width:300px;height:300px;background:radial-gradient(circle at 42% 38%,rgba(186,206,246,.42),transparent 70%)}
.mt-blob-two{right:70px;bottom:40px;width:270px;height:270px;animation-delay:-9s;background:radial-gradient(circle at 56% 46%,rgba(206,214,248,.4),transparent 70%)}
.mt-wires{position:absolute;inset:0;width:100%;height:100%;z-index:2;overflow:visible;pointer-events:none}
.mt-wire{fill:none;stroke:#b4c2d8;stroke-width:2.6;stroke-linecap:round;stroke-dasharray:.001 .075;animation:mtFlow 3s linear infinite}
.mt-wires .w2{animation-delay:-.5s}
.mt-wires .w3{animation-delay:-1s}
.mt-wires .w4{animation-delay:-1.5s}
.mt-wires .w5{animation-delay:-2s}
.mt-card{position:absolute;z-index:4;background:#fff;border:1px solid rgba(232,239,245,.9);border-radius:22px;box-shadow:0 18px 44px rgba(7,26,45,.08);color:var(--ink);animation:mtFloat 8.5s ease-in-out infinite}
.mt-title{display:block;font-size:.78rem;font-weight:900;color:#20415c}
.mt-card>small{display:block;color:#6b8395;font-size:.66rem;line-height:1.4}
.mt-health{left:0;top:20px;width:150px;padding:1rem .9rem 1.05rem;text-align:center}
.mt-ring{position:relative;width:112px;height:112px;margin:.75rem auto .55rem;display:grid;place-items:center}
.mt-ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.mt-ring-track{fill:none;stroke:#eaf0f6;stroke-width:11}
.mt-ring-fill{fill:none;stroke:url(#mtRing);stroke-width:11;stroke-linecap:round;stroke-dasharray:0 100;animation:mtRing 2s cubic-bezier(.3,.1,.2,1) .4s forwards}
.mt-ring span{position:relative;display:grid;justify-items:center;line-height:1}
.mt-ring span b{font-size:1.9rem;letter-spacing:-.02em}
.mt-ring span small{color:#7d94a6;font-size:.66rem;font-weight:800;margin-top:.15rem}
.mt-status{display:inline-flex;align-items:center;gap:.35rem;color:#1f9c8f;font-size:.72rem;font-weight:900}
.mt-status i{width:7px;height:7px;border-radius:50%;background:#2ac0a8;animation:mtDot 2.4s ease-in-out infinite}
.mt-signals{left:166px;top:110px;width:248px;padding:1.15rem 1.2rem 1.25rem;border-radius:26px;animation-delay:-2.5s}
.mt-chip{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:linear-gradient(140deg,#e6f8f5,#eef2ff);color:#2fb5a8;margin-bottom:.85rem}
.mt-chip svg{display:block;width:22px;height:22px}
.mt-lead{display:block;font-size:1.24rem;line-height:1.16;letter-spacing:-.01em}
.mt-signals p,.ex-lead p{margin:.55rem 0 1rem;color:#5f7889;font-size:.72rem;line-height:1.5}
.mt-bars{display:grid;gap:.6rem}
.mt-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.15rem .6rem;align-items:center}
.mt-bar span{grid-column:1/3;color:#5f7889;font-size:.66rem;font-weight:700}
.mt-bar i{display:block;height:8px;border-radius:999px;background:#eaf0f6;overflow:hidden}
.mt-bar i b{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,#2fc4b4,#5b8fe6 55%,#7c5cff)}
.mt-bar em{font-style:normal;font-size:.68rem;font-weight:900;color:#33506a}
.mt-bar.p1 i b{animation:mtFill78 1.5s cubic-bezier(.3,.1,.2,1) .7s forwards}
.mt-bar.p2 i b{animation:mtFill64 1.5s cubic-bezier(.3,.1,.2,1) .95s forwards}
.mt-bar.p3 i b{animation:mtFill72 1.5s cubic-bezier(.3,.1,.2,1) 1.2s forwards}
.mt-quarter{right:0;top:0;width:176px;padding:.95rem 1rem 1rem;animation-delay:-5s}
.mt-q-row{display:flex;align-items:center;gap:.5rem;margin:.4rem 0 .2rem}
.mt-q-row b{font-size:1.75rem;line-height:1;letter-spacing:-.02em}
.mt-quarter em,.ex-scenarios em{font-style:normal;color:#159b92;background:#dcf7f2;border-radius:999px;padding:.2rem .45rem;font-size:.62rem;font-weight:900}
.mt-spark{display:block;width:100%;height:60px;margin:.35rem 0 .3rem;overflow:visible}
.mt-spark-area{fill:url(#mtFill);opacity:0;animation:mtFade 1.2s ease-out 1.1s forwards}
.mt-spark-line{fill:none;stroke:#2fbfae;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:mtDraw 1.9s cubic-bezier(.35,.1,.25,1) .5s forwards}
.mt-spark-dot{fill:#2fbfae;stroke:#fff;stroke-width:2.4;transform-box:fill-box;transform-origin:center;opacity:0;animation:mtPop .5s cubic-bezier(.2,.8,.3,1.5) 2.3s forwards}
.mt-response{left:0;top:320px;width:150px;padding:1rem .9rem 1.05rem;text-align:center;animation-delay:-6.5s}
.mt-r-row{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:.55rem 0 .35rem}
.mt-icon{display:grid;place-items:center;border-radius:50%;color:#fff;flex:0 0 auto}
.mt-icon svg{display:block;width:18px;height:18px}
.mt-icon.teal{width:32px;height:32px;background:linear-gradient(140deg,#4fd1c5,#37b0c4)}
.mt-icon.violet{width:40px;height:40px;background:linear-gradient(140deg,#9078ff,#6742e6)}
.mt-icon.violet svg{width:21px;height:21px}
.mt-r-row b{font-size:1.6rem;line-height:1;letter-spacing:-.02em}
.mt-pill{display:inline-block;margin-top:.6rem;padding:.3rem .6rem;border-radius:999px;background:#e2f8ef;color:#17916f;font-size:.64rem;font-weight:900;animation:mtGlow 3.2s ease-in-out infinite}
.mt-note{margin-top:.5rem}
.mt-share{right:0;top:326px;width:176px;padding:.95rem 1rem 1.1rem;animation-delay:-3.5s}
.mt-s-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:.4rem 0 .3rem}
.mt-s-row b{font-size:1.75rem;line-height:1;letter-spacing:-.02em}
.mt-share-bar{display:block;height:8px;border-radius:999px;background:#eaf0f6;margin-top:.7rem;overflow:hidden}
.mt-share-bar b{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,#2fc4b4,#5b8fe6 55%,#7c5cff);animation:mtFill72 1.6s cubic-bezier(.3,.1,.2,1) 1.4s forwards}
.mt-badge{position:absolute;z-index:6;display:grid;place-items:center;border-radius:50%;background:#fff;box-shadow:0 12px 26px rgba(7,26,45,.12);animation:mtPulse 3.4s ease-in-out infinite}
.mt-badge svg{display:block;width:22px;height:22px}
.mt-badge.b1{left:197px;top:22px;width:56px;height:56px;color:#2fb5a8}
.mt-badge.b2{left:462px;top:204px;width:56px;height:56px;color:#6a7fe0;animation-delay:-1.2s}
.mt-badge.b3{left:174px;top:474px;width:52px;height:52px;color:#6a7fe0;animation-delay:-2.4s}
@keyframes mtFloat{50%{transform:translateY(-7px)}}
@keyframes mtPulse{50%{transform:scale(1.07)}}
@keyframes mtBlob{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-10px,8px) scale(1.05)}}
@keyframes mtFlow{to{stroke-dashoffset:-.304}}
@keyframes mtRing{from{stroke-dasharray:0 100}to{stroke-dasharray:86 100}}
@keyframes mtFill78{to{width:78%}}@keyframes mtFill64{to{width:64%}}@keyframes mtFill72{to{width:72%}}
@keyframes mtDraw{to{stroke-dashoffset:0}}
@keyframes mtFade{to{opacity:1}}
@keyframes mtPop{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}
@keyframes mtDot{50%{transform:scale(1.35);opacity:.65}}
@keyframes mtGlow{50%{background:#d2f3e6}}
@media(max-width:1180px){.mt-scene{transform:scale(.9);margin-bottom:-54px}}
@media(max-width:1100px){.mt-scene{transform:scale(.84);margin-bottom:-86px}}
@media(max-width:900px){.metrics-hero-grid,.examples-hero-grid{grid-template-columns:1fr}.metrics-hero-visual,.examples-hero-visual{justify-self:start}.mt-scene{transform:none;margin-bottom:0}}
@media(max-width:650px){.mt-scene{transform:scale(0.93);margin-bottom:-38px}}
@media(max-width:600px){.mt-scene{transform:scale(0.86);margin-bottom:-76px}}
@media(max-width:560px){.mt-scene{transform:scale(0.8);margin-bottom:-108px}}
@media(max-width:500px){.mt-scene{transform:scale(0.71);margin-bottom:-157px}}
@media(max-width:450px){.mt-scene{transform:scale(0.63);margin-bottom:-200px}}
@media(max-width:400px){.mt-scene{transform:scale(0.55);margin-bottom:-243px}}
@media(max-width:360px){.mt-scene{transform:scale(0.48);margin-bottom:-281px}}
@media(max-width:320px){.mt-scene{transform:scale(0.43);margin-bottom:-308px}}
@media(prefers-reduced-motion:reduce){.mt-ring-fill{stroke-dasharray:86 100}.mt-bar.p1 i b{width:78%}.mt-bar.p2 i b{width:64%}.mt-bar.p3 i b{width:72%}.mt-share-bar b{width:72%}.mt-spark-line{stroke-dashoffset:0}.mt-spark-area,.mt-spark-dot{opacity:1}}

/* ---- examples.html hero: scenario dashboard (reuses the metrics scene shell) ---- */
.ex-scene .ex-fit{left:0;top:20px;width:150px;padding:1rem .9rem 1.05rem;text-align:center}
.ex-scene .ex-lead{left:166px;top:110px;width:248px;padding:1.15rem 1.2rem 1.25rem;border-radius:26px;animation-delay:-2.5s}
.ex-scene .ex-scenarios{right:0;top:0;width:176px;padding:.95rem 1rem 1rem;animation-delay:-5s}
.ex-scene .ex-time{left:0;top:320px;width:150px;padding:1rem .9rem 1.05rem;text-align:center;animation-delay:-6.5s}
.ex-scene .ex-modeled{right:0;top:326px;width:176px;padding:.95rem 1rem 1.1rem;animation-delay:-3.5s}
.ex-scene .mt-chip{background:linear-gradient(140deg,#eaf1ff,#e7f8f5);color:#5b6fd8}
.ex-rows{display:grid;gap:.42rem;margin:.6rem 0 .5rem}
.ex-row{display:grid;grid-template-columns:8px minmax(0,1fr);gap:.45rem;align-items:center}
.ex-row i{width:8px;height:8px;border-radius:50%}
.ex-row span{color:#41596d;font-size:.66rem;font-weight:700;white-space:nowrap}
.ex-row em{font-style:normal;color:#7d94a6;font-size:.58rem;font-weight:800;white-space:nowrap}
.ex-scene .ex-word{font-size:1.16rem;line-height:1.1;letter-spacing:-.01em}
.ex-scene .ex-ring{animation:exRing 2s cubic-bezier(.3,.1,.2,1) .4s forwards}
.ex-scene .mt-bar.e1 i b{animation:mtFill82 1.5s cubic-bezier(.3,.1,.2,1) .7s forwards}
.ex-scene .mt-bar.e2 i b{animation:mtFill64 1.5s cubic-bezier(.3,.1,.2,1) .95s forwards}
.ex-scene .mt-bar.e3 i b{animation:mtFill45 1.5s cubic-bezier(.3,.1,.2,1) 1.2s forwards}
.ex-scene .ex-bar b{animation:mtFill64 1.6s cubic-bezier(.3,.1,.2,1) 1.4s forwards}
@keyframes exRing{from{stroke-dasharray:0 100}to{stroke-dasharray:82 100}}
@keyframes mtFill82{to{width:82%}}@keyframes mtFill45{to{width:45%}}
@media(prefers-reduced-motion:reduce){.ex-scene .ex-ring{stroke-dasharray:82 100}.ex-scene .mt-bar.e1 i b{width:82%}.ex-scene .mt-bar.e2 i b{width:64%}.ex-scene .mt-bar.e3 i b{width:45%}.ex-scene .ex-bar b{width:64%}}

/* ---- faq.html hero: question categories around a browser window ---- */
.faq-hero-grid{grid-template-columns:1fr 1.06fr;gap:3rem}
.faq-hero-visual{width:min(100%,600px);max-width:100%;justify-self:end}
.fq-scene{position:relative;width:600px;height:740px;transform-origin:top left;isolation:isolate}
.fq-blob{position:absolute;z-index:0;border-radius:50%;filter:blur(3px);animation:fqBlob 19s ease-in-out infinite}
.fq-blob-one{left:-70px;top:70px;width:330px;height:330px;background:radial-gradient(circle at 46% 42%,rgba(176,232,224,.44),transparent 70%)}
.fq-blob-two{right:-50px;top:40px;width:360px;height:360px;animation-delay:-9s;background:radial-gradient(circle at 50% 46%,rgba(206,204,248,.42),transparent 70%)}
.fq-dots{position:absolute;z-index:1;background-image:radial-gradient(circle,rgba(140,158,200,.34) 1.4px,transparent 1.7px);background-size:12px 12px;animation:fqDrift 10s ease-in-out infinite}
.fq-dots.d1{right:20px;top:184px;width:60px;height:72px}
.fq-dots.d2{left:196px;bottom:8px;width:132px;height:96px;animation-delay:-4s}
.fq-dots.d3{left:0;top:250px;width:36px;height:120px;animation-delay:-7s}
.fq-wires{position:absolute;inset:0;width:100%;height:100%;z-index:2;overflow:visible;pointer-events:none}
.fq-wire{fill:none;stroke:rgba(150,170,214,.5);stroke-width:1.6;stroke-linecap:round;stroke-dasharray:.001 .06;animation:fqFlow 3.4s linear infinite}
.fq-wires .w2{animation-delay:-.85s}.fq-wires .w3{animation-delay:-1.7s}.fq-wires .w4{animation-delay:-2.55s}
.fq-scene .mt-card{position:absolute;z-index:4;background:#fff;border:1px solid rgba(232,239,245,.9);border-radius:20px;box-shadow:0 18px 44px rgba(7,26,45,.09);animation:fqFloat 8.5s ease-in-out infinite}
.fq-cat{padding:1rem 1.05rem 1.1rem;width:186px}
.fq-chip{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:#fff;margin-bottom:.7rem}
.fq-chip svg{display:block;width:20px;height:20px}
.fq-cat b{display:block;font-size:.92rem;line-height:1.22;color:var(--ink)}
.fq-lines{display:grid;gap:.4rem;margin-top:.85rem}
.fq-lines i{display:block;height:7px;border-radius:999px;background:#eef2f7}
.fq-accent{height:8px!important;animation:fqAccent 3.4s ease-in-out infinite}
.fq-cat.c1{left:46px;top:14px;animation-delay:0s}
.fq-cat.c1 .fq-chip{background:linear-gradient(140deg,#33c9a7,#2bab8e)}
.fq-cat.c1 .fq-accent{background:linear-gradient(90deg,#33c9a7,#2bab8e)}
.fq-cat.c2{right:84px;top:0;animation-delay:-2s}
.fq-cat.c2 .fq-chip{background:linear-gradient(140deg,#7c5cff,#694ed9)}
.fq-cat.c2 .fq-accent{background:linear-gradient(90deg,#7c5cff,#694ed9)}
.fq-cat.c3{right:0;top:280px;width:150px;animation-delay:-4s}
.fq-cat.c3 .fq-chip{background:linear-gradient(140deg,#5eabdf,#5091be)}
.fq-cat.c3 .fq-accent{background:linear-gradient(90deg,#5eabdf,#5091be)}
.fq-cat.c4{left:0;top:548px;animation-delay:-6s}
.fq-cat.c4 .fq-chip{background:linear-gradient(140deg,#49caca,#3eacac)}
.fq-cat.c4 .fq-accent{background:linear-gradient(90deg,#49caca,#3eacac)}
.fq-cat.c5{left:350px;top:566px;animation-delay:-3s}
.fq-cat.c5 .fq-chip{background:linear-gradient(140deg,#6f80ec,#5e6dc9)}
.fq-cat.c5 .fq-accent{background:linear-gradient(90deg,#6f80ec,#5e6dc9)}
.fq-window{left:20px;top:202px;width:420px;padding:0;overflow:hidden;border-radius:16px;animation-delay:-1s}
.fq-chrome{display:flex;align-items:center;gap:.35rem;padding:.55rem .8rem;background:#f7fafc;border-bottom:1px solid #eef2f7}
.fq-chrome i{width:8px;height:8px;border-radius:50%;background:#dbe4ed}
.fq-body{display:grid;grid-template-columns:100px minmax(0,1fr)}
.fq-side{display:grid;gap:.55rem;align-content:start;padding:.85rem .7rem;border-right:1px solid #f0f4f8}
.fq-side i{display:block;height:7px;border-radius:999px;background:#eef2f7}
.fq-side-on{height:9px!important;background:linear-gradient(90deg,#3fc9c0,#7c5cff)!important;animation:fqSide 4.6s ease-in-out infinite}
.fq-main{padding:.85rem .9rem 1rem}
.fq-main>b{display:block;font-size:.84rem;margin-bottom:.6rem;color:var(--ink)}
.fq-q{display:grid;grid-template-columns:minmax(0,1fr) 16px;gap:.5rem;align-items:center;padding:.5rem .6rem;border:1px solid #edf2f7;border-radius:10px;margin-bottom:.36rem;animation:fqRow 7.5s ease-in-out infinite}
.fq-q.q2{animation-delay:1.5s}
.fq-q.q3{animation-delay:3s}
.fq-q.q4{animation-delay:4.5s}
.fq-q.q5{animation-delay:6s}
.fq-q b{display:block;font-size:.64rem;line-height:1.2;color:var(--ink)}
.fq-q span>i{display:block;height:5px;width:74%;border-radius:999px;background:#eef2f7;margin-top:.32rem}
.fq-q svg{display:block;width:15px;height:15px;color:#5b8fe6;animation:fqChev 7.5s ease-in-out infinite}
.fq-q.q2 svg{animation-delay:1.5s}
.fq-q.q3 svg{animation-delay:3s}
.fq-q.q4 svg{animation-delay:4.5s}
.fq-q.q5 svg{animation-delay:6s}
.fq-mark{position:absolute;z-index:6;left:200px;top:566px;width:92px;height:92px;border-radius:28px;display:grid;place-items:center;background:#fff;color:#6f5ce8;font-size:2.6rem;font-weight:900;line-height:1;box-shadow:0 18px 40px rgba(7,26,45,.14);animation:fqMark 3.6s ease-in-out infinite}
@keyframes fqFloat{50%{transform:translateY(-7px)}}
@keyframes fqMark{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-6px) scale(1.05)}}
@keyframes fqBlob{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(10px,-8px) scale(1.05)}}
@keyframes fqDrift{50%{transform:translateY(-9px);opacity:.85}}
@keyframes fqFlow{to{stroke-dashoffset:-.244}}
@keyframes fqAccent{0%,100%{opacity:.75;transform:scaleX(.92);transform-origin:left}50%{opacity:1;transform:scaleX(1)}}
@keyframes fqSide{0%,100%{opacity:.8}50%{opacity:1}}
@keyframes fqRow{0%,4%{background:#fff;border-color:#edf2f7}9%,20%{background:#f4f9ff;border-color:#cfe0f5}26%,100%{background:#fff;border-color:#edf2f7}}
@keyframes fqChev{0%,4%{transform:translateX(0)}9%,20%{transform:translateX(3px)}26%,100%{transform:translateX(0)}}
@media(max-width:1180px){.fq-scene{transform:scale(.9);margin-bottom:-74px}}
@media(max-width:1100px){.fq-scene{transform:scale(.84);margin-bottom:-118px}}
@media(max-width:900px){.faq-hero-grid{grid-template-columns:1fr}.faq-hero-visual{justify-self:start}.fq-scene{transform:none;margin-bottom:0}}
@media(max-width:650px){.fq-scene{transform:scale(0.93);margin-bottom:-52px}}
@media(max-width:600px){.fq-scene{transform:scale(0.86);margin-bottom:-104px}}
@media(max-width:560px){.fq-scene{transform:scale(0.8);margin-bottom:-148px}}
@media(max-width:500px){.fq-scene{transform:scale(0.71);margin-bottom:-215px}}
@media(max-width:450px){.fq-scene{transform:scale(0.63);margin-bottom:-274px}}
@media(max-width:400px){.fq-scene{transform:scale(0.55);margin-bottom:-333px}}
@media(max-width:360px){.fq-scene{transform:scale(0.48);margin-bottom:-385px}}
@media(max-width:320px){.fq-scene{transform:scale(0.43);margin-bottom:-422px}}

/* ---- ROI results: savings equation ---- */
#roi-tool .calc-flow{display:grid;gap:0}
#roi-tool .calc-row{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:.9rem;align-items:center;padding:1rem 1.15rem;border-radius:16px;border:1px solid transparent}
#roi-tool .calc-row b{display:block;font-size:.95rem;line-height:1.25}
#roi-tool .calc-row small{display:block;color:#647c8d;font-size:.76rem;line-height:1.4;margin-top:.15rem}
#roi-tool .calc-row em{font-style:normal;font-size:1.16rem;font-weight:900;letter-spacing:-.01em;white-space:nowrap}
#roi-tool .calc-chip{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;color:#fff}
#roi-tool .calc-chip svg{display:block;width:25px;height:25px}
#roi-tool .calc-op{justify-self:center;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid var(--line);color:#7b8fa0;font-size:1rem;font-weight:900;line-height:1;margin:-9px 0;position:relative;z-index:2;box-shadow:0 4px 12px rgba(7,26,45,.06)}
#roi-tool .calc-row.r-net{background:linear-gradient(140deg,rgba(47,196,160,.13),rgba(79,209,197,.08));border-color:rgba(31,156,143,.4);border-width:2px;padding:1.25rem 1.15rem}
#roi-tool .calc-row.r-net .calc-chip{width:60px;height:60px;background:linear-gradient(140deg,#3fd0a6,#1f9c8f);box-shadow:0 10px 24px rgba(31,156,143,.28)}
#roi-tool .calc-row.r-net{grid-template-columns:60px minmax(0,1fr) auto}
#roi-tool .calc-row.r-net .calc-chip svg{width:29px;height:29px}
#roi-tool .calc-row.r-net b{font-size:1.14rem}
#roi-tool .calc-row.r-net em{font-size:1.6rem;color:#12a07d}
@media(max-width:560px){#roi-tool .calc-row{grid-template-columns:44px minmax(0,1fr);row-gap:.5rem;padding:.9rem 1rem}#roi-tool .calc-row em{grid-column:1/3}#roi-tool .calc-chip{width:44px;height:44px}#roi-tool .calc-row.r-net{grid-template-columns:44px minmax(0,1fr)}}

/* result rows follow the site ramp, reversed so the net saving lands on green */
#roi-tool .calc-row.r-avoided{background:rgba(124,92,255,.08);border-color:rgba(124,92,255,.28)}
#roi-tool .calc-row.r-avoided .calc-chip{background:linear-gradient(140deg,#7c5cff,#694ed9)}
#roi-tool .calc-row.r-avoided em{color:#5942b8}
#roi-tool .calc-row.r-rewards{background:rgba(106,142,232,.08);border-color:rgba(106,142,232,.28)}
#roi-tool .calc-row.r-rewards .calc-chip{background:linear-gradient(140deg,#6a8ee8,#5a79c5)}
#roi-tool .calc-row.r-rewards em{color:#4c66a7}
#roi-tool .calc-row.r-admin{background:rgba(80,195,211,.08);border-color:rgba(80,195,211,.28)}
#roi-tool .calc-row.r-admin .calc-chip{background:linear-gradient(140deg,#50c3d3,#44a6b3)}
#roi-tool .calc-row.r-admin em{color:#3a8c98}
#roi-tool .calc-row.r-net{background:rgba(51,201,167,.08);border-color:rgba(51,201,167,.28)}
#roi-tool .calc-row.r-net .calc-chip{background:linear-gradient(140deg,#33c9a7,#2bab8e)}
#roi-tool .calc-row.r-net em{color:#259178}
#roi-tool .calc-row.r-net{position:relative;grid-template-columns:60px minmax(0,1fr) auto;border-width:2px;background:rgba(51,201,167,.12);padding:1.25rem 1.15rem;animation:netGlow 3.6s ease-in-out infinite}
#roi-tool .calc-row.r-net .calc-chip{width:60px;height:60px;box-shadow:0 10px 24px rgba(51,201,167,.34)}
#roi-tool .calc-row.r-net .calc-chip svg{width:29px;height:29px}
#roi-tool .calc-row.r-net b{font-size:1.14rem}
#roi-tool .calc-row.r-net em{font-size:1.6rem}
@keyframes netGlow{0%,100%{border-color:rgba(51,201,167,.4);box-shadow:0 0 0 0 rgba(51,201,167,.36),0 8px 20px rgba(51,201,167,.08)}55%{border-color:rgba(51,201,167,.92);box-shadow:0 0 0 8px rgba(51,201,167,0),0 10px 26px rgba(51,201,167,.2)}}
#roi-tool .calc-flow{margin-top:.2rem}
#roi-tool .calc-facts{display:flex;flex-wrap:wrap;gap:.35rem .9rem;margin:.75rem 0 .2rem;padding-bottom:.75rem;border-bottom:1px solid rgba(160,178,214,.35);color:#5b7183;font-size:.75rem}
#roi-tool .calc-facts b{display:inline;color:#33506a;font-size:.75rem;font-weight:900}
@media(max-width:560px){#roi-tool .calc-row.r-net{grid-template-columns:44px minmax(0,1fr)}}

/* Content depth and resource links */
.decision-grid,.deep-dive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:2rem 0}
.decision-card,.deep-link{background:#fff;border:1px solid var(--line);border-radius:22px;padding:1.25rem;box-shadow:0 10px 26px rgba(7,26,45,.05)}
.decision-card span,.deep-link span{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;border-radius:12px;background:linear-gradient(135deg,var(--teal),var(--violet));color:#fff;font-size:.72rem;font-weight:900;margin-bottom:.75rem;padding:0 .55rem}
.decision-card b,.deep-link b{display:block;color:var(--ink);font-size:1rem;line-height:1.25;margin-bottom:.45rem}
.decision-card p,.deep-link small{display:block;color:#647887;font-size:.86rem;line-height:1.55;margin:0}
.deep-link{transition:transform .2s,box-shadow .2s}.deep-link:hover{transform:translateY(-4px);box-shadow:var(--shadow2)}
.deep-link strong{display:block;color:#237b77;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;margin-top:.8rem}
.decision-table{margin:1.8rem 0 2rem}.decision-table table{min-width:760px}.decision-table td:first-child{font-weight:800;color:var(--ink)}
.substance-note{padding:1.35rem 1.45rem;border-radius:22px;background:#f7fbfc;border:1px solid var(--line);margin:1.6rem 0}
.substance-note p{font-size:.9rem;margin:.35rem 0 0}
@media(max-width:900px){.decision-grid,.deep-dive-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.decision-grid,.deep-dive-grid{grid-template-columns:1fr}.decision-card,.deep-link{padding:1.05rem}}
/* active nav item: gradient underline so the current page is unmistakable */
.main-nav>a:not(.btn){position:relative}
.main-nav>a.active:after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:3px;border-radius:999px;background:linear-gradient(90deg,#4fd1c5,#65c2da 52%,#8a73ff);transform-origin:center;animation:navBar .55s cubic-bezier(.2,.8,.3,1.1) both}
@keyframes navBar{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}
@media(max-width:900px){.main-nav>a.active:after{bottom:1px;right:auto;width:32px}}

/* ============================================================================
   MOTION SYSTEM
   Tokens -> primitives -> choreography. Transform/opacity only; every layer
   has a reduced-motion and a no-JS resting state.
   ========================================================================== */

/* --- 1. tokens ------------------------------------------------------------ */
:root{
  /* easing: one decelerate curve does most of the work, so motion feels related */
  --e-out:cubic-bezier(.22,1,.36,1);        /* entrances, reveals, hovers      */
  --e-out-soft:cubic-bezier(.33,1,.68,1);   /* small state changes             */
  --e-in-out:cubic-bezier(.65,0,.35,1);     /* exits, scene changes            */
  --e-spring:cubic-bezier(.34,1.4,.64,1);   /* affordances that should feel alive */
  --d-1:.16s; --d-2:.28s; --d-3:.46s; --d-4:.7s; --d-scene:.95s;
  --reveal-y:26px;
  --stagger:70ms;
}

/* --- 2. reveal primitive -------------------------------------------------- */
[data-reveal]{
  opacity:0;
  transition:opacity var(--d-4) var(--e-out),transform var(--d-4) var(--e-out);
  transition-delay:var(--rd,0ms);
}
[data-reveal="up"]{transform:translate3d(0,var(--reveal-y),0)}
[data-reveal="fade"]{transform:none}
[data-reveal="scale"]{transform:scale(.965)}
[data-reveal="left"]{transform:translate3d(calc(var(--reveal-y) * -1),0,0)}
[data-reveal="right"]{transform:translate3d(var(--reveal-y),0,0)}
[data-reveal].is-in{opacity:1;transform:none}
.is-animating{will-change:opacity,transform}

/* legacy .reveal inherits the system's curve so old and new motion agree */
.reveal{transition:opacity var(--d-4) var(--e-out),transform var(--d-4) var(--e-out);transition-delay:var(--rd,0ms)}
.delay1{transition-delay:calc(var(--rd,0ms) + 90ms)}
.delay2{transition-delay:calc(var(--rd,0ms) + 180ms)}

/* --- 3. headline word reveal ---------------------------------------------- */
.ln{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.06em;margin-bottom:-.06em}
.ln>i{
  display:inline-block;font-style:inherit;transform:translate3d(0,105%,0);
  transition:transform var(--d-scene) var(--e-out);transition-delay:var(--wd,0ms);
}
.is-in .ln>i,.visible .ln>i{transform:none}

/* --- 4. depth: parallax layers -------------------------------------------- */
[data-parallax]{will-change:transform}

/* --- 5. scroll progress rail ---------------------------------------------- */
.scroll-rail{
  position:fixed;inset:0 0 auto;height:2px;z-index:60;pointer-events:none;
  transform:scaleX(var(--p,0));transform-origin:0 50%;
  background:linear-gradient(90deg,#4fd1c5,#65c2da 52%,#8a73ff);
  opacity:0;transition:opacity var(--d-2) var(--e-out);
}
.scroll-rail.is-on{opacity:1}

/* --- 6. hover + cursor affordances ---------------------------------------- */
.btn{transform:translate3d(var(--mx-t,0px),calc(var(--my-t,0px) + var(--lift,0px)),0)}
.btn:hover{--lift:-2px}
.btn-primary{background-size:180% 100%;background-position:0 0;transition:transform var(--d-2) var(--e-out),box-shadow var(--d-2) var(--e-out),background-position var(--d-3) var(--e-out)}
.btn-primary:hover{background-position:100% 0}

@media (hover:hover) and (pointer:fine){
  /* pointer-tracked sheen: reads as depth, costs one paint of a radial gradient */
  /* positioning context is established in JS only when the element is static,
     so sticky/absolute components keep their own behaviour */
  .glow::after{
    content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:0;
    opacity:0;transition:opacity var(--d-3) var(--e-out);
    background:radial-gradient(320px circle at var(--mx,50%) var(--my,50%),rgba(79,209,197,.14),rgba(124,92,255,.08) 42%,transparent 68%);
  }
  .glow:hover::after{opacity:1}
  .glow>*{position:relative;z-index:1}
}

/* --- 7. scene transitions (cross-document, progressive) -------------------- */
@view-transition{navigation:auto}
::view-transition-old(root){animation:sceneOut var(--d-2) var(--e-in-out) both}
::view-transition-new(root){animation:sceneIn var(--d-3) var(--e-out) both}
@keyframes sceneOut{to{opacity:0;transform:translate3d(0,-6px,0)}}
@keyframes sceneIn{from{opacity:0;transform:translate3d(0,10px,0)}}

/* --- 8. resting states: no-JS and reduced-motion --------------------------- */
@media (scripting:none){
  [data-reveal],.reveal{opacity:1!important;transform:none!important}
  .ln>i{transform:none!important}
  .scroll-rail{display:none}
}
@media (prefers-reduced-motion:reduce){
  [data-reveal],.reveal{opacity:1!important;transform:none!important;transition:none!important}
  .ln>i{transform:none!important}
  .ln{overflow:visible}
  .scroll-rail{display:none}
  [data-parallax]{transform:none!important;will-change:auto}
  .btn{transform:none!important}
  ::view-transition-old(root),::view-transition-new(root){animation:none!important}
}
/* FAQ disclosure: the pointer sheen reads across the whole question + answer */
.faq-item{transition:border-color var(--d-2) var(--e-out),box-shadow var(--d-2) var(--e-out)}
.faq-item button i{transition:transform var(--d-3) var(--e-spring),background var(--d-2) var(--e-out)}
@media (hover:hover) and (pointer:fine){.faq-item:hover{border-color:rgba(79,209,197,.45);box-shadow:0 10px 26px rgba(7,26,45,.06)}.faq-item:hover button i{background:#e2f5f1}}
/* a disclosure row is wide and short, so it needs a broader, slightly warmer sheen
   than a compact card for the same perceived strength */
@media (hover:hover) and (pointer:fine){.faq-item.glow::after{background:radial-gradient(460px circle at var(--mx,50%) var(--my,50%),rgba(79,209,197,.22),rgba(124,92,255,.13) 46%,transparent 74%)}.faq-item.glow:hover{border-color:rgba(79,209,197,.5)}}
.gb-blueprint-full .gb-step b{overflow-wrap:normal;word-break:keep-all;hyphens:none}

/* ── Template documents ──────────────────────────────────────────────────────
   The templates used to render inside a monospace <pre>, which read like a
   typewriter transcript. They are now real documents: sans-serif prose with a
   markdown-preview hierarchy, so the copy is judged on its content rather than
   fought through. Placeholders are rendered as chips so the fields a company
   still has to fill in are obvious at a glance. */
.template-doc{position:relative}
.md-doc{padding:1.9rem 2rem 2.1rem;background:#fff;color:#47606f;font-size:.945rem;line-height:1.74;-webkit-font-smoothing:antialiased}
.md-doc>*:first-child{margin-top:0}
.md-doc>*:last-child{margin-bottom:0}

/* document title */
.md-doc h3{font-size:1.3rem;letter-spacing:-.015em;color:var(--ink);margin:0 0 .5rem;line-height:1.2}
/* section heading, underlined the way a rendered markdown h2 is */
.md-doc h4{font-size:1.09rem;font-weight:800;color:var(--ink);margin:2.35rem 0 .9rem;padding-bottom:.5rem;border-bottom:1px solid var(--line);letter-spacing:-.005em}
.md-doc h4:first-of-type{margin-top:1.5rem}
.md-doc h5{font-size:.94rem;font-weight:800;color:var(--ink);margin:1.5rem 0 .4rem}
.md-doc p{margin:0 0 1rem;color:#47606f}
.md-doc strong{color:var(--ink);font-weight:750}
.md-doc hr{height:1px;border:0;background:var(--line);margin:1.6rem 0}

/* the meta line under a title: “Effective date · Owner · Applies to” */
.md-doc h3+p{font-size:.85rem;color:#7d919e;line-height:1.7}
.md-doc h3+p strong{color:#54697a;font-weight:800}

/* a question with its answer on the following line */
.md-doc .md-qa{margin-bottom:1.25rem}
.md-doc .md-qa>strong:first-child{display:block;color:var(--ink);font-weight:800;font-size:.945rem;margin-bottom:.12rem}
/* the heading strong is already a block, so the markdown line break that
   followed it would open a second, empty line */
.md-doc .md-qa>strong:first-child+br{display:none}

.md-doc ul{list-style:none;padding:0;margin:.85rem 0 1.15rem}
.md-doc li{position:relative;padding-left:1.3rem;margin-bottom:.42rem}
.md-doc li:last-child{margin-bottom:0}
.md-doc li:before{content:"";position:absolute;left:.15rem;top:.62em;width:5px;height:5px;border-radius:50%;background:linear-gradient(140deg,var(--teal),#6f9fe8)}

/* the spoken script a manager reads out loud */
.md-doc blockquote{margin:1.1rem 0 1.3rem;padding:1.1rem 1.25rem;border-radius:0 16px 16px 0;border-left:3px solid var(--teal);background:linear-gradient(90deg,#f1f9f8,#f8fbfc);color:#3d5766}
.md-doc blockquote p{margin:0;font-size:.94rem}

/* placeholder chips: every field a company must replace before sending */
.md-doc code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.845em;background:#eef6f9;color:#1f6f79;border:1px solid #dcebef;border-radius:6px;padding:.09em .3em;white-space:normal;overflow-wrap:break-word;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.md-doc blockquote code{background:#e7f4f4;border-color:#cfe6e4}

.md-doc .md-table{overflow-x:auto;margin:1.1rem 0 1.35rem;border:1px solid var(--line);border-radius:16px}
.md-doc table{min-width:0;width:100%;border-collapse:collapse;font-size:.875rem}
.md-doc th{background:#f4f8fa;color:#3a5667;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;padding:.72rem .9rem;white-space:nowrap}
.md-doc td{padding:.72rem .9rem;color:#4c6474;font-size:.875rem}
.md-doc tbody tr:last-child td{border-bottom:0}

/* Long templates are clamped with a fade rather than trapped in an inner
   scrollbar, so the card stays readable and the full text is one click away. */
.template-doc.is-clamped .md-doc{max-height:600px;overflow:hidden;position:relative}
.template-doc.is-clamped .md-doc:after{content:"";position:absolute;left:0;right:0;bottom:0;height:150px;background:linear-gradient(180deg,rgba(255,255,255,0),#fff 76%);pointer-events:none}
.template-expand{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;border:0;border-top:1px solid var(--line);background:#fbfdfe;padding:.95rem 1rem;font:inherit;font-size:.83rem;font-weight:800;color:#22707a;cursor:pointer;transition:background .2s,color .2s}
.template-expand:hover{background:#f2f9fa}
.template-expand:after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-1px);transition:transform .25s var(--e-out)}
.template-doc:not(.is-clamped) .template-expand:after{transform:rotate(225deg) translateY(-1px)}
.template-note{padding:1rem 1.5rem 1.15rem;margin:0;font-size:.78rem;line-height:1.6;background:#f7fafb;border-top:1px solid var(--line);color:#6b8090}
.template-note code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em;color:#3f7b80}

@media(max-width:650px){
  .md-doc{padding:1.4rem 1.25rem 1.6rem;font-size:.92rem}
  .md-doc h3{font-size:1.24rem}
  .md-doc h4{font-size:1.02rem;margin-top:2rem}
  .template-note{padding:.95rem 1.25rem 1.1rem}
}

/* ── Referral flywheel ───────────────────────────────────────────────────────
   The wheel is laid out by angle rather than by hand-placed offsets, so the
   nodes sit on a true circle and can be animated *around* it. One shared
   rhythm drives everything: --step is one node, --cycle is a full turn, and
   --lead is the pause that lets the entrance finish before the loop starts. */
.flywheel{position:relative;min-height:580px;border-radius:26px;overflow:hidden;
  background:radial-gradient(122% 100% at 50% -8%,#fff,#f3fafc 44%,#ecf5fb 100%);
  --r:198px;--cycle:15s;--step:2.5s;--lead:2s}

/* the ring the energy travels along */
.fly-ring{position:absolute;left:50%;top:50%;width:560px;height:560px;margin:-280px 0 0 -280px;z-index:2;pointer-events:none;fill:none}
/* the ring geometry follows --r so the track always runs through the node centres */
.fly-track,.fly-dash,.fly-arc{r:var(--r)}
.fly-track{stroke:rgba(120,158,180,.26);stroke-width:1.5}
.fly-dash{stroke:rgba(79,209,197,.5);stroke-width:2.4;stroke-dasharray:3 10;stroke-linecap:round}
.fly-arc{stroke:url(#flyArc);stroke-width:4.5;stroke-linecap:round;stroke-dasharray:96 504;opacity:0;filter:drop-shadow(0 0 7px rgba(79,209,197,.55))}
/* path unit 0 sits at 3 o'clock; rotate so it starts at the first node */
.fly-dash,.fly-arc{transform:rotate(-90deg);transform-box:view-box;transform-origin:280px 280px}

.fly-center{box-shadow:0 24px 64px rgba(7,26,45,.24),0 0 0 10px rgba(79,209,197,.07)}

/* ── nodes: placed by angle, so the entrance can sweep them into position ── */
.fly-node{position:absolute;left:50%;top:50%;z-index:5;width:158px;--a:calc(var(--i) * 60deg);
  transform:translate(-50%,-50%) rotate(var(--a)) translateY(calc(var(--r) * -1)) rotate(calc(var(--a) * -1))}
.fly-node.n1{--i:0;--node-a:#33c9a7;--node-glow:rgba(51,201,167,.36)}
.fly-node.n2{--i:1;--node-a:#45cfc4;--node-glow:rgba(69,207,196,.36)}
.fly-node.n3{--i:2;--node-a:#55bdda;--node-glow:rgba(85,189,218,.36)}
.fly-node.n4{--i:3;--node-a:#6699e4;--node-glow:rgba(102,153,228,.36)}
.fly-node.n5{--i:4;--node-a:#7278ef;--node-glow:rgba(114,120,239,.36)}
.fly-node.n6{--i:5;--node-a:#7c5cff;--node-glow:rgba(124,92,255,.36)}

.fly-card{position:relative;border-radius:22px;padding:.95rem .85rem 1.2rem;text-align:center;
  background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.9);
  box-shadow:0 16px 40px rgba(7,26,45,.12)}
/* the active glow rides on its own layer so the beat fades opacity instead of
   repainting a box-shadow on six cards every frame */
.fly-card:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  box-shadow:0 24px 50px var(--node-glow);opacity:0}
.fly-card i{position:relative}
/* the ring the badge throws off as the wheel reaches this node */
.fly-card i:after{content:"";position:absolute;inset:-3px;border-radius:15px;border:2px solid var(--node-a);opacity:0;pointer-events:none}
/* work completing inside the box */
.fly-card:after{content:"";position:absolute;left:16px;right:16px;bottom:9px;height:3px;border-radius:99px;
  background:linear-gradient(90deg,var(--node-a),rgba(255,255,255,.2));transform:scaleX(0);transform-origin:left;opacity:0}

/* ── entrance: everything spirals in and settles onto the ring ──
   Gated on .is-spinning, which lands only once the wheel is genuinely on
   screen — the shared reveal observer fires at 1% with a lead margin, which
   would spend the entrance below the fold. */
/* the whole ring sweeps in as one piece — staggering the orbital path itself
   makes a trailing card overtake the one ahead of it and collide. The
   one-by-one arrival is carried by the cards scaling up instead. */
.flywheel.is-spinning .fly-node{animation:flySpinIn 1.35s var(--e-out,cubic-bezier(.22,1,.36,1)) .12s both}
.flywheel.is-spinning .fly-center{animation:flyCenterIn 1.1s var(--e-spring,cubic-bezier(.34,1.4,.64,1)) both,
  flyCenterBeat var(--step) ease-in-out var(--lead) infinite}
.flywheel.is-spinning .fly-ring{animation:flyRingIn 1.5s var(--e-out,cubic-bezier(.22,1,.36,1)) both}

@keyframes flySpinIn{
  0%{transform:translate(-50%,-50%) rotate(calc(var(--a) - 150deg)) translateY(calc(var(--r) * -.52)) rotate(calc(150deg - var(--a)))}
  100%{transform:translate(-50%,-50%) rotate(var(--a)) translateY(calc(var(--r) * -1)) rotate(calc(var(--a) * -1))}}
@keyframes flyPop{0%{opacity:0;transform:scale(.5)}100%{opacity:1;transform:scale(1)}}
@keyframes flyCenterIn{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.32) rotate(-150deg)}
  100%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}}
@keyframes flyCenterBeat{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.04)}}
@keyframes flyRingIn{0%{opacity:0;transform:scale(.7) rotate(-60deg)}100%{opacity:1;transform:scale(1) rotate(0)}}

/* ── the loop: one pass of the wheel per --cycle ── */
.flywheel.is-spinning .fly-arc{animation:flyArcRun var(--cycle) linear var(--lead) infinite,flyArcOn .5s ease var(--lead) both}
.flywheel.is-spinning .fly-card{animation:flyPop .82s var(--e-spring,cubic-bezier(.34,1.4,.64,1)) both,
  flyBeat var(--cycle) ease-in-out infinite;
  animation-delay:calc(.24s + var(--i) * .12s),calc(var(--lead) + var(--i) * var(--step))}
.flywheel.is-spinning .fly-card:before{animation:flyGlow var(--cycle) ease-in-out infinite;
  animation-delay:calc(var(--lead) + var(--i) * var(--step))}
.flywheel.is-spinning .fly-card i{animation:flyBadge var(--cycle) ease-in-out infinite;
  animation-delay:calc(var(--lead) + var(--i) * var(--step))}
.flywheel.is-spinning .fly-card i:after{animation:flyBadgeRing var(--cycle) ease-out infinite;
  animation-delay:calc(var(--lead) + var(--i) * var(--step))}
.flywheel.is-spinning .fly-card:after{animation:flyFill var(--cycle) ease-out infinite;
  animation-delay:calc(var(--lead) + var(--i) * var(--step))}

@keyframes flyArcRun{from{stroke-dashoffset:96}to{stroke-dashoffset:-504}}
@keyframes flyArcOn{to{opacity:1}}
@keyframes flyBeat{
  0%,100%{transform:translateY(0) scale(1);border-color:rgba(255,255,255,.9)}
  3%{transform:translateY(-10px) scale(1.05);border-color:var(--node-a)}
  14%{transform:translateY(-10px) scale(1.05);border-color:var(--node-a)}
  21%{transform:translateY(0) scale(1);border-color:rgba(255,255,255,.9)}}
@keyframes flyGlow{0%,100%{opacity:0}3%{opacity:1}14%{opacity:1}21%{opacity:0}}
@keyframes flyBadge{0%,100%{transform:scale(1)}4%{transform:scale(1.2)}14%{transform:scale(1.07)}21%{transform:scale(1)}}
@keyframes flyBadgeRing{0%{opacity:0;transform:scale(.85)}3%{opacity:.6}17%{opacity:0;transform:scale(2.1)}100%{opacity:0;transform:scale(2.1)}}
@keyframes flyFill{0%{transform:scaleX(0);opacity:0}3%{opacity:1}16%{transform:scaleX(1);opacity:1}26%{transform:scaleX(1);opacity:0}100%{transform:scaleX(1);opacity:0}}

/* ── inside the wheel: waves off the hub, drifting motes ── */
.fly-stage{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden;border-radius:26px}
.fly-wave{position:absolute;left:50%;top:50%;width:196px;height:196px;margin:-98px 0 0 -98px;border-radius:50%;
  border:1.5px solid rgba(79,209,197,.45);opacity:0}
.flywheel.is-spinning .fly-wave{animation:flyWave calc(var(--step) * 3) ease-out infinite}
.fly-wave.w1{animation-delay:var(--lead)!important}
.fly-wave.w2{animation-delay:calc(var(--lead) + var(--step))!important;border-color:rgba(102,153,228,.4)}
.fly-wave.w3{animation-delay:calc(var(--lead) + var(--step) * 2)!important;border-color:rgba(124,92,255,.34)}
@keyframes flyWave{0%{opacity:.6;transform:scale(.5)}72%{opacity:0}100%{opacity:0;transform:scale(2.4)}}
.fly-mote{position:absolute;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle,rgba(79,209,197,.85),rgba(79,209,197,0) 70%)}
.fly-mote.m1{left:12%;top:24%}
.fly-mote.m2{right:14%;top:16%;background:radial-gradient(circle,rgba(124,92,255,.8),rgba(124,92,255,0) 70%)}
.fly-mote.m3{left:20%;bottom:14%}
.fly-mote.m4{right:18%;bottom:20%;background:radial-gradient(circle,rgba(102,153,228,.8),rgba(102,153,228,0) 70%)}
.fly-mote.m5{left:48%;top:8%}
.flywheel.is-spinning .fly-mote.m1{animation:flyMote 21s ease-in-out infinite}
.flywheel.is-spinning .fly-mote.m2{animation:flyMote 27s ease-in-out -6s infinite}
.flywheel.is-spinning .fly-mote.m3{animation:flyMote 24s ease-in-out -13s infinite}
.flywheel.is-spinning .fly-mote.m4{animation:flyMote 30s ease-in-out -3s infinite}
.flywheel.is-spinning .fly-mote.m5{animation:flyMote 33s ease-in-out -17s infinite}
@keyframes flyMote{0%,100%{transform:translate(0,0);opacity:.25}50%{transform:translate(26px,-34px);opacity:.9}}

/* ── behind the whole band ── */
.flywheel-section{position:relative;overflow:hidden}
.flywheel-section>.container{position:relative;z-index:1}
.fly-ambient{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.fly-blob{position:absolute;border-radius:50%;will-change:transform}
.fly-blob.b1{width:640px;height:640px;left:-170px;top:-190px;
  background:radial-gradient(circle,rgba(79,209,197,.32),rgba(79,209,197,0) 68%);animation:flyDriftA 52s ease-in-out infinite}
.fly-blob.b2{width:560px;height:560px;right:-150px;top:4%;
  background:radial-gradient(circle,rgba(124,92,255,.26),rgba(124,92,255,0) 68%);animation:flyDriftB 63s ease-in-out infinite}
.fly-blob.b3{width:720px;height:720px;left:34%;bottom:-330px;
  background:radial-gradient(circle,rgba(85,189,218,.24),rgba(85,189,218,0) 70%);animation:flyDriftC 72s ease-in-out infinite}
@keyframes flyDriftA{50%{transform:translate(76px,54px) scale(1.1)}}
@keyframes flyDriftB{50%{transform:translate(-64px,74px) scale(1.08)}}
@keyframes flyDriftC{50%{transform:translate(-88px,-46px) scale(1.06)}}
.fly-mesh{position:absolute;inset:-40px;
  background-image:radial-gradient(rgba(31,86,120,.17) 1.5px,transparent 1.5px);background-size:32px 32px;
  -webkit-mask-image:radial-gradient(ellipse 72% 64% at 50% 46%,#000 26%,transparent 78%);
  mask-image:radial-gradient(ellipse 72% 64% at 50% 46%,#000 26%,transparent 78%);
  animation:flyMesh 98s linear infinite}
@keyframes flyMesh{to{transform:translate(32px,32px)}}
.fly-halo{position:absolute;left:50%;top:50%;border-radius:50%;transform:translate(-50%,-50%);
  border:1px dashed rgba(79,209,197,.34)}
.fly-halo.h1{width:800px;height:800px;animation:flyHalo 148s linear infinite}
.fly-halo.h2{width:1120px;height:1120px;border-color:rgba(124,92,255,.24);animation:flyHaloRev 212s linear infinite}
@keyframes flyHalo{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes flyHaloRev{to{transform:translate(-50%,-50%) rotate(-360deg)}}

@media(max-width:780px){.flywheel{--r:182px;min-height:548px}}

/* Below the wheel's smallest workable diameter the ring is abandoned and the
   nodes become a plain ordered list. This has to sit after the circular
   layout above, or the absolute positioning wins and stacks every card on
   the same point. */
@media(max-width:650px){
  .flywheel{min-height:auto;display:grid;gap:.7rem;padding:1rem;background:linear-gradient(160deg,#fff,#f1f8fb)}
  .flywheel .fly-ring,.flywheel .fly-stage{display:none}
  .fly-center,.fly-node{position:relative;left:auto;top:auto;width:auto;height:auto;min-height:auto;
    transform:none!important;animation:none!important;opacity:1!important}
  .fly-center{border-radius:22px}
  .fly-card{text-align:left;display:grid;grid-template-columns:38px 1fr;column-gap:.78rem;
    align-items:center;padding:.9rem 1rem 1.05rem}
  .fly-card i{margin:0;grid-row:span 2}
  .fly-card:after{left:auto;right:14px;bottom:11px;width:34px}
}



/* ── "A simple path" wave entrance ───────────────────────────────────────────
   The row is read left to right, so the cards arrive as a crest travelling
   across it: each rises past its resting point, tips level, and settles, with a
   tinted sheen crossing the card as the wave passes through it.

   Two constraints shape how this is written. The cards are already in the
   hover-sheen set, which owns ::after — so the wave uses ::before. And the
   animation fills backwards, never forwards: a forwards fill would keep
   winning over the cascade after it ended and permanently disable the
   :hover lift. */
.timeline a[data-reveal]{position:relative}
.timeline a[data-reveal]>*{position:relative;z-index:1}
.timeline a[data-reveal]::before{content:"";position:absolute;inset:0;z-index:0;
  border-radius:inherit;pointer-events:none;opacity:0;
  background:linear-gradient(112deg,transparent 40%,var(--glow) 50%,transparent 60%);
  background-size:260% 100%;background-position:135% 0}

.timeline a[data-reveal].is-in{animation:pathWave 1.05s cubic-bezier(.33,1,.68,1) backwards;
  animation-delay:var(--rd,0ms)}
.timeline a[data-reveal].is-in::before{animation:pathWaveSheen .8s ease-out backwards;
  animation-delay:calc(var(--rd,0ms) + 80ms)}
.timeline a[data-reveal].is-in b{animation:pathWaveBadge .78s cubic-bezier(.34,1.5,.6,1) backwards;
  animation-delay:calc(var(--rd,0ms) + 130ms)}

@keyframes pathWave{
  0%{opacity:0;transform:translate3d(0,58px,0) scale(.9) rotate(-3.5deg)}
  38%{opacity:1}
  60%{transform:translate3d(0,-14px,0) scale(1.038) rotate(1.7deg)}
  80%{transform:translate3d(0,5px,0) scale(.994) rotate(-.6deg)}
  92%{transform:translate3d(0,-2px,0) scale(1.002) rotate(.2deg)}
  100%{opacity:1;transform:translate3d(0,0,0) scale(1) rotate(0)}}
@keyframes pathWaveSheen{
  0%{opacity:0;background-position:135% 0}
  28%{opacity:1}
  100%{opacity:0;background-position:-45% 0}}
@keyframes pathWaveBadge{
  0%{transform:scale(.35) rotate(-30deg)}
  100%{transform:scale(1) rotate(0)}}

/* ── Campaign structures (promotion ideas) ───────────────────────────────────
   Mirrors the softer Idea Library card system: pastel top fades, decorative
   watermark icons, and quiet structure around the existing campaign content. */
.campaign-band{position:relative;overflow:hidden;background:linear-gradient(180deg,#f8fbfd,#edf4fa)}
.campaign-band>.container{position:relative;z-index:1}
.ct-ambient{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.ct-dots{position:absolute;left:2.4rem;top:2.6rem;width:120px;height:98px;
  background-image:radial-gradient(rgba(66,116,156,.3) 2px,transparent 2px);background-size:24px 24px}
.ct-blob{position:absolute;border-radius:50%}
.ct-blob.b1{width:440px;height:440px;right:-150px;top:-180px;
  background:radial-gradient(circle,rgba(93,171,223,.22),rgba(93,171,223,0) 70%)}
.ct-blob.b2{width:540px;height:540px;left:-210px;bottom:-270px;
  background:radial-gradient(circle,rgba(124,92,255,.15),rgba(124,92,255,0) 70%)}

.ct-rule{display:block;width:250px;height:2px;margin:1.5rem auto 0;border-radius:2px;position:relative;
  background:linear-gradient(90deg,rgba(79,209,197,0),#4fd1c5 18%,#6699e4 50%,#7c5cff 82%,rgba(124,92,255,0))}
.ct-rule:after{content:"";position:absolute;left:50%;top:50%;width:11px;height:11px;
  margin:-5.5px 0 0 -5.5px;border-radius:50%;background:#5dabdf;box-shadow:0 0 0 4px rgba(93,171,223,.2)}

.ct-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem;margin-top:2.5rem;align-items:stretch}
.ct-card{
  --c:#35bfc0;
  --c-soft:rgba(79,209,197,.25);
  --c-line:rgba(53,191,192,.44);
  --c-glow:rgba(53,191,192,.16);
  position:relative;
  overflow:hidden;
  min-height:374px;
  display:flex;
  flex-direction:column;
  padding:2.05rem 1.65rem 1.5rem;
  border:1px solid var(--c-line);
  border-radius:22px;
  background:
    linear-gradient(180deg,var(--c-soft) 0%,rgba(255,255,255,.92) 48%,#fff 78%),
    #fff;
  box-shadow:0 14px 38px rgba(7,26,45,.055);
  transition:transform .25s var(--e-out,cubic-bezier(.22,1,.36,1)),box-shadow .25s,border-color .25s;
}
.ct-card:hover{transform:translateY(-3px);box-shadow:0 18px 46px rgba(7,26,45,.085);border-color:var(--c-line)}
.ct-card:nth-child(1){--c:#35bfc0;--c-soft:rgba(79,209,197,.25);--c-line:rgba(53,191,192,.44);--c-glow:rgba(53,191,192,.16)}
.ct-card:nth-child(2){--c:#54bddb;--c-soft:rgba(84,189,219,.20);--c-line:rgba(84,189,219,.36);--c-glow:rgba(84,189,219,.14)}
.ct-card:nth-child(3){--c:#7c5cff;--c-soft:rgba(124,92,255,.15);--c-line:rgba(124,92,255,.32);--c-glow:rgba(124,92,255,.13)}

.ct-watermark{
  position:absolute;
  z-index:0;
  top:1.05rem;
  right:1.15rem;
  width:88px;
  height:88px;
  color:var(--c);
  opacity:.25;
  pointer-events:none;
  display:grid;
  place-items:center;
}
.ct-watermark svg{width:88px;height:88px;display:block;overflow:visible}
.ct-top{position:relative;z-index:1;display:block;margin:2.15rem 0 1.3rem;padding-right:92px}
.ct-art,
.ct-label i{display:none}
.ct-label{display:block;padding-bottom:1rem;border-bottom:1px solid rgba(93,113,129,.18)}
.ct-label b{display:block;color:var(--ink);font-size:1.48rem;font-weight:900;letter-spacing:0;line-height:1.12}

.ct-points{position:relative;z-index:1;list-style:none;margin:0 0 1.45rem;padding:0;display:grid;gap:.82rem}
.ct-points li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:.72rem;align-items:start}
.ct-points i{display:block;width:22px;height:22px;color:var(--c);margin-top:.14rem}
.ct-points svg{display:block;width:100%;height:100%}
.ct-points span{color:#456277;font-size:.92rem;line-height:1.52}

.ct-example{position:relative;z-index:1;margin-top:auto;padding-top:1rem;border-top:1px solid rgba(93,113,129,.18);display:block}
.ct-example-label{display:inline-flex;margin-bottom:.45rem;color:var(--c);font-size:.72rem;line-height:1;text-transform:uppercase;letter-spacing:.09em;font-weight:900}
.ct-example-label:before{content:"";width:8px;height:8px;margin:.1rem .45rem 0 0;border-radius:50%;background:var(--c);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--c) 14%,transparent)}
.ct-example p{margin:0;font-size:.86rem;line-height:1.6;color:#637a8d;font-weight:600}

.ct-note{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;margin-top:1.15rem}
.ct-note>div{background:#fff;border:1px solid var(--line);border-radius:22px;padding:1.35rem 1.45rem;
  box-shadow:0 10px 30px rgba(7,26,45,.05)}
.ct-note b{display:block;color:var(--ink);font-size:.96rem;margin-bottom:.4rem}
.ct-note p{margin:0;font-size:.87rem;line-height:1.65}
.ct-cta{margin-top:1.6rem;display:flex;justify-content:center}

@media(max-width:980px){
  .ct-grid{grid-template-columns:1fr}
  .ct-card{min-height:0}
}
@media(max-width:650px){
  .ct-card{padding:1.75rem 1.45rem 1.4rem}
  .ct-top{margin-top:1.35rem;padding-right:68px}
  .ct-label b{font-size:1.28rem}
  .ct-points{margin-bottom:1.35rem}
  .ct-watermark{width:64px;height:64px;top:1rem;right:1rem;opacity:.22}
  .ct-watermark svg{width:64px;height:64px}
  .ct-note{grid-template-columns:1fr}
  .ct-dots{display:none}
  .ct-cta .btn{width:100%}
}

@media(max-width:650px){.idea-card-head{align-items:flex-start}.idea-glyph{width:40px;height:40px;border-radius:14px}.idea-glyph svg{width:22px;height:22px}}
/* Softer SaaS-style cards for the Promotion Ideas library. */
#ideas .ideas-grid{align-items:stretch}
#ideas .idea-card{
  --idea-accent:#45cfc4;
  --idea-soft:rgba(69,207,196,.24);
  --idea-line:rgba(69,207,196,.42);
  position:relative;
  overflow:hidden;
  min-height:292px;
  display:flex;
  flex-direction:column;
  padding:2.05rem 1.75rem 1.55rem;
  border:1px solid var(--idea-line);
  border-radius:22px;
  background:
    linear-gradient(180deg,var(--idea-soft) 0%,rgba(255,255,255,.92) 46%,#fff 76%),
    #fff;
  box-shadow:0 14px 38px rgba(7,26,45,.055);
}
#ideas .idea-card:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 46px rgba(7,26,45,.085);
  border-color:var(--idea-line);
}
#ideas .idea-card h3{
  position:relative;
  z-index:1;
  max-width:calc(100% - 84px);
  margin:2.15rem 0 1rem;
  color:var(--ink);
  font-size:1.28rem;
  font-weight:900;
  line-height:1.15;
}
#ideas .idea-card p{
  position:relative;
  z-index:1;
  color:#456277;
  font-size:.92rem;
  line-height:1.72;
  margin-bottom:1.35rem;
}
#ideas .idea-card small{
  position:relative;
  z-index:1;
  margin-top:auto;
  padding-top:1rem;
  border-top:1px solid rgba(93,113,129,.18);
  color:#637a8d;
  font-size:.86rem;
  font-weight:600;
  line-height:1.45;
}
#ideas .idea-card small b{color:var(--idea-accent);font-weight:900}
#ideas .best-dot{
  display:inline-block;
  width:9px;
  height:9px;
  margin-right:.52rem;
  border-radius:50%;
  background:var(--idea-accent);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--idea-accent) 14%,transparent);
  vertical-align:.05em;
}
#ideas .idea-watermark{
  position:absolute;
  z-index:0;
  top:1.1rem;
  right:1.25rem;
  width:82px;
  height:82px;
  color:var(--idea-accent);
  opacity:.25;
  pointer-events:none;
  display:grid;
  place-items:center;
}
#ideas .idea-watermark svg{width:82px;height:82px;display:block;overflow:visible}
#ideas .idea-card-head,
#ideas .idea-card .idea-num,
#ideas .idea-glyph{display:none}
#ideas .idea-card:nth-child(1){--idea-accent:#35bfc0;--idea-soft:rgba(79,209,197,.25);--idea-line:rgba(53,191,192,.44)}
#ideas .idea-card:nth-child(2){--idea-accent:#41c8c4;--idea-soft:rgba(79,209,197,.23);--idea-line:rgba(65,200,196,.40)}
#ideas .idea-card:nth-child(3){--idea-accent:#54bddb;--idea-soft:rgba(84,189,219,.20);--idea-line:rgba(84,189,219,.36)}
#ideas .idea-card:nth-child(4){--idea-accent:#5fb2e0;--idea-soft:rgba(95,178,224,.19);--idea-line:rgba(95,178,224,.35)}
#ideas .idea-card:nth-child(5){--idea-accent:#679ee5;--idea-soft:rgba(103,158,229,.18);--idea-line:rgba(103,158,229,.34)}
#ideas .idea-card:nth-child(6){--idea-accent:#7088ec;--idea-soft:rgba(112,136,236,.17);--idea-line:rgba(112,136,236,.33)}
#ideas .idea-card:nth-child(7){--idea-accent:#7778f1;--idea-soft:rgba(119,120,241,.16);--idea-line:rgba(119,120,241,.32)}
#ideas .idea-card:nth-child(8){--idea-accent:#7b68f3;--idea-soft:rgba(123,104,243,.155);--idea-line:rgba(123,104,243,.32)}
#ideas .idea-card:nth-child(9){--idea-accent:#7f60f5;--idea-soft:rgba(127,96,245,.15);--idea-line:rgba(127,96,245,.31)}
#ideas .idea-card:nth-child(10){--idea-accent:#825cf6;--idea-soft:rgba(130,92,246,.145);--idea-line:rgba(130,92,246,.31)}
#ideas .idea-card:nth-child(11){--idea-accent:#8058f7;--idea-soft:rgba(128,88,247,.145);--idea-line:rgba(128,88,247,.31)}
#ideas .idea-card:nth-child(12){--idea-accent:#7c5cff;--idea-soft:rgba(124,92,255,.15);--idea-line:rgba(124,92,255,.32)}
@media(max-width:900px){
  #ideas .idea-card{min-height:272px}
  #ideas .idea-card h3{max-width:calc(100% - 74px)}
  #ideas .idea-watermark{width:72px;height:72px}
  #ideas .idea-watermark svg{width:72px;height:72px}
}
@media(max-width:650px){
  #ideas .idea-card{min-height:0;padding:1.75rem 1.45rem 1.4rem}
  #ideas .idea-card h3{max-width:calc(100% - 64px);margin-top:1.35rem;font-size:1.2rem}
  #ideas .idea-card p{font-size:.9rem}
  #ideas .idea-watermark{width:62px;height:62px;top:1rem;right:1rem;opacity:.22}
  #ideas .idea-watermark svg{width:62px;height:62px}
}
