:root{
      --navy:#0A173B;
      --rose:#C94B67;
      --cream:#F7F5F1;
      --ink:#222222;
      --muted:#4B4B4B;
      --card:#FFFFFF;
      --surface:#F1EFEB;
      --line:#DDDAD5;
      --dark-card:#101F46;
      --dark-surface:#16264B;
      --dark-line:#26375A;
      --dark-heading:#C7CDD6;
      --dark-text:#F2F2F2;
      --dark-muted:#C7C7C7;
      --shadow: 0 18px 45px rgba(10,23,59,.08);
      --radius:22px;
      --max:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      background:var(--cream);
      color:var(--ink);
      line-height:1.6;
      -webkit-font-smoothing:antialiased;
    }
    /* Scroll progress: anchored directly below the sticky navigation bar. */
    .scroll-progress{
      position:absolute;
      left:0;
      bottom:-2px;
      width:100%;
      height:2px;
      z-index:31;
      pointer-events:none;
      overflow:hidden;
    }
    .scroll-progress-bar{
      width:100%;
      height:2px;
      transform:scaleX(0);
      transform-origin:left center;
      background:#C94B67;
      opacity:.78;
      will-change:transform;
      transition:transform 110ms cubic-bezier(.22,.61,.36,1);
      box-shadow:0 0 3px rgba(201,75,103,.18);
    }
    a{color:inherit;text-decoration:none}
    button{font:inherit}
    .container{width:min(var(--max),calc(100% - 48px));margin:0 auto}
    .nav-wrap{
      position:sticky;top:0;z-index:30;
      backdrop-filter:blur(16px);
      background:rgba(247,245,241,.88);
      border-bottom:1px solid rgba(221,218,213,.8);
    }
    nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
    .brand{display:flex;align-items:center;gap:10px;min-width:max-content}
    .brandmark{width:34px;height:40px;display:block}
    .brand-name{font-weight:700;letter-spacing:-.04em;color:var(--navy);font-size:21px;line-height:1}
    .brand-name span{color:var(--rose)}
    .brand-sub{display:block;margin-top:4px;font-size:10px;color:var(--muted);font-weight:500;letter-spacing:.01em}
    .nav-links{display:flex;align-items:center;gap:26px;font-size:13px;color:#38404c}
    .nav-links a:hover{color:var(--rose)}
    .cta{
      border:0;border-radius:12px;padding:11px 16px;background:var(--rose);color:white;
      font-weight:600;box-shadow:0 8px 20px rgba(201,75,103,.18);cursor:pointer;
    }
    .theme-btn{border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 10px;cursor:pointer;color:var(--navy)}

    /* Final clickable-control polish — static, restrained and premium.
       White/outline controls use a subtle rose edge only.
       Rose CTAs use a clearer static depth/contrast change. No moving reflections. */
    .cta,.theme-btn,.btn-secondary,.play,.close{
      position:relative;
      transition:
        border-color 320ms cubic-bezier(.22,1,.36,1),
        box-shadow 380ms cubic-bezier(.22,1,.36,1),
        background-color 380ms cubic-bezier(.22,1,.36,1),
        color 320ms cubic-bezier(.22,1,.36,1);
    }

    /* Remove the previous moving-edge pseudo highlights entirely. */
    .cta::after,.theme-btn::after,.btn-secondary::after,.play::after,.close::after{content:none!important}

    /* Rose-filled Trial Demo CTAs: visibly richer, but still restrained. */
    .cta:hover,.cta:focus-visible{
      background:#B9435E;
      box-shadow:
        0 9px 22px rgba(201,75,103,.28),
        inset 0 0 0 1px rgba(255,255,255,.24),
        inset 0 1px 0 rgba(255,255,255,.18);
    }

    /* White controls: static rose edge, no travel. */
    .theme-btn:hover,.theme-btn:focus-visible,
    .btn-secondary:hover,.btn-secondary:focus-visible{
      border-color:rgba(201,75,103,.58);
      box-shadow:
        0 4px 14px rgba(10,23,59,.045),
        inset 0 0 0 1px rgba(201,75,103,.08);
      background:#fff;
    }

    /* Filled circular play control: static reflected edge only. */
    .play:hover,.play:focus-visible{
      box-shadow:
        0 0 0 1px rgba(255,255,255,.22),
        0 7px 18px rgba(201,75,103,.22),
        inset 0 1px 0 rgba(255,255,255,.16);
    }

    /* Dark close control: same static rose-edge language. */
    .close:hover,.close:focus-visible{
      border-color:rgba(201,75,103,.52);
      box-shadow:inset 0 0 0 1px rgba(201,75,103,.06),0 4px 14px rgba(0,0,0,.12);
    }

    .cta:focus-visible,.theme-btn:focus-visible,.btn-secondary:focus-visible,.play:focus-visible,.close:focus-visible{
      outline:2px solid rgba(201,75,103,.24);
      outline-offset:2px;
    }

    section{padding:92px 0}
    .eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:700;color:var(--rose);margin-bottom:12px}
    h1,h2,h3{margin:0;color:var(--navy);letter-spacing:-.04em}
    h1{font-size:clamp(42px,6vw,76px);line-height:1.03;max-width:760px}
    h2{font-size:clamp(30px,4vw,41px);line-height:1.12}
    h3{font-size:20px;line-height:1.25}
    .lead{font-size:19px;color:var(--muted);max-width:720px;margin-top:22px}
    .hero{padding-top:35px}
    .hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:center}
    .belief{font-size:18px;font-weight:600;color:var(--navy);margin:28px 0 14px}
    .hero-copy p{max-width:720px;color:var(--muted);margin:0 0 16px}
    .hero-copy strong{color:var(--navy)}
    .pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
    .pill{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 13px;font-size:13px;font-weight:600;color:var(--navy)}
    .pill:nth-child(2){color:var(--rose);border-color:#e8c0c9}
    .hero-actions{display:flex;gap:12px;margin-top:30px;align-items:center;flex-wrap:wrap}
    .btn-secondary{border:1px solid var(--line);background:#fff;color:var(--navy);border-radius:12px;padding:11px 16px;font-weight:600;cursor:pointer}

    .research-visual{
      min-height:500px;background:var(--navy);border-radius:30px;padding:28px;color:white;position:relative;overflow:hidden;
      box-shadow:var(--shadow);
    }
    .research-visual:before,.research-visual:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.09);border-radius:50%}
    .research-visual:before{width:440px;height:440px;right:-180px;top:-120px}
    .research-visual:after{width:280px;height:280px;left:-120px;bottom:-120px}
    .viz-top{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:2}
    .viz-label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--dark-muted)}
    .live{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--dark-muted)}
    .live:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--rose);box-shadow:0 0 0 5px rgba(201,75,103,.14)}
    .graph{position:absolute;inset:105px 28px 104px 28px}
    .node{position:absolute;width:74px;height:74px;border-radius:18px;background:var(--dark-card);border:1px solid var(--dark-line);display:grid;place-items:center;color:var(--dark-heading);font-size:10px;text-align:center;padding:4px;box-shadow:0 12px 30px rgba(0,0,0,.1)}
    .node b{display:block;color:white;font-size:22px;margin-bottom:3px}
    .node.n1{left:2%;top:4%}.node.n2{left:38%;top:1%}.node.n3{right:1%;top:18%}.node.n4{left:14%;bottom:4%}.node.n5{right:18%;bottom:2%}
    .connector{position:absolute;height:1px;background:linear-gradient(90deg,rgba(199,205,214,.15),var(--rose),rgba(199,205,214,.15));transform-origin:left center}
    .c1{width:170px;left:76px;top:55px;transform:rotate(-3deg)}
    .c2{width:180px;left:47%;top:70px;transform:rotate(18deg)}
    .c3{width:190px;left:80px;bottom:82px;transform:rotate(-27deg)}
    .c4{width:185px;right:86px;bottom:74px;transform:rotate(25deg)}

    /* Research Trace — perceptible on inspection, quiet during normal reading */
    .research-trace{
      position:absolute;
      left:7%;top:50%;
      width:5px;height:5px;
      border-radius:50%;
      background:#C94B67;
      opacity:0;
      transform:translate(-50%,-50%) scale(.86);
      box-shadow:
        0 0 0 2px rgba(247,245,241,.14),
        0 0 8px rgba(201,75,103,.62);
      pointer-events:none;
      z-index:3;
      will-change:left,opacity,transform;
    }
    .research-trace::after{
      content:"";
      position:absolute;
      inset:-4px;
      border-radius:50%;
      background:rgba(201,75,103,.14);
      filter:blur(2px);
    }
    .connector.trace-active .research-trace{
      animation:researchTrace 1900ms cubic-bezier(.32,.02,.18,1) 1 both;
    }
    @keyframes researchTrace{
      0%{left:7%;opacity:0;transform:translate(-50%,-50%) scale(.78)}
      8%{opacity:.96;transform:translate(-50%,-50%) scale(1)}
      86%{opacity:.96;transform:translate(-50%,-50%) scale(1)}
      100%{left:63%;opacity:0;transform:translate(-50%,-50%) scale(.82)}
    }
    @media (prefers-reduced-motion:reduce){
      .connector.trace-active .research-trace{animation:none}
    }
    .video-card{position:absolute;left:28px;right:28px;bottom:26px;border:1px solid var(--dark-line);background:rgba(16,31,70,.82);border-radius:18px;padding:15px 17px;display:flex;align-items:center;justify-content:space-between;z-index:2; display:none;}
    .video-card small{color:var(--dark-muted)}
    .play{width:42px;height:42px;border-radius:50%;background:var(--rose);display:grid;place-items:center;font-size:16px;cursor:pointer;border:0;color:white}

    .section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}
    .section-head p{max-width:610px;color:var(--muted);margin:0}
    .cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}

    /* Specular Intelligence Scan — robust continuous perimeter reflection.
       Uses real moving light segments instead of SVG stroke-dashes so the motion
       remains clearly visible in browsers while preserving the intended paths:
       TOP: top-left → across top → rounded top-right → down right edge.
       BOTTOM: bottom-right → across bottom → rounded bottom-left → up left edge. */
    details.case{
      background:#fff;
      border:1px solid var(--line);
      border-radius:18px;
      padding:20px;
      min-height:230px;
      position:relative;
      overflow:hidden;
    }
    .perimeter-reflection{
      position:absolute;
      left:0;top:0;
      width:72px;
      height:2.2px;
      border-radius:999px;
      pointer-events:none;
      z-index:8;
      opacity:0;
      background:linear-gradient(90deg,
        rgba(201,75,103,0) 0%,
        rgba(201,75,103,.23) 16%,
        rgba(201,75,103,.72) 42%,
        rgba(201,75,103,.72) 58%,
        rgba(201,75,103,.23) 84%,
        rgba(201,75,103,0) 100%);
      box-shadow:
        0 0 1.4px rgba(201,75,103,.28),
        0 0 3px rgba(201,75,103,.11);
      transform-origin:center center;
      will-change:left,top,transform,opacity,filter;
    }
    .perimeter-reflection.bottom{
      height:2.4px;
      width:72px;
      box-shadow:
        0 0 1.4px rgba(201,75,103,.23),
        0 0 2.4px rgba(201,75,103,.09);
    }
    @media (prefers-reduced-motion:reduce){
      .perimeter-reflection{display:none!important}
    }
    details.case[open]{grid-column:span 2}
    summary{list-style:none;cursor:pointer}
    summary::-webkit-details-marker{display:none}
    /* .case-viz{height:74px;border-radius:14px;margin-bottom:16px;display:flex;align-items:center;justify-content:center;overflow:hidden} */
	.case-viz {
		height: 210px;
		border-radius: 14px;
		background: #F7F5F1;
		margin-bottom: 16px;
		display: flex;
		align-items: center;
		justify-content: center;
		overflow: hidden;
		border: 1px solid rgba(221, 218, 213, .72);
	}
	.case-viz img {
		width: 100%;
		height: 100%;
		display: block;
		object-fit: cover;
		object-position: center;
		transform: scale(1.01);
	}
    .mini-bars{width:76%;height:42px;display:flex;gap:7px;align-items:end}
    .mini-bars i{display:block;flex:1;background:var(--navy);border-radius:5px 5px 2px 2px;opacity:.88}
    .mini-bars i:nth-child(2n){background:var(--rose)}
    .case h3{font-size:17px;margin-bottom:10px}
    .case .teaser{font-size:13px;color:var(--muted);margin:0}
    .case .full{font-size:14px;color:var(--muted);margin:14px 0 0;padding-top:14px;border-top:1px solid var(--line)}
    .open-hint{display:inline-flex;margin-top:14px;color:var(--rose);font-size:12px;font-weight:700}

    .dark-section{background:var(--navy);color:var(--dark-text)}
    .dark-section h2,.dark-section h3{color:var(--dark-heading)}
    .dark-section .eyebrow{color:var(--rose)}
    .dark-section p{color:var(--dark-muted)}
    .architecture{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}
    .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
    .step{
      background:var(--dark-card);
      border:1px solid var(--dark-line);
      border-radius:18px;
      padding:20px;
      min-height:220px;
      position:relative;
      transition:
        border-color 980ms cubic-bezier(.22,1,.36,1),
        background-color 980ms cubic-bezier(.22,1,.36,1),
        box-shadow 980ms cubic-bezier(.22,1,.36,1);
    }
    .step-num{
      width:42px;height:42px;border-radius:13px;border:1px solid #3a4d78;
      display:grid;place-items:center;color:var(--rose);font-weight:700;margin-bottom:26px;
      transition:
        border-color 920ms cubic-bezier(.22,1,.36,1),
        background-color 920ms cubic-bezier(.22,1,.36,1),
        box-shadow 920ms cubic-bezier(.22,1,.36,1);
    }
    /* CuratedAI sequential reasoning cue: the complete card receives a quiet accent,
       while the number container carries the slightly stronger signal. No movement. */
    .step.reasoning-active{
      border-color:rgba(201,75,103,.42);
      background-color:#112047;
      box-shadow:
        inset 0 0 0 1px rgba(201,75,103,.022),
        0 0 0 1px rgba(201,75,103,.010);
    }
    .step.reasoning-active .step-num{
      border-color:rgba(201,75,103,.64);
      background-color:rgba(201,75,103,.050);
      box-shadow:0 0 0 2px rgba(201,75,103,.020);
    }
    .step h3{font-size:16px;margin-bottom:8px}
    .step p{font-size:13px;margin:0}

    .products{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .product{
      background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;
      position:relative;overflow:hidden;
      --cursor-x:50%;--cursor-y:50%;--shadow-x:0px;--shadow-y:8px;
      transition:border-color 280ms cubic-bezier(.22,1,.36,1),box-shadow 320ms cubic-bezier(.22,1,.36,1);
    }
    .product::before{
      content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:0;opacity:0;
      background:radial-gradient(circle 145px at var(--cursor-x) var(--cursor-y),
        rgba(201,75,103,.145) 0%,
        rgba(201,75,103,.074) 34%,
        rgba(201,75,103,.028) 52%,
        rgba(201,75,103,0) 72%);
      transition:opacity 340ms cubic-bezier(.22,1,.36,1);
    }
    .product > *{position:relative;z-index:1}
    .product.cursor-tracked{
      border-color:rgba(201,75,103,.34);
      box-shadow:
        var(--shadow-x) var(--shadow-y) 32px rgba(201,75,103,.105),
        0 10px 28px rgba(10,23,59,.045),
        inset 0 0 0 1px rgba(201,75,103,.055);
    }
    .product.cursor-tracked::before{opacity:1}
    .product-icon{
      width:48px;height:48px;border-radius:14px;background:var(--surface);display:grid;place-items:center;
      color:var(--navy);font-size:22px;margin-bottom:18px;position:relative;
      --icon-angle:0deg;--icon-proximity:0;
      box-shadow:inset 0 0 0 1px rgba(201,75,103,0),0 0 0 rgba(201,75,103,0);
      transition:
        box-shadow 920ms cubic-bezier(.22,1,.36,1),
        background-color 920ms cubic-bezier(.22,1,.36,1);
    }
    /* Cursor-linked icon edge: a restrained rose reflection rotates around the icon tile
       toward the pointer position. It does not move or resize the icon. */
    .product-icon::after{
      content:"";position:absolute;inset:-1px;border-radius:15px;pointer-events:none;
      background:conic-gradient(
        from calc(var(--icon-angle) - 40deg),
        rgba(201,75,103,0) 0deg,
        rgba(201,75,103,0) 15deg,
        rgba(201,75,103,.40) 28deg,
        rgba(201,75,103,1) 40deg,
        rgba(201,75,103,.40) 52deg,
        rgba(201,75,103,0) 65deg,
        rgba(201,75,103,0) 360deg
      );
      -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
      -webkit-mask-composite:xor;
      mask-composite:exclude;
      padding:1px;
      opacity:calc(.24 + (var(--icon-proximity) * .76));
      filter:drop-shadow(0 0 calc(1px + (var(--icon-proximity) * 2px)) rgba(201,75,103,.34));
      transition:opacity 180ms ease-out,filter 220ms ease-out;
    }
    .product h3{margin-bottom:8px;position:relative}
    .product h3::after{
      content:"";position:absolute;left:0;bottom:-5px;width:28px;height:1px;border-radius:999px;
      background:linear-gradient(90deg,rgba(201,75,103,.10),rgba(201,75,103,.68),rgba(201,75,103,.10));
      opacity:0;transform:scaleX(.28);transform-origin:left center;
      transition:opacity 900ms cubic-bezier(.22,1,.36,1),transform 1050ms cubic-bezier(.22,1,.36,1);
    }

    .product.cursor-tracked h3::after{opacity:.48;transform:scaleX(1)}
    .product .purpose{color:var(--muted);font-size:14px;}
    .product ul{padding:0;margin:18px 0 0;list-style:none;border-top:1px solid var(--line);padding-top:16px}
    .product li{font-size:13px;color:var(--muted);margin:8px 0;padding-left:18px;position:relative}
    .product li:before{content:"";position:absolute;left:0;top:.65em;width:6px;height:6px;border-radius:50%;background:var(--rose)}

    .adv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:32px}
    .adv{
      background:var(--dark-card);border:1px solid var(--dark-line);border-radius:18px;padding:24px;
      transition:
        border-color 1250ms cubic-bezier(.22,1,.36,1),
        box-shadow 1350ms cubic-bezier(.22,1,.36,1),
        background-color 1350ms cubic-bezier(.22,1,.36,1);
    }
    /* Advantage: still quieter than CuratedAI, but now visibly perceptible as an assurance pulse. */
    .adv.assurance-active{
      border-color:rgba(201,75,103,.50);
      background-color:#112047;
      box-shadow:
        inset 0 0 0 1px rgba(201,75,103,.085),
        inset 0 0 20px rgba(201,75,103,.024),
        0 0 14px rgba(201,75,103,.055);
    }
    .adv-icon{font-size:28px;margin-bottom:14px}.adv h3{font-size:17px}.adv p{font-size:13px;margin-bottom:0}
    .principles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:18px;border:1px solid var(--dark-line);border-radius:16px;overflow:hidden}
    .principle{padding:17px 20px;text-align:center;color:var(--dark-heading);font-weight:600;font-size:13px;background:#0d1b42}
    .principle+ .principle{border-left:1px solid var(--dark-line)}

    footer{background:#08122f;color:var(--dark-muted);padding:44px 0 28px;border-top:1px solid var(--dark-line)}
    .footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:34px}
    footer h4{color:#fff;margin:0 0 12px;font-size:13px}
    footer a,footer p{font-size:12px;color:var(--dark-muted);margin:6px 0;display:block}
    .legal{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.08);padding-top:20px;margin-top:32px;font-size:11px}

    .modal{position:fixed;inset:0;background:rgba(3,8,25,.72);display:none;align-items:center;justify-content:center;padding:28px;z-index:100}
    .modal.open{display:flex}.modal-card{width:min(760px,100%);background:var(--navy);border:1px solid var(--dark-line);border-radius:24px;padding:28px;color:white;box-shadow:0 28px 80px rgba(0,0,0,.28)}
    .modal-top{display:flex;justify-content:space-between;gap:20px;align-items:center}.close{background:transparent;border:1px solid var(--dark-line);color:white;border-radius:10px;padding:7px 10px;cursor:pointer}.video-placeholder{height:380px;border-radius:18px;background:var(--dark-card);border:1px solid var(--dark-line);display:grid;place-items:center;margin-top:20px;color:var(--dark-muted);text-align:center;padding:20px}

    body.theme-dark{background:var(--navy);color:var(--dark-text)}
    body.theme-dark .nav-wrap{background:rgba(10,23,59,.9);border-color:var(--dark-line)}
    body.theme-dark .brand-name{color:#fff}.theme-dark .brand-sub,.theme-dark .nav-links{color:var(--dark-muted)}
    body.theme-dark .theme-btn{background:var(--dark-card);border-color:var(--dark-line);color:white}
    body.theme-dark section:not(.dark-section){background:var(--navy)}
    body.theme-dark h1,body.theme-dark section:not(.dark-section) h2,body.theme-dark section:not(.dark-section) h3,body.theme-dark .belief,body.theme-dark .hero-copy strong{color:var(--dark-heading)}
    body.theme-dark .lead,body.theme-dark .hero-copy p,body.theme-dark .section-head p,body.theme-dark .product .purpose,body.theme-dark .product li,body.theme-dark .case .teaser,body.theme-dark .case .full{color:var(--dark-muted)}
    body.theme-dark details.case,body.theme-dark .product,body.theme-dark .pill,body.theme-dark .btn-secondary{background:var(--dark-card);border-color:var(--dark-line);color:var(--dark-text)}
    body.theme-dark .case-viz,body.theme-dark .product-icon{background:var(--dark-surface)}
    body.theme-dark details.case .full,body.theme-dark .product ul{border-color:var(--dark-line)}

    @media(max-width:980px){
      .nav-links{display:none}.hero-grid,.architecture{grid-template-columns:1fr}.research-visual{min-height:430px}.cases-grid,.products{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.section-head{align-items:start;flex-direction:column}.hero{padding-top:44px}
    }
    @media(max-width:640px){
      .container{width:min(var(--max),calc(100% - 28px))}.cta{font-size:65%}.cta1{font-size:100%}section{padding:68px 0}.cases-grid,.products,.adv-grid,.principles{grid-template-columns:1fr}.steps{grid-template-columns:1fr}.principle+.principle{border-left:0;border-top:1px solid var(--dark-line)}details.case[open]{grid-column:span 1}.footer-grid{grid-template-columns:1fr}.legal{flex-direction:column}.research-visual{min-height:390px}
    }
    @media(prefers-reduced-motion:reduce){
      .scroll-progress-bar{transition:none}
      .cta::after,.theme-btn::after,.btn-secondary::after,.play::after,.close::after{animation:none!important;opacity:0!important}
    }
	#videoBtn, #videoBtn2{display:none;}	
	
#themeBtn{
	display:none;
}
.hero-copy h1{
	font-size: clamp(32px, 5vw, 34px);
	margin-bottom:16px;
}

 .mini-bars{width:76%;height:42px;display:flex;gap:7px;align-items:end}
.case-play{width:42px;height:42px;border-radius:50%;background:var(--rose);color:#fff;display:grid;place-items:center;font-size:15px;box-shadow:0 8px 20px rgba(201,75,103,.22)}

/* Modal Container - Hidden by default */
#trialDemoModal {
  display: none;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  background: rgba(0, 0, 0, 0.65) !important;
  z-index: 99999 !important;
  align-items: center;
  justify-content: center;
  padding: 20px;
  box-sizing: border-box;
  font-family: inherit;
}

/* Shown state */
#trialDemoModal.show-modal {
  display: flex !important;
}

/* Modal Window */
#trialDemoModal .modal-dialog {
  position: relative;
  width: 100%;
  max-width: 520px;
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.25);
  overflow: hidden;
  box-sizing: border-box;
  animation: modalPop 0.25s ease-out;
}

