/* PlantNura — Mission section (homepage) + "next-generation" accent (shared) */
.pnm{position:relative;overflow:hidden;background:#060a1c;color:#fff;padding:110px 0 130px;isolation:isolate}
.pnm *{box-sizing:border-box}
.pnm-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,#000 30%,transparent 80%);mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,#000 30%,transparent 80%);z-index:-1}
.pnm-orb{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55;z-index:-2;animation:pnmDrift 14s ease-in-out infinite alternate;pointer-events:none}
.pnm-o1{width:460px;height:460px;background:#ff9933;left:-260px;top:-220px;opacity:.30}
.pnm-o2{width:620px;height:620px;background:#7c3aed;right:-120px;top:40px;animation-delay:-4s}
.pnm-o3{width:480px;height:480px;background:#10b981;left:42%;bottom:-300px;opacity:.35;animation-delay:-8s}
@keyframes pnmDrift{0%{transform:translate(0,0) scale(1)}100%{transform:translate(60px,40px) scale(1.12)}}
.pnm-wrap{max-width:1200px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
@property --pnma{syntax:'<angle>';inherits:false;initial-value:0deg}
.pnm-cardwrap{position:relative;border-radius:30px;padding:1.5px;background:conic-gradient(from var(--pnma),rgba(255,153,51,.9),rgba(124,58,237,.9),rgba(20,184,166,.9),rgba(19,136,8,.9),rgba(255,153,51,.9));animation:pnmSpin 8s linear infinite;box-shadow:0 40px 120px -30px rgba(124,58,237,.55)}
@keyframes pnmSpin{to{--pnma:360deg}}
.pnm-card{position:relative;border-radius:29px;padding:44px 46px 40px;background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.04));background-color:rgba(12,16,46,.62);-webkit-backdrop-filter:blur(28px) saturate(160%);backdrop-filter:blur(28px) saturate(160%);overflow:hidden}
.pnm-card:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.10) 45%,transparent 60%);animation:pnmSheen 6s ease-in-out infinite;pointer-events:none}
@keyframes pnmSheen{0%,40%{transform:translateX(-80%)}70%,100%{transform:translateX(80%)}}
.pnm-eyebrow{display:inline-flex;align-items:center;gap:10px;padding:8px 16px 8px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);font-size:13px;font-weight:700;letter-spacing:.18em;color:#e9e3ff}
.pnm-dot{width:9px;height:9px;border-radius:50%;background:#ff9933;animation:pnmPulse 2s infinite}
@keyframes pnmPulse{0%{box-shadow:0 0 0 0 rgba(255,153,51,.7)}70%{box-shadow:0 0 0 12px rgba(255,153,51,0)}100%{box-shadow:0 0 0 0 rgba(255,153,51,0)}}
.pnm-h{margin:26px 0 0;font-size:42px;line-height:1.12;font-weight:800;letter-spacing:-.02em;color:#fff}
.pnm-grad{background:linear-gradient(90deg,#ffb35c,#ff7a59 25%,#c084fc 55%,#5eead4 80%,#ffb35c);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:pnmShimmer 5s linear infinite}
@keyframes pnmShimmer{to{background-position:200% center}}

/* "next-generation" accent — hand-drawn underline + sparkle (used on home + about) */
.pnm-ng{position:relative;display:inline-block;white-space:nowrap;font-style:italic;font-weight:800;padding-right:.18em}
.pnm-ng-t{background:linear-gradient(180deg,#ffffff 0%,#d9ccff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.pnm-ng svg.pnm-ng-u{position:absolute;left:0;right:.18em;bottom:-.16em;width:calc(100% - .18em);height:.32em;overflow:visible}
.pnm-ng-u path{fill:none;stroke-width:5;stroke-linecap:round;stroke-dasharray:320;stroke-dashoffset:320;animation:pnmDraw 1.6s .4s cubic-bezier(.65,0,.35,1) forwards}
@keyframes pnmDraw{to{stroke-dashoffset:0}}
.pnm-ng-s{position:absolute;top:-.34em;right:-.3em;font-size:.42em;font-style:normal;color:#ffb35c;text-shadow:0 0 12px rgba(255,179,92,.9);animation:pnmTwinkle 2.4s ease-in-out infinite}
@keyframes pnmTwinkle{0%,100%{transform:scale(.8) rotate(0);opacity:.7}50%{transform:scale(1.2) rotate(90deg);opacity:1}}
.ab-vm-mission .pnm-ng-t{background:linear-gradient(90deg,#7c3aed,#0f766e);-webkit-background-clip:text;background-clip:text;color:transparent}

.pnm-sub{margin:22px 0 0;font-size:19px;line-height:1.55;color:rgba(226,232,255,.8);max-width:560px}
.pnm-sub b{color:#fff;font-weight:700}
.pnm-chips{display:flex;flex-wrap:nowrap;align-items:center;gap:10px;margin-top:30px}
.pnm-chip{display:inline-flex;align-items:center;gap:9px;padding:10px 14px;white-space:nowrap;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);font-size:14.5px;font-weight:700;color:#fff}
.pnm-chip i{font-style:normal;width:26px;height:26px;border-radius:9px;display:grid;place-items:center;font-size:13px}
.pnm-c1 i{background:linear-gradient(135deg,#ff9933,#ff6a3d)}
.pnm-c2 i{background:linear-gradient(135deg,#8b5cf6,#6d28d9)}
.pnm-c3 i{background:linear-gradient(135deg,#14b8a6,#138808)}
.pnm-arrow{opacity:.5}
.pnm-viz{position:relative;height:520px}
.pnm-viz svg.pnm-globe{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.pnm-arc{fill:none;stroke-width:2;stroke-linecap:round;stroke-dasharray:6 10;animation:pnmFlow 1.6s linear infinite}
@keyframes pnmFlow{to{stroke-dashoffset:-32}}
.pnm-ring{transform-origin:center;transform-box:fill-box;animation:pnmRing 2.6s ease-out infinite}
@keyframes pnmRing{0%{transform:scale(.4);opacity:.9}100%{transform:scale(2.6);opacity:0}}
.pnm-spin{transform-origin:260px 260px;animation:pnmRot 60s linear infinite}
@keyframes pnmRot{to{transform:rotate(360deg)}}
.pnm-label{font-size:12px;font-weight:700;letter-spacing:.12em;fill:rgba(255,255,255,.7)}
.pnm-float{position:absolute;padding:12px 16px;border-radius:16px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 20px 50px -20px rgba(0,0,0,.6);animation:pnmBob 6s ease-in-out infinite;white-space:nowrap;color:#fff;text-decoration:none;transition:border-color .2s,background .2s}
.pnm-float:hover{border-color:rgba(255,179,92,.7);background:rgba(255,255,255,.14)}
.pnm-float small{display:block;font-size:11px;letter-spacing:.14em;font-weight:700;color:rgba(255,255,255,.6);margin-bottom:3px}
.pnm-float strong{font-size:16px;font-weight:800}
.pnm-f1{top:-34px;right:-40px}
.pnm-f2{bottom:-40px;right:-40px;animation-delay:-2s}
.pnm-f3{bottom:-30px;left:-30px;animation-delay:-4s}
@keyframes pnmBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}

@media (max-width:1100px){.pnm-f1,.pnm-f2{right:0}.pnm-f3{left:0}}
@media (max-width:960px){
  .pnm{padding:80px 0 90px}
  .pnm-wrap{grid-template-columns:1fr;gap:40px}
  .pnm-viz{height:440px;max-width:520px;width:100%;margin:0 auto}
  .pnm-f1{top:-10px;right:0}.pnm-f2{bottom:-10px;right:0}.pnm-f3{bottom:-10px;left:0}
}
@media (max-width:600px){
  .pnm-card{padding:30px 22px 28px}
  .pnm-h{font-size:30px}
  .pnm-sub{font-size:16.5px}
  .pnm-chips{flex-wrap:wrap}.pnm-arrow{display:none}
  .pnm-viz{height:auto;display:flex;flex-direction:column;gap:10px}
  .pnm-viz svg.pnm-globe{position:relative;order:-1;height:auto;aspect-ratio:1/1;margin-bottom:6px}
  .pnm-float{position:static;animation:none;padding:10px 14px}.pnm-float strong{font-size:14.5px}
  .pnm-label{font-size:15px}
}
@media (prefers-reduced-motion:reduce){
  .pnm *, .pnm-ng *{animation:none!important}
  .pnm-ng-u path{stroke-dashoffset:0}
}