@keyframes modalPop {
  from { opacity: 0; transform: scale(0.95); }
  to { opacity: 1; transform: scale(1); }
}

/* Header */
#trialDemoModal .modal-header {
  position: relative;
  background-color: #f8f9fa;
  padding: 1.25rem 1.5rem;
  border-bottom: 1px solid #e9ecef;
}

#trialDemoModal .modal-title {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.45;
  color: #212529;
  padding-right: 25px;
}

#trialDemoModal .modal-title small {
  display: block;
  font-size: 0.8rem;
  font-weight: 400;
  color: #6c757d;
  margin-top: 6px;
}

/* Close Button (X) */
#trialDemoModal .btn-close {
  position: absolute;
  top: 1rem;
  right: 1.25rem;
  background: transparent;
  border: none;
  font-size: 1.25rem;
  line-height: 1;
  color: #6c757d;
  cursor: pointer;
  padding: 4px;
}

#trialDemoModal .btn-close::after {
  content: '✕';
}

/* Body & Inputs */
#trialDemoModal .modal-body {
  padding: 1.5rem;
  background: #ffffff;
  box-sizing: border-box;
}

#trialDemoModal .mb-3 { margin-bottom: 1rem; }
#trialDemoModal .mb-4 { margin-bottom: 1.5rem; }

#trialDemoModal .form-label {
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
  color: #333;
  margin-bottom: 0.4rem;
  text-align: left;
}

#trialDemoModal .form-control {
  display: block;
  width: 100%;
  padding: 0.65rem 0.85rem;
  font-size: 0.9rem;
  color: #212529;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 6px;
  box-sizing: border-box;
  outline: none;
}

#trialDemoModal .form-control:focus {
  border-color: #a32a43;
  box-shadow: 0 0 0 3px rgba(163, 42, 67, 0.15);
}

#trialDemoModal #demoSuccessAlert.d-none {
  display: none !important;
}

/* Submit Button */
#trialDemoModal .d-grid {
  display: grid;
  width: 100%;
}

#trialDemoModal .btn-primary {
  display: block;
  width: 100%;
  padding: 0.75rem;
  background-color: #a32a43;
  color: #ffffff;
  border: none;
  border-radius: 6px;
  font-size: 0.95rem;
  font-weight: 600;
  cursor: pointer;
}

#trialDemoModal .btn-primary:hover {
  background-color: #852236;
}

.text-danger{
	color: var(--rose);
}
/* Container Card */
#trialDemoModal .trial-success-card {
  text-align: center;
  padding: 1.5rem 1rem 0.5rem;
  animation: fadeInPop 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes fadeInPop {
  from { opacity: 0; transform: scale(0.92); }
  to { opacity: 1; transform: scale(1); }
}

/* Icon Wrap & SVG Drawing Animation */
#trialDemoModal .success-icon-wrap {
  width: 60px;
  height: 60px;
  margin: 0 auto 1.25rem;
}

#trialDemoModal .success-check-icon {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: block;
  stroke-width: 2.5;
  stroke: #10b981;
  stroke-miterlimit: 10;
}

#trialDemoModal .success-circle {
  stroke-dasharray: 166;
  stroke-dashoffset: 166;
  stroke-width: 2.5;
  stroke: #10b981;
  fill: #ecfdf5;
  animation: strokeCircle 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards;
}

#trialDemoModal .success-check {
  transform-origin: 50% 50%;
  stroke-dasharray: 48;
  stroke-dashoffset: 48;
  animation: strokeCheck 0.35s cubic-bezier(0.65, 0, 0.45, 1) 0.45s forwards;
}

@keyframes strokeCircle {
  100% { stroke-dashoffset: 0; }
}

@keyframes strokeCheck {
  100% { stroke-dashoffset: 0; }
}

/* Typography */
#trialDemoModal .success-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #111827;
  margin: 0 0 0.4rem;
}

#trialDemoModal .success-subtitle {
  font-size: 0.9rem;
  color: #6b7280;
  margin: 0 0 1.25rem;
}

/* Soft Info Box */
#trialDemoModal .success-note {
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 0.85rem 1rem;
  font-size: 0.825rem;
  color: #4b5563;
  line-height: 1.45;
  text-align: left;
}

#trialDemoModal .note-badge {
  display: inline-block;
  background: #e0e7ff;
  color: #3730a3;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  padding: 2px 7px;
  border-radius: 4px;
  margin-right: 6px;
  vertical-align: middle;
}