:root{
    --ink:#15161B;
    --ink-soft:#4B4D57;
    --paper:#FFFFFF;
    --paper-alt:#F4F5F7;
    --line:#E4E5E9;
    --crimson:#E31C5F;
    --orange:#F2761D;
    --gold:#FFC20E;
    --sky:#3FADE0;
    --sky-deep:#5CBBE6;
    --teal:#12A594;
    --olive:#9CB833;
    --navy:#0D3B6B;
    --navy-ink:#082A4D;
    --mu-blue:#235C8E;
    --cmyk-c:#00AEEF;
    --cmyk-m:#EC008C;
    --cmyk-y:#FFE900;
    --cmyk-k:#101010;
    --radius:14px;
    --maxw:1180px;
    --font-display:'Inter',sans-serif;
    --font-body:'Inter',sans-serif;
    --font-mono:'IBM Plex Mono',monospace;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    background:var(--paper);
    color:var(--ink);
    font-family:var(--font-body);
    -webkit-font-smoothing:antialiased;
    font-size:16px;
    line-height:1.55;
    overflow-x:hidden;
  }
  h1,h2,h3,h4{
    font-family:var(--font-display);
    font-weight:700;
    color:var(--ink);
    margin:0;
    letter-spacing:-0.01em;
  }
  .mono{
    font-family:var(--font-mono);
    letter-spacing:0.02em;
  }
  a{color:inherit;text-decoration:none;}
  img{max-width:100%;display:block;}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
  @media(max-width:480px){.wrap{padding:0 18px;}}
  ::selection{background:var(--gold);color:var(--ink);}
  :focus-visible{outline:2px solid var(--navy);outline-offset:3px;}

  /* ---------- Bars motif ---------- */
  .bars{display:inline-flex;align-items:flex-end;gap:4px;height:34px;}
  .bars i{
    display:block;width:5px;border-radius:3px;
    animation:barpulse 2.6s ease-in-out infinite;
  }
  .bars i:nth-child(1){background:var(--crimson);height:60%;animation-delay:.0s;}
  .bars i:nth-child(2){background:var(--orange);height:38%;animation-delay:.15s;}
  .bars i:nth-child(3){background:var(--gold);height:100%;animation-delay:.3s;}
  .bars i:nth-child(4){background:var(--sky);height:78%;animation-delay:.45s;}
  .bars i:nth-child(5){background:var(--teal);height:55%;animation-delay:.6s;}
  .bars i:nth-child(6){background:var(--olive);height:34%;animation-delay:.75s;}
  @keyframes barpulse{
    0%,100%{transform:scaleY(1);}
    50%{transform:scaleY(0.62);}
  }
  @media (prefers-reduced-motion:reduce){
    .bars i{animation:none;}
  }

  /* ---------- Header ---------- */
  header{
    position:sticky;top:0;z-index:100;
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  header::after{
    content:"";position:absolute;left:0;right:0;bottom:0;height:3px;
    background:linear-gradient(90deg,var(--crimson),var(--orange),var(--gold),var(--teal),var(--sky),var(--olive));
  }
  .nav{position:relative;display:flex;align-items:center;justify-content:space-between;padding:14px 28px;gap:10px;max-width:1440px;}
  .brand{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-weight:700;font-size:17px;min-width:0;flex:none;overflow:visible;}
  .brand-icon{height:44px;width:auto;flex:none;}
  .brand-word{height:30px;width:auto;flex:none;}
  .brand-accent{
    display:none;flex:none;width:5px;height:38px;border-radius:3px;margin:0 6px;
    background:linear-gradient(180deg,var(--crimson),var(--orange),var(--gold),var(--teal),var(--sky),var(--olive));
    transform:rotate(16deg);
  }
  @media(min-width:900px){.brand-accent{display:block;}}
  @media(max-width:480px){
    .brand{gap:8px;}
    .brand-icon{height:34px;}
    .brand-word{height:22px;}
  }
  @media(max-width:360px){
    .brand-word{display:none;}
  }
  /* Colourful pill-style nav links, one brand colour per item — matches mockup exactly */
  nav.links{display:none;gap:10px;font-size:15px;font-weight:600;letter-spacing:0;align-items:center;font-family:'Poppins',var(--font-display);}
  nav.links a{
    padding:10px 22px;border-radius:999px;color:var(--ink);white-space:nowrap;
    transition:transform .15s ease, box-shadow .15s ease, filter .15s ease;
  }
  nav.links a:hover{transform:translateY(-2px);box-shadow:0 8px 16px -8px rgba(21,22,27,.4);filter:brightness(1.04);}
  nav.links a:nth-child(1){background:var(--sky);}
  nav.links a:nth-child(2){background:var(--crimson);}
  nav.links a:nth-child(3){background:var(--orange);}
  nav.links a:nth-child(4){background:var(--gold);}
  nav.links a:nth-child(5){background:var(--teal);}
  nav.links a:nth-child(6){background:var(--olive);}
  @media(min-width:900px){nav.links{display:flex;}}
  @media(max-width:1180px){nav.links{gap:6px;font-size:13px;}nav.links a{padding:8px 15px;}}
  .nav-cta{display:flex;align-items:center;gap:8px;flex:none;}
  .nav-toggle{
    display:flex;align-items:center;justify-content:center;
    width:40px;height:40px;border-radius:10px;border:1px solid var(--line);
    background:transparent;flex:none;cursor:pointer;
  }
  .nav-toggle svg{width:20px;height:20px;stroke:var(--ink);fill:none;stroke-width:2;stroke-linecap:round;}
  @media(min-width:900px){.nav-toggle{display:none;}}
  .nav-mobile{
    display:none;flex-direction:column;gap:2px;padding:10px 28px 18px;
    border-top:1px solid var(--line);background:var(--paper);
  }
  .nav-mobile.open{display:flex;}
  @media(min-width:900px){.nav-mobile{display:none !important;}}
  .nav-mobile a{
    padding:12px 6px;font-size:15px;font-weight:700;color:var(--ink);
    border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:0.03em;
  }
  .nav-mobile a:last-child{border-bottom:none;}
  .btn{
    display:inline-flex;align-items:center;gap:8px;
    padding:11px 20px;border-radius:999px;
    font-weight:600;font-size:14.5px;
    border:1px solid transparent;cursor:pointer;
    transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
    white-space:nowrap;
  }
  .btn:hover{transform:translateY(-1px);}
  .btn-primary{background:var(--navy);color:var(--gold);}
  .btn-primary:hover{background:var(--navy-ink);box-shadow:0 8px 20px rgba(46,42,125,.25);}
  .btn-ghost{background:#fff;color:var(--navy);border-color:#cfd3da;}
  .btn-ghost:hover{border-color:var(--navy);background:#f4f7fb;}
  .btn-wa{background:#1FAA59;color:#fff;}
  .btn-wa:hover{background:#178a48;box-shadow:0 8px 20px rgba(31,170,89,.25);}
  .btn-ig{
    background:radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
    color:#fff;
  }
  .btn-ig:hover{box-shadow:0 8px 20px rgba(214,36,159,.35);}
  .icon-btn{
    display:inline-flex;align-items:center;justify-content:center;
    width:40px;height:40px;border-radius:50%;flex:none;
  }
  .btn-sm{padding:9px 16px;font-size:13.5px;}
  @media(min-width:900px) and (max-width:1180px){
    .nav-cta .btn-wa span.btn-label{display:none;}
    .brand-word{max-width:150px;}
  }
  @media(max-width:400px){
    .nav{padding:12px 16px;}
    .btn-sm{padding:8px 12px;font-size:13px;}
    .nav-cta .btn-wa span.btn-label{display:none;}
  }
  @media(max-width:320px){
    .nav-cta .btn-primary.btn-sm{padding:8px 12px;font-size:12px;}
  }

  /* ---------- Hero: single full-bleed photo with a built-in white-to-photo
     fade on the left; text sits on top of the faded portion (matches mockup) ---------- */
  .hero{
    position:relative;overflow:hidden;
    background:#fff;
  }
  .hero-top{position:relative;min-height:660px;}
  .hero-photo{position:absolute;inset:0;z-index:0;overflow:hidden;background:#fff;}
  .hero-photo img{width:100%;height:100%;object-fit:cover;object-position:left center;display:block;}
  /* Reinforces the image's own baked-in fade so hero text stays readable at any
     screen width, since a fixed-width photo can't scale its fade perfectly on its own. */
  .hero-photo::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(90deg,#fff 0%,#fff 16%,rgba(255,255,255,.75) 26%,rgba(255,255,255,0) 40%);
    pointer-events:none;
  }
  @media(max-width:900px){.hero-photo::after{display:none;}}
  .hero-left{
    position:relative;z-index:1;max-width:640px;
    padding:64px clamp(24px,4vw,56px);
    display:flex;flex-direction:column;justify-content:center;
    min-height:660px;
  }
  @media(max-width:900px){
    .hero-top{min-height:auto;display:flex;flex-direction:column;}
    .hero-photo{position:relative;inset:auto;height:230px;order:-1;}
    .hero-left{max-width:none;padding:32px 20px 40px;min-height:auto;background:#fff;}
  }
  .hero-video-wrap{margin-top:22px;max-width:480px;}
  .hero-video{position:relative;width:100%;padding-top:56.25%;border-radius:14px;overflow:hidden;background:var(--ink);box-shadow:0 30px 60px -24px rgba(21,22,27,.18);border:1px solid var(--line);}
  .hero-video iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0;}

      .eyebrow{
    position:relative;
    display:inline-flex;align-items:center;gap:10px;
    font-family:'IBM Plex Mono',monospace;font-size:13px;font-weight:700;
    background-image:linear-gradient(#fff,#fff),
      linear-gradient(92deg,var(--cmyk-c),var(--cmyk-m) 25%,var(--cmyk-y) 50%,var(--cmyk-k) 75%,var(--cmyk-c) 100%);
    background-size:100% 100%, 300% 100%;
    background-origin:border-box;
    background-clip:padding-box, border-box;
    border:1.5px solid transparent;
    padding:8px 16px;border-radius:999px;margin-bottom:22px;
    letter-spacing:.05em;text-transform:uppercase;
    box-shadow:0 8px 22px rgba(46,42,125,.16);
    animation:eyebrowShimmer 6s linear infinite;
    max-width:100%;
  }
  .eyebrow span.label{
    background:linear-gradient(92deg,var(--cmyk-c),var(--cmyk-m) 25%,var(--cmyk-y) 50%,var(--cmyk-k) 75%,var(--cmyk-c) 100%);
    background-size:300% 100%;
    -webkit-background-clip:text;background-clip:text;color:transparent;
    animation:eyebrowLabelShift 6s linear infinite;
  }
  @keyframes eyebrowShimmer{0%{background-position:0 0, 0% 0;}100%{background-position:0 0, 300% 0;}}
  @keyframes eyebrowLabelShift{0%{background-position:0% 0;}100%{background-position:300% 0;}}
  .eyebrow .dots{display:inline-flex;gap:4px;}
  .eyebrow .dots i{width:6px;height:6px;border-radius:50%;display:block;animation:eyebrowPulse 1.4s ease-in-out infinite;}
  .eyebrow .dots i:nth-child(1){background:var(--cmyk-c);animation-delay:0s;}
  .eyebrow .dots i:nth-child(2){background:var(--cmyk-m);animation-delay:.18s;}
  .eyebrow .dots i:nth-child(3){background:var(--cmyk-y);animation-delay:.36s;}
  @keyframes eyebrowPulse{0%,100%{transform:scale(1);opacity:.5;}50%{transform:scale(1.55);opacity:1;}}
  @media (prefers-reduced-motion:reduce){.eyebrow .dots i, .eyebrow, .eyebrow span.label{animation:none;}}
  @media(max-width:420px){
    .eyebrow{font-size:11px;padding:7px 12px;gap:7px;white-space:normal;}
  }
  .hero-badge{max-width:340px;width:100%;height:auto;margin-bottom:22px;display:block;}

  .hero h1{
    font-size:clamp(28px,4.6vw,50px);
    line-height:1.12;font-weight:700;
    margin-bottom:22px;
    overflow-wrap:break-word;
    white-space:normal;
  }
  .hero h1 .accent{white-space:nowrap;}
  .hero h1 .accent{
    background:linear-gradient(92deg,var(--crimson),var(--orange) 30%,var(--gold) 55%,var(--sky) 75%,var(--teal));
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .hero p.lede{
    font-size:18px;color:var(--ink-soft);max-width:52ch;margin-bottom:30px;
  }
  .hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:32px;}
  .hero-ctas .btn{flex:0 0 auto;}
  .hero-features{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px;margin:8px 0 30px;max-width:480px;}
  .hero-features .f{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;}
  .hero-features .f img{width:100%;max-width:230px;height:auto;flex:none;}
  .hero-features .f span{font-family:var(--font-display);font-size:18px;font-weight:700;letter-spacing:-0.01em;color:var(--ink);white-space:normal;line-height:1.25;}
  .hero-features .f:nth-child(1) span{color:var(--teal);}
  .hero-features .f:nth-child(2) span{color:var(--olive);}
  .hero-features .f:nth-child(3) span{color:color-mix(in srgb, var(--gold) 75%, black);}
  .hero-features .f:nth-child(4) span{color:var(--crimson);}
  @media(max-width:900px){.hero-features{gap:20px 22px;max-width:420px;}.hero-features .f span{font-size:16px;}}
  @media(max-width:480px){.hero-features{grid-template-columns:1fr 1fr;gap:16px 14px;max-width:100%;}
    .hero-features .f span{font-size:14px;}
  }

    .stats-band{width:100%;overflow:hidden;}
  .hero-stats-scroll{
    overflow:hidden;position:relative;border-radius:0;
    padding:26px 0;
    background:linear-gradient(120deg,#dceefb 0%,#eef7fd 45%,#e3f2fc 100%);
    box-shadow:0 20px 40px -22px rgba(21,22,27,.25);
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent);
    mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent);
  }
  .hero-stats-track{display:flex;gap:16px;width:max-content;animation:statsScroll 18s linear infinite;padding:0 16px;}
  .hero-stats-track:hover{animation-play-state:paused;}
  @keyframes statsScroll{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
  @media (prefers-reduced-motion:reduce){.hero-stats-track{animation:none;}}
  .hero-stats .stat{
    flex:none;width:240px;
    display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;
    padding:30px 16px;color:#fff;border-radius:14px;
    box-shadow:0 10px 22px -14px rgba(21,22,27,.4);
    transition:transform .22s ease, box-shadow .22s ease;
    cursor:default;
  }
  .hero-stats .stat:hover{transform:translateY(-6px) scale(1.05);box-shadow:0 18px 30px -14px rgba(21,22,27,.45);}
  .hero-stats .stat:nth-child(5n+1){background:var(--crimson);}
  .hero-stats .stat:nth-child(5n+2){background:var(--orange);}
  .hero-stats .stat:nth-child(5n+3){background:var(--gold);}
  .hero-stats .stat:nth-child(5n+4){background:var(--sky);}
  .hero-stats .stat:nth-child(5n+5){background:var(--teal);}
  .hero-stats .icon-badge{
    width:96px;height:96px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;
    box-shadow:0 6px 14px -6px rgba(21,22,27,.35);margin-bottom:2px;
  }
  .hero-stats .icon-badge img{width:66px;height:66px;object-fit:contain;display:block;}
  .hero-stats .stat:nth-child(5n+1) .icon-badge{box-shadow:0 0 0 4px color-mix(in srgb, var(--crimson) 55%, white), 0 6px 14px -6px rgba(21,22,27,.35);}
  .hero-stats .stat:nth-child(5n+2) .icon-badge{box-shadow:0 0 0 4px color-mix(in srgb, var(--orange) 55%, white), 0 6px 14px -6px rgba(21,22,27,.35);}
  .hero-stats .stat:nth-child(5n+3) .icon-badge{box-shadow:0 0 0 4px color-mix(in srgb, var(--gold) 55%, white), 0 6px 14px -6px rgba(21,22,27,.35);}
  .hero-stats .stat:nth-child(5n+4) .icon-badge{box-shadow:0 0 0 4px color-mix(in srgb, var(--sky) 55%, white), 0 6px 14px -6px rgba(21,22,27,.35);}
  .hero-stats .stat:nth-child(5n+5) .icon-badge{box-shadow:0 0 0 4px color-mix(in srgb, var(--teal) 55%, white), 0 6px 14px -6px rgba(21,22,27,.35);}
  .hero-stats .num{
    font-family:var(--font-display);font-size:36px;font-weight:800;line-height:1.1;color:#fff;
  }
  .hero-stats .lbl{font-size:15px;color:#fff;font-weight:700;letter-spacing:.03em;text-transform:uppercase;}


  .hero-visual{
    position:relative;background:var(--ink);border-radius:22px;
    padding:16px;overflow:hidden;
    box-shadow:0 30px 60px -20px rgba(63,173,224,.35);
    margin:26px 0 30px;
  }
  @media(max-width:480px){.hero-visual{padding:10px;margin:20px 0 24px;}}
  .hero-visual::before{
    content:"";position:absolute;inset:0;
    background:
      linear-gradient(180deg, rgba(255,255,255,.04), transparent 40%);
    pointer-events:none;
  }
  .video-embed{
    position:relative;width:100%;padding-top:56.25%;border-radius:14px;overflow:hidden;
  }
  .video-embed iframe{
    position:absolute;top:0;left:0;width:100%;height:100%;border:0;
  }

  /* ---------- Section shell ---------- */
  section{padding:76px 0;}
  @media(max-width:640px){section{padding:48px 0;}}
  .section-alt{background:var(--paper-alt);}
  .kicker{
    font-family:'IBM Plex Mono',monospace;font-size:12.5px;
    color:var(--navy);text-transform:uppercase;letter-spacing:.08em;
    margin-bottom:12px;display:block;
  }
  .section-head{max-width:640px;margin-bottom:44px;}
  .section-head h2{font-size:clamp(24px,3.6vw,38px);margin-bottom:14px;overflow-wrap:break-word;}
  .section-head p{color:var(--ink-soft);font-size:16.5px;}

  /* ---------- About / strip ---------- */
  .about-grid{display:grid;grid-template-columns:1fr;gap:40px;}
  @media(min-width:900px){.about-grid{grid-template-columns:1fr 1fr;gap:60px;}}
  .about-grid p{color:var(--ink-soft);font-size:16.5px;margin-bottom:16px;}
  .about-list{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:14px;}
  .about-list li{display:flex;gap:12px;align-items:flex-start;font-size:15px;color:var(--ink);}
  .about-list i.tick{
    flex:none;width:20px;height:20px;border-radius:6px;background:var(--teal);
    display:flex;align-items:center;justify-content:center;margin-top:1px;
  }
  .about-list i.tick svg{width:12px;height:12px;}

  /* ---------- Manufacturing Units + About Us (matches mockup page 2) ---------- */
  .mu-section{
    position:relative;overflow:hidden;padding:60px 0 68px;
    background:linear-gradient(180deg,#eaf6fd 0%,#d9eefb 45%,#eaf6fd 100%);
  }
  .mu-rainbow-bar{
    position:absolute;left:0;right:0;height:8px;
    background:linear-gradient(90deg,var(--crimson),var(--orange),var(--gold),var(--sky),var(--teal),var(--olive));
  }
  .mu-rainbow-bar.top{top:0;}
  .mu-rainbow-bar.bottom{bottom:0;}
  .mu-heading{
    text-align:center;font-family:'Baloo 2',var(--font-display);font-weight:600;
    font-size:clamp(28px,4.2vw,46px);color:var(--mu-blue);margin-bottom:30px;letter-spacing:.01em;
  }
  .mu-video-card{
    max-width:820px;margin:0 auto 40px;background:#fff;border-radius:26px;padding:16px;
    box-shadow:0 25px 55px -22px rgba(35,92,142,.45);
  }
  .mu-video{position:relative;width:100%;padding-top:56.25%;border-radius:16px;overflow:hidden;background:#0c1b2a;}
  .mu-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
  .mu-about-card{
    max-width:1000px;margin:0 auto;background:#fff;border-radius:26px;padding:40px 46px;
    text-align:center;box-shadow:0 25px 55px -22px rgba(35,92,142,.35);
  }
  .mu-about-card h3{
    font-family:'Baloo 2',var(--font-display);font-weight:700;font-size:24px;
    letter-spacing:.02em;color:var(--navy);margin-bottom:16px;
  }
  .mu-about-card p{color:var(--ink-soft);font-size:16px;line-height:1.75;max-width:900px;margin:0 auto 22px;}
  .mu-tagline{
    font-family:'Baloo 2',var(--font-display);font-weight:700;font-size:14.5px;
    letter-spacing:.04em;color:var(--navy);text-transform:uppercase;margin:0 !important;
  }
  @media(max-width:640px){
    .mu-section{padding:44px 0 50px;}
    .mu-about-card{padding:30px 24px;}
    .mu-video-card{padding:10px;border-radius:20px;}
  }

  /* ---------- Product cards ---------- */
  .cat-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:34px;}
  .cat-tab{
    font-family:'IBM Plex Mono',monospace;font-size:13px;
    padding:8px 15px;border-radius:999px;border:1px solid var(--line);
    color:var(--ink-soft);
  }
  .product-group{margin-bottom:56px;}
  .product-group:last-child{margin-bottom:0;}
  .group-head{display:flex;align-items:baseline;gap:14px;margin-bottom:22px;flex-wrap:wrap;}
  .group-head h3{font-size:24px;font-weight:700;}
  .group-head .count{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--ink-soft);}
  .product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
  @media(max-width:380px){.product-grid{grid-template-columns:1fr;}}
  @media(min-width:640px){.product-grid{grid-template-columns:repeat(3,1fr);}}
  @media(min-width:980px){.product-grid{grid-template-columns:repeat(4,1fr);}}
  .p-card{
    background:var(--paper);border:1px solid var(--sky-deep);border-radius:var(--radius);
    overflow:hidden;transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  }
  /* Deep sky-blue glow border on every single card */
  .p-card{box-shadow:0 0 0 1px rgba(92,187,230,.6), 0 0 28px 5px rgba(92,187,230,.5);}
  .p-card:hover{transform:translateY(-4px);box-shadow:0 0 0 1px rgba(92,187,230,.8), 0 0 40px 8px rgba(92,187,230,.7);border-color:var(--sky-deep);}
  .p-photo{
    aspect-ratio:4/3;background:var(--paper-alt);border-bottom:1px solid var(--line);
    display:block;overflow:hidden;
  }
  .p-photo img{width:100%;height:100%;object-fit:cover;display:block;}
  /* Binding Services images show the full image (no cropping) instead of covering the box */
  #grid-binding .p-photo img{object-fit:contain;padding:10px;background:#fff;}
  .p-card .p-body{padding:16px 18px 18px;}
  .p-card h4{font-size:19px;font-weight:700;margin-bottom:5px;font-family:var(--font-display);}
  .p-card p{font-size:15px;color:var(--ink-soft);margin:0;}

    .p-photo-link{position:relative;display:block;cursor:pointer;}
  .p-photo-link::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(180deg, transparent 55%, rgba(21,22,27,.55) 100%);
    opacity:0;transition:opacity .18s ease;
  }
  .p-photo-link:hover::after,.p-photo-link:focus-visible::after{opacity:1;}
  .p-photo-cta{
    position:absolute;right:9px;bottom:9px;z-index:2;
    display:inline-flex;align-items:center;gap:5px;
    background:rgba(21,22,27,.85);color:#fff;
    font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.02em;
    padding:6px 11px;border-radius:999px;
    box-shadow:0 6px 14px rgba(0,0,0,.25);
    transition:background .18s ease, transform .18s ease;
  }
  .p-photo-cta svg{width:12px;height:12px;flex:none;}
  .p-photo-link:hover .p-photo-cta,.p-photo-link:focus-visible .p-photo-cta{background:var(--navy);transform:translateY(-2px);}

  /* ---------- Machinery ---------- */
  .machine-grid{display:grid;grid-template-columns:1fr;gap:22px;}
  @media(min-width:640px){.machine-grid{grid-template-columns:1fr 1fr;}}
  @media(min-width:980px){.machine-grid{grid-template-columns:repeat(3,1fr);}}
  .m-card{
    background:var(--paper);border:1px solid var(--sky-deep);border-radius:var(--radius);
    overflow:hidden;transition:box-shadow .18s ease, border-color .18s ease;
  }
  .m-card{box-shadow:0 0 0 1px rgba(92,187,230,.55), 0 0 28px 5px rgba(92,187,230,.45);}
  .m-card:hover{box-shadow:0 0 0 1px rgba(92,187,230,.75), 0 0 40px 8px rgba(92,187,230,.65);border-color:var(--sky-deep);}
  .m-photo{
    aspect-ratio:4/3;background:#fff;display:flex;align-items:center;justify-content:center;
    padding:18px;border-bottom:1px solid var(--line);
  }
  .m-photo img{width:100%;height:100%;object-fit:contain;}
  .m-body{padding:18px 20px 22px;}
  .m-tag{font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--navy);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;display:block;}
  .m-body h4{font-size:16.5px;margin-bottom:6px;}
  .m-body p{font-size:13.5px;color:var(--ink-soft);margin:0;}

  /* ---------- Process ---------- */
  .process{display:grid;grid-template-columns:1fr;gap:0;counter-reset:step;}
  @media(min-width:820px){.process{grid-template-columns:repeat(5,1fr);}}
  .step{
    position:relative;padding:26px 18px 10px 0;border-top:2px solid var(--line);
  }
  .step .n{
    font-family:var(--font-display);font-weight:700;font-size:15px;
    color:var(--navy);margin-bottom:10px;display:block;
  }
  .step h4{font-size:15.5px;margin-bottom:6px;}
  .step p{font-size:13px;color:var(--ink-soft);margin:0;}

  /* ---------- Contact ---------- */
  .contact-grid{display:grid;grid-template-columns:1fr;gap:40px;}
  @media(min-width:980px){.contact-grid{grid-template-columns:.9fr 1.1fr;}}
  .info-card{
    background:var(--ink);color:#fff;border-radius:20px;padding:36px 30px;
  }
  @media(max-width:480px){.info-card{padding:28px 20px;}}
  .info-card h3{color:#fff;font-size:22px;margin-bottom:8px;}
  .info-card .sub{color:#B7B9C4;font-size:14.5px;margin-bottom:26px;}
  .info-row{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px;}
  .info-row .ic{
    flex:none;width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,.08);
    display:flex;align-items:center;justify-content:center;
  }
  .info-row .ic svg{width:17px;height:17px;stroke:#fff;fill:none;stroke-width:1.7;}
  .info-row .txt{font-size:14.5px;color:#E7E8EE;line-height:1.5;min-width:0;overflow-wrap:break-word;}
  .info-row .txt a{color:#fff;font-weight:600;}
  .info-row .txt .lbl{display:block;font-family:'IBM Plex Mono',monospace;font-size:11px;color:#8F92A3;text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px;}
  .info-card .gst{margin-top:26px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:#9A9DAD;}

  .form-card{
    background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:34px 30px;
  }
  @media(max-width:480px){.form-card{padding:24px 18px;}}
  .form-card h3{font-size:22px;margin-bottom:6px;}
  .form-card .sub{color:var(--ink-soft);font-size:14.5px;margin-bottom:24px;}
  .field{margin-bottom:16px;}
  .field label{display:block;font-size:13px;font-weight:600;margin-bottom:7px;}
  .field input,.field select,.field textarea{
    width:100%;padding:12px 14px;border-radius:10px;border:1px solid var(--line);
    font-family:'Inter',sans-serif;font-size:14.5px;background:var(--paper-alt);color:var(--ink);
  }
  .field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--navy);background:#fff;}
  .field textarea{resize:vertical;min-height:90px;}
  .field-row{display:grid;grid-template-columns:1fr;gap:16px;}
  @media(min-width:560px){.field-row{grid-template-columns:1fr 1fr;}}
  .form-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px;}
  .form-hint{font-size:12.5px;color:var(--ink-soft);margin-top:14px;}
  .form-flash{
    display:none;margin-bottom:16px;padding:10px 14px;border-radius:10px;
    background:rgba(18,165,148,.1);border:1px solid rgba(18,165,148,.35);
    color:var(--teal);font-size:13.5px;font-weight:600;
  }
  .form-flash.show{display:block;}

  /* ---------- Footer ---------- */
  footer{border-top:1px solid var(--line);padding:34px 0;}
  .foot-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;}
  .foot-brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:600;font-size:14.5px;color:var(--ink-soft);}
  .foot-brand img{height:38px;width:auto;}
  .foot-links{display:flex;gap:20px;font-size:13.5px;color:var(--ink-soft);}
  .foot-social{display:flex;gap:14px;align-items:center;}
  .foot-social a{
    width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;
    border:1px solid var(--line);color:var(--ink-soft);transition:border-color .15s, color .15s;
  }
  .foot-social a:hover{border-color:var(--navy);color:var(--navy);}
  .foot-social svg{width:16px;height:16px;}

  /* ---------- WhatsApp / Instagram float ---------- */
  .float-stack{
    position:fixed;bottom:22px;right:22px;z-index:200;
    display:flex;flex-direction:column;gap:12px;align-items:flex-end;
  }
  .wa-float, .ig-float{
    width:58px;height:58px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    transition:transform .15s ease;
  }
  .wa-float{background:#1FAA59;box-shadow:0 12px 26px rgba(31,170,89,.4);}
  .ig-float{
    background:radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
    box-shadow:0 12px 26px rgba(214,36,159,.35);
  }
  @media(max-width:480px){
    .float-stack{bottom:16px;right:16px;gap:10px;}
    .wa-float, .ig-float{width:50px;height:50px;}
    .wa-float svg, .ig-float svg{width:24px;height:24px;}
  }
  .wa-float:hover, .ig-float:hover{transform:scale(1.06);}
  .wa-float svg{width:28px;height:28px;fill:#fff;}
  .ig-float svg{width:26px;height:26px;stroke:#fff;fill:none;}

  .js .reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease, transform .6s ease;}
  .js .reveal.in{opacity:1;transform:translateY(0);}

/* ===== Rebuild to match owner's mockup (Sep 2026) ===== */
/* Header */
.nav{padding:10px 28px;}
.brand{flex:0 1 auto;min-width:0;gap:10px;}
.brand-icon{height:52px;width:auto;}
.brand-text{display:flex;flex-direction:column;line-height:1.1;min-width:0;}
.brand-text b{font-family:'Questrial','Century Gothic',var(--font-display);font-weight:400;font-size:21px;letter-spacing:.02em;color:#2B2E3A;white-space:nowrap;}
.brand-text small{font-family:'Questrial','Century Gothic',sans-serif;font-size:10px;font-weight:400;color:var(--navy);letter-spacing:.04em;white-space:nowrap;margin-top:4px;}
.brand-text small strong{font-weight:700;}
.brand-accent{width:10px;height:54px;border-radius:2px;transform:skewX(-18deg);margin:0 14px 0 18px;}
nav.links{gap:14px;}
nav.links a{padding:9px 28px;font-weight:500;}
nav.links a:nth-child(1){background:var(--crimson);}
nav.links a:nth-child(2){background:var(--orange);}
nav.links a:nth-child(3){background:var(--gold);}
nav.links a:nth-child(4){background:var(--teal);}
nav.links a:nth-child(5){background:var(--olive);}
header::after{height:5px;}
@media(max-width:1180px){nav.links{gap:8px;}nav.links a{padding:8px 16px;}.brand-text b{font-size:17px;}.brand-text small{font-size:8.5px;}.brand-accent{margin:0 8px;}}
@media(min-width:900px) and (max-width:1040px){.brand-text small{display:none;}}
@media(max-width:480px){.brand-icon{height:40px;}.brand-text b{font-size:15px;}.brand-text small{font-size:7.5px;}}
@media(max-width:360px){.brand-text small{display:none;}}
.foot-brand img{height:38px;width:auto;}

/* Hero: full-bleed press photo, text on the white fade */
.hero{position:relative;padding:0;background:#fff;overflow:hidden;}
.hero-bg{position:absolute;inset:0;z-index:0;}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:right center;}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0%,#fff 18%,rgba(255,255,255,.85) 30%,rgba(255,255,255,0) 46%);}
.hero-inner{position:relative;z-index:1;max-width:1440px;margin:0 auto;min-height:clamp(560px,48vw,760px);display:flex;align-items:center;}
.hero-left{padding:48px clamp(20px,3.5vw,56px) 44px;max-width:640px;min-height:0;}
.hero h1{font-family:'Questrial','Century Gothic',sans-serif;font-weight:400;font-size:clamp(32px,4.4vw,58px);line-height:1.12;letter-spacing:0;color:#1B1C22;margin-bottom:14px;}
.hero h1 .accent{font-weight:400;white-space:nowrap;background:linear-gradient(90deg,#E31C5F 0%,#F2761D 22%,#F7B500 40%,#9CB833 58%,#3FADE0 76%,#12A594 100%);-webkit-background-clip:text;background-clip:text;color:transparent;}
.hero p.lede{font-family:'Questrial',sans-serif;font-size:clamp(14px,1.25vw,17px);color:#3A3C46;margin-bottom:26px;}
.hero-features{grid-template-columns:1fr 1fr;gap:18px 34px;max-width:520px;margin:0 0 30px;}
.hero-features .f{flex-direction:column;align-items:center;gap:6px;text-align:center;}
.hero-features .f img{width:100%;max-width:220px;height:auto;}
.hero-features .f span{font-family:'Questrial',sans-serif;font-weight:400;font-size:17px;}
.hero-features .f:nth-child(1) span{color:var(--teal);}
.hero-features .f:nth-child(2) span{color:#8CAA1E;}
.hero-features .f:nth-child(3) span{color:#E0A800;}
.hero-features .f:nth-child(4) span{color:var(--crimson);}
.hero-ctas{margin-bottom:0;gap:26px;}
.hero-ctas .btn{padding:12px 26px;font-size:15px;}
.hero .btn-primary{color:#fff;}
.btn-ghost{background:#fff;color:#C99400;border:2px solid #D8D8D8;}
.btn-ghost:hover{border-color:#E0A800;background:#fffaf0;}
@media(max-width:900px){
  .hero-inner{min-height:0;display:block;}
  .hero-bg{position:relative;height:auto;}
  .hero-bg img{height:auto;aspect-ratio:16/9;object-position:70% center;}
  .hero-bg::after{background:linear-gradient(180deg,rgba(255,255,255,0) 70%,#fff 100%);}
  .hero-left{padding:18px 20px 40px;max-width:none;}
  .hero-features{gap:14px 16px;max-width:none;}
  .hero-features .f span{font-size:14px;}
  .hero-ctas{gap:12px;}
}

/* Stats: owner's icons in white badges */
.hero-stats .icon-badge img{width:62px;height:62px;object-fit:contain;}
.hero-stats .stat:nth-child(5n+3) .num,.hero-stats .stat:nth-child(5n+3) .lbl{color:var(--ink);}

/* Product photos */
.p-photo img{transition:transform .4s ease;}
.p-card:hover .p-photo img{transform:scale(1.04);}
#grid-binding .p-photo{aspect-ratio:3/2;}
#grid-binding .p-photo img{padding:0;object-fit:cover;}

/* Machine cards without photos: icon tile */
.m-photo.m-icon{aspect-ratio:auto;height:140px;background:linear-gradient(135deg,#eaf6fd,#d9eefb);color:var(--navy);}
.m-card:nth-child(6n+1) .m-icon{color:var(--crimson);}
.m-card:nth-child(6n+2) .m-icon{color:var(--orange);}
.m-card:nth-child(6n+3) .m-icon{color:#D9A200;}
.m-card:nth-child(6n+4) .m-icon{color:#1F8FC4;}
.m-card:nth-child(6n+5) .m-icon{color:var(--teal);}
.m-card:nth-child(6n+6) .m-icon{color:#7FA021;}
.stats-band{padding:0;}
/* Hero: never crop the machine or the products in the photo */
@media(min-width:901px){
  .hero-inner{min-height:56.25vw;max-width:none;}
  .hero-left{margin-left:max(0px,calc((100vw - 1440px)/2));}
  .hero-bg img{object-fit:cover;object-position:right bottom;}
}
/* Floating buttons appear only after the hero, so they don't sit on the products */
.float-stack{transition:opacity .3s ease, transform .3s ease;}
.float-stack.hide{opacity:0;transform:translateY(20px);pointer-events:none;}
/* Product photos: show the whole image, never crop */
.p-photo{background:#EEF0F3;}
.p-photo img{object-fit:contain;}
#grid-binding .p-photo img{object-fit:contain;}
.p-card:hover .p-photo img{transform:scale(1.03);}
.group-head h3{letter-spacing:.02em;}
/* Machines: 8 photos, 4 per row on desktop */
@media(min-width:1100px){.machine-grid{grid-template-columns:repeat(4,1fr);}}
.m-photo{padding:14px;background:#fff;}
.m-photo img{object-fit:contain;}
.pstep-photo{background:#fff;}
.pstep-photo img{object-fit:contain;}
/* Hero content: hard left on the white area, and larger */
@media(min-width:901px){
  .hero-inner{display:flex;align-items:center;}
  .hero-left{margin-left:0;padding:clamp(28px,3vw,56px) 0 clamp(28px,3vw,56px) clamp(24px,3vw,56px);max-width:none;width:44vw;}
  .hero h1{font-size:clamp(36px,4.3vw,84px);margin-bottom:.35em;}
  .hero p.lede{font-size:clamp(15px,1.3vw,24px);margin-bottom:1.4em;}
  .hero-features{max-width:none;width:92%;gap:clamp(14px,1.6vw,30px) clamp(20px,2.4vw,44px);margin-bottom:clamp(20px,2.2vw,40px);}
  .hero-features .f img{max-width:none;width:100%;}
  .hero-features .f span{font-size:clamp(15px,1.25vw,24px);}
  .hero-ctas .btn{font-size:clamp(14px,1.05vw,19px);padding:.8em 1.8em;}
  .hero-bg::after{background:linear-gradient(90deg,#fff 0%,#fff 22%,rgba(255,255,255,.85) 34%,rgba(255,255,255,0) 48%);}
}
@media(min-width:901px){.nav{max-width:none;padding-left:clamp(24px,3vw,56px);padding-right:clamp(24px,3vw,56px);}}
/* Header layout per owner: logo (bigger) → rainbow stripe → menu buttons, all left; right side left empty */
@media(min-width:901px){
  .nav{justify-content:flex-start;gap:0;padding-top:12px;padding-bottom:12px;}
  .brand{gap:14px;}
  .brand-icon{height:clamp(54px,4.2vw,74px);}
  .brand-text b{font-size:clamp(20px,1.75vw,32px);}
  .brand-text small{font-size:clamp(9px,.72vw,13px);margin-top:5px;}
  .brand-accent{display:block;width:12px;height:clamp(52px,4vw,70px);margin:0 clamp(18px,1.6vw,30px);}
  nav.links{gap:clamp(8px,.8vw,14px);}
  nav.links a{width:clamp(96px,8.2vw,150px);padding:.6em 0;text-align:center;font-size:clamp(13px,1vw,18px);}
  .nav-cta{margin-left:auto;}
}
@media(min-width:900px) and (max-width:1180px){.brand-text small{display:block;}}
/* Six menu buttons incl. Home */
nav.links a:nth-child(1){background:var(--sky);}
nav.links a:nth-child(2){background:var(--crimson);}
nav.links a:nth-child(3){background:var(--orange);}
nav.links a:nth-child(4){background:var(--gold);}
nav.links a:nth-child(5){background:var(--teal);}
nav.links a:nth-child(6){background:var(--olive);}
/* Right side of header: WhatsApp + Email */
.nav-actions{display:none;}
@media(min-width:901px){
  .nav-actions{display:flex;gap:clamp(8px,.8vw,14px);margin-left:auto;align-items:center;}
  .nav-cta{margin-left:0;}
}
.hbtn{display:flex;align-items:center;gap:10px;padding:8px 16px 8px 12px;border-radius:14px;border:1.5px solid var(--line);background:#fff;transition:transform .15s ease, box-shadow .15s ease;white-space:nowrap;}
.hbtn:hover{transform:translateY(-2px);box-shadow:0 10px 20px -12px rgba(21,22,27,.35);}
.hbtn span{display:flex;flex-direction:column;line-height:1.15;}
.hbtn b{font-size:clamp(12px,.85vw,15px);font-weight:700;color:var(--ink);}
.hbtn small{font-size:clamp(10px,.68vw,12px);color:var(--ink-soft);}
.hbtn-wa{border-color:#25D366;}
.hbtn-wa svg{color:#25D366;flex:none;width:28px;height:28px;}
.hbtn-mail{border-color:#EA4335;}
.hbtn-mail svg{flex:none;width:28px;height:21px;}
@media(max-width:1500px){.hbtn small{display:none;}}
@media(max-width:1280px){.hbtn span{display:none;}.hbtn{padding:9px;border-radius:50%;}}
@media(min-width:901px) and (max-width:1100px){.brand-text small{display:none;}nav.links a{width:auto;padding:.55em 1em;}}
/* Header fit: logo never squeezed; buttons scale; labels only where there is room */
@media(min-width:901px){
  .brand{flex:none;}
  nav.links{flex:none;}
  nav.links a{width:clamp(72px,6.4vw,124px);font-size:clamp(12px,.92vw,17px);}
  .brand-text b{font-size:clamp(16px,1.6vw,30px);}
  .brand-icon{height:clamp(46px,3.9vw,72px);}
  .brand-accent{margin:0 clamp(12px,1.3vw,26px);}
}
.hbtn-mail small{display:none;}
@media(max-width:1700px){.hbtn span{display:none;}.hbtn{padding:9px;border-radius:50%;}}
@media(min-width:901px) and (max-width:1100px){nav.links{gap:5px;}nav.links a{width:auto;padding:.5em .8em;font-size:12px;}.brand-text b{font-size:15px;}.brand-accent{width:8px;height:44px;margin:0 10px;}.hbtn{padding:7px;}.hbtn-wa svg{width:22px;height:22px;}.hbtn-mail svg{width:22px;height:17px;}}
/* ===== Classy labels & headings (replaces the monospace "01 — ..." style) ===== */
:root{--font-mono:'Questrial','Century Gothic',sans-serif;}
.kicker{font-family:'Questrial',sans-serif;font-size:13px;font-weight:400;letter-spacing:.28em;text-transform:uppercase;color:var(--navy);display:inline-flex;align-items:center;gap:12px;margin-bottom:14px;}
.kicker::before{content:"";width:34px;height:3px;border-radius:2px;background:linear-gradient(90deg,var(--crimson),var(--orange),var(--gold),var(--sky),var(--teal),var(--olive));}
.section-head h2{font-family:'Questrial','Century Gothic',sans-serif;font-weight:400;font-size:clamp(28px,3.4vw,46px);letter-spacing:-.005em;}
.group-head{align-items:baseline;gap:18px;border-bottom:1px solid var(--line);padding-bottom:12px;}
.group-head h3{font-family:'Questrial',sans-serif;font-weight:400;font-size:clamp(22px,2vw,30px);letter-spacing:.08em;text-transform:uppercase;color:var(--navy);}
.group-head .count{font-family:'Questrial',sans-serif;font-size:15px;font-style:normal;color:var(--ink-soft);letter-spacing:.01em;}
.m-tag{font-family:'Questrial',sans-serif;letter-spacing:.16em;font-size:11.5px;}
.p-photo-cta{font-family:'Inter',sans-serif;letter-spacing:0;}
.info-row .txt .lbl,.info-card .gst,.foot-brand.mono{font-family:'Questrial',sans-serif;letter-spacing:.14em;}
.step .n{font-family:'Questrial',sans-serif;font-size:28px;font-weight:400;background:linear-gradient(90deg,var(--crimson),var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:0;}
.mu-heading{font-family:'Questrial',sans-serif;font-weight:400;}
.map-link{display:inline-block;margin-top:6px;color:#8FD0F0 !important;font-weight:600;}
/* Map */
.map-card{margin-top:40px;display:grid;grid-template-columns:1fr;border-radius:20px;overflow:hidden;border:1px solid var(--line);background:#fff;}
@media(min-width:900px){.map-card{grid-template-columns:1.6fr 1fr;}}
.map-frame{position:relative;min-height:320px;background:#e9eef3;}
.map-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.map-info{padding:32px 30px;display:flex;flex-direction:column;justify-content:center;gap:10px;}
.map-info h3{font-family:'Questrial',sans-serif;font-weight:400;font-size:24px;}
.map-info p{margin:0 0 10px;color:var(--ink-soft);line-height:1.6;}
.map-info .btn{align-self:flex-start;color:#fff;}
/* ===== Header v3: taller, bigger logo, more room after the stripe, animated middle ===== */
@media(min-width:901px){
  .nav{padding-top:16px;padding-bottom:16px;padding-left:clamp(12px,1.4vw,28px);}
  .brand-icon{height:clamp(56px,4.8vw,90px);}
  .brand-text b{font-size:clamp(17px,1.8vw,34px);}
  .brand-text small{font-size:clamp(9px,.75vw,14px);}
  .brand-accent{height:clamp(56px,4.6vw,84px);width:13px;margin:0 clamp(26px,2.6vw,50px) 0 clamp(14px,1.2vw,24px);}
  nav.links a{padding:.72em 0;font-size:clamp(12px,.98vw,18px);}
}
header::after{height:6px;}
.nav-deco{display:none;}
@media(min-width:1180px){.nav-deco{display:flex;flex:1;align-items:center;justify-content:center;min-width:0;height:60px;margin:0 clamp(12px,1.5vw,30px);overflow:hidden;}}
/* Option A: logo bars dancing like an ink meter */
.deco-bars{gap:6px;}
.deco-bars i{display:block;width:8px;border-radius:5px;height:44px;transform-origin:center;animation:decoBar 1.8s ease-in-out infinite;}
.deco-bars i:nth-child(6n+1){background:#E31C5F}.deco-bars i:nth-child(6n+2){background:#F2761D}.deco-bars i:nth-child(6n+3){background:#FFC20E}
.deco-bars i:nth-child(6n+4){background:#3FADE0}.deco-bars i:nth-child(6n+5){background:#12A594}.deco-bars i:nth-child(6n+6){background:#9CB833}
@keyframes decoBar{0%,100%{transform:scaleY(.35);opacity:.55}50%{transform:scaleY(1);opacity:1}}
/* Option B: halftone dots rolling in a wave */
.deco-dots{gap:9px;}
.deco-dots i{display:block;width:10px;height:10px;border-radius:50%;animation:decoDot 2.2s ease-in-out infinite;}
.deco-dots i:nth-child(6n+1){background:#E31C5F}.deco-dots i:nth-child(6n+2){background:#F2761D}.deco-dots i:nth-child(6n+3){background:#FFC20E}
.deco-dots i:nth-child(6n+4){background:#3FADE0}.deco-dots i:nth-child(6n+5){background:#12A594}.deco-dots i:nth-child(6n+6){background:#9CB833}
@keyframes decoDot{0%,100%{transform:translateY(12px) scale(.6);opacity:.5}50%{transform:translateY(-12px) scale(1.15);opacity:1}}
/* Option C: flowing colour ribbon, like paper running through the press */
.deco-ribbon svg{width:100%;height:60px;}
.deco-ribbon path{fill:none;stroke-linecap:round;stroke-width:5;stroke-dasharray:60 26;animation:decoFlow 3s linear infinite;}
.deco-ribbon path:nth-child(2){stroke-width:3;opacity:.55;animation-duration:4.5s;stroke-dasharray:30 18;}
@keyframes decoFlow{to{stroke-dashoffset:-172}}
@media (prefers-reduced-motion:reduce){.nav-deco *{animation:none!important}}
.nav-deco i{flex:none;}
.deco-bars i{width:7px;}
.deco-bars{gap:5px;}
.deco-dots{gap:8px;}
/* ===== Spectrum Glow backgrounds: a different glow for Products, Binding, Packaging and Facility ===== */
#products,#facility{position:relative;overflow:hidden;}
.product-group{position:relative;isolation:isolate;}
.glow{position:absolute;left:50%;width:100vw;transform:translateX(-50%);top:-60px;bottom:-60px;z-index:-1;pointer-events:none;filter:blur(70px);opacity:.38;}
.glow i{position:absolute;border-radius:50%;will-change:transform;}
/* Products: warm pink–orange–yellow, drifting side to side */
.glow-products i{width:38%;height:70%;animation:gSide 16s ease-in-out infinite;}
.glow-products i:nth-child(1){background:#E31C5F;left:2%;top:10%;}
.glow-products i:nth-child(2){background:#F2761D;left:32%;top:25%;animation-delay:-5s;}
.glow-products i:nth-child(3){background:#FFC20E;left:60%;top:5%;animation-delay:-10s;}
.glow-products i:nth-child(4){background:#E31C5F;left:78%;top:40%;width:22%;height:45%;animation-delay:-13s;opacity:.7;}
@keyframes gSide{0%,100%{transform:translateX(0) scale(1)}50%{transform:translateX(14%) scale(1.12)}}
/* Binding: cool blue–green, rising and breathing */
.glow-binding{opacity:.34;}
.glow-binding i{width:30%;height:80%;animation:gRise 12s ease-in-out infinite;}
.glow-binding i:nth-child(1){background:#3FADE0;left:5%;top:15%;}
.glow-binding i:nth-child(2){background:#12A594;left:35%;top:0;animation-delay:-3s;}
.glow-binding i:nth-child(3){background:#3FADE0;left:63%;top:20%;animation-delay:-6s;}
.glow-binding i:nth-child(4){background:#0D3B6B;left:82%;top:5%;width:18%;height:60%;animation-delay:-9s;opacity:.5;}
@keyframes gRise{0%,100%{transform:translateY(12%) scale(.9)}50%{transform:translateY(-12%) scale(1.15)}}
/* Packaging: gold and green, slowly circling */
.glow-packaging{opacity:.32;}
.glow-packaging i{width:34%;height:85%;animation:gOrbit 18s linear infinite;}
.glow-packaging i:nth-child(1){background:#FFC20E;left:0;top:5%;}
.glow-packaging i:nth-child(2){background:#9CB833;left:30%;top:10%;animation-delay:-6s;}
.glow-packaging i:nth-child(3){background:#F2761D;left:60%;top:0;animation-delay:-12s;width:26%;}
.glow-packaging i:nth-child(4){display:none;}
@keyframes gOrbit{0%{transform:rotate(0deg) translateX(8%) rotate(0deg)}100%{transform:rotate(360deg) translateX(8%) rotate(-360deg)}}
/* Facility: full rainbow sweeping diagonally, like light across the shop floor */
.has-glow>.wrap{position:relative;z-index:1;}
.glow-facility{top:0;bottom:0;opacity:.3;z-index:0;}
.glow-facility i{width:40%;height:60%;animation:gSweep 20s ease-in-out infinite;}
.glow-facility i:nth-child(1){background:#12A594;left:-5%;top:0;}
.glow-facility i:nth-child(2){background:#9CB833;left:25%;top:35%;animation-delay:-5s;}
.glow-facility i:nth-child(3){background:#3FADE0;left:55%;top:5%;animation-delay:-10s;}
.glow-facility i:nth-child(4){background:#E31C5F;left:75%;top:45%;width:25%;height:40%;animation-delay:-15s;opacity:.6;}
@keyframes gSweep{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(12%,-14%) scale(1.2)}}
@media (prefers-reduced-motion:reduce){.glow i{animation:none!important}}
@media(max-width:640px){.glow{filter:blur(45px);}}
.glow-binding{opacity:.46;}
/* ===== Gold Hairline (owner's pick) ===== */
.group-head{border-bottom:0;padding-bottom:0;margin-bottom:10px;}
.gold-line{height:1px;margin:0 0 26px;position:relative;overflow:hidden;background:linear-gradient(90deg,#B8965A,rgba(184,150,90,.18) 85%,transparent);}
.gold-divider{display:flex;align-items:center;gap:24px;max-width:var(--maxw);margin:0 auto;padding:44px 28px 0;background:transparent;}
.gold-divider span{flex:1;height:1px;position:relative;overflow:hidden}
.gold-divider span:first-child{background:linear-gradient(90deg,transparent,#B8965A)}
.gold-divider span:last-child{background:linear-gradient(90deg,#B8965A,transparent)}
.gold-divider img{height:42px;width:auto}
.gold-line::after,.gold-divider span::after{content:"";position:absolute;top:0;bottom:0;width:140px;left:-140px;background:linear-gradient(90deg,transparent,#fff,transparent);animation:goldSheen 6s ease-in-out infinite}
.gold-divider span:last-child::after{animation-delay:1.2s}
@keyframes goldSheen{0%{left:-140px}55%,100%{left:100%}}
#facility{padding-top:34px;}
@media (prefers-reduced-motion:reduce){.gold-line::after,.gold-divider span::after{animation:none}}
/* Bigger gold divider */
.gold-divider{padding:56px 28px 14px;gap:32px;}
.gold-divider img{height:clamp(58px,5vw,84px);}
.gold-divider span{height:2px;}
.gold-divider span::after{width:200px;left:-200px;}
/* Gold divider v3: bigger logo, stronger sheen, same line */
.gold-divider img{height:clamp(84px,7.5vw,128px);filter:drop-shadow(0 6px 14px rgba(13,59,107,.12));}
.gold-divider span::after{width:320px;left:-320px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);animation-duration:4.5s;}
.gold-divider span{height:2px;overflow:visible;}
.gold-divider span::before{content:"";position:absolute;inset:-3px 0;background:inherit;filter:blur(4px);opacity:.55;}
.gold-divider{padding:64px 28px 18px;}
/* Gold hairline v2: clearly visible, glowing */
.gold-line{height:2px;overflow:visible;background:linear-gradient(90deg,#B8965A 0%,#D4B26F 45%,rgba(212,178,111,.35) 85%,transparent);box-shadow:0 0 8px rgba(212,178,111,.55);margin-bottom:28px;}
.gold-line::after{width:240px;left:-240px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);animation-duration:4.5s;}
.gold-line{overflow:hidden;}
.section-head .gold-line-lg{margin:4px 0 18px;max-width:520px;}

/* ===== About Us: Editorial in navy & gold ===== */
.ipw-about{position:relative;display:grid;grid-template-columns:8px 1fr;gap:clamp(20px,3vw,44px);max-width:1040px;margin:0 auto;padding:clamp(28px,4.5vw,60px);border-radius:26px;
  background:radial-gradient(90% 120% at 30% 0,#12457a 0%,#0A2E54 55%,#07223d 100%);color:#fff;
  box-shadow:0 30px 60px -28px rgba(8,36,63,.6),0 0 0 1px rgba(212,178,111,.25) inset;}
.ipw-about::before{content:"";position:absolute;inset:-26px;border-radius:40px;z-index:-1;filter:blur(38px);opacity:.55;
  background:radial-gradient(45% 60% at 20% 30%,rgba(227,28,95,.5),transparent 70%),radial-gradient(45% 60% at 80% 25%,rgba(63,173,224,.55),transparent 70%),radial-gradient(50% 60% at 55% 90%,rgba(212,178,111,.6),transparent 70%);
  animation:aboutGlow 12s ease-in-out infinite alternate;}
@keyframes aboutGlow{0%{transform:scale(.98) translateX(-1%)}100%{transform:scale(1.03) translateX(1%)}}
.ipw-about-rail{border-radius:6px;background:linear-gradient(180deg,#E31C5F,#F2761D,#FFC20E,#3FADE0,#12A594,#9CB833);}
.ipw-about-lbl{display:inline-block;font-family:'Questrial',sans-serif;font-size:13px;letter-spacing:.34em;text-transform:uppercase;color:#D9C08E;}
.ipw-about h3{font-family:'Questrial',sans-serif;font-weight:400;font-size:clamp(30px,4vw,54px);line-height:1.1;margin:12px 0 20px;color:#fff;text-wrap:balance;}
.ipw-about .q{font-size:1.6em;line-height:0;vertical-align:-.35em;margin-right:8px;color:#D4B26F;}
.ipw-about p{font-size:clamp(16px,1.35vw,19px);line-height:1.85;color:#C9D3E0;margin:0 0 24px;max-width:70ch;}
.ipw-about strong{color:#E3C98F;font-weight:600;}
.ipw-about-tags{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:0 0 26px;}
.ipw-about-tags li{padding:9px 18px;border-radius:999px;border:1px solid rgba(212,178,111,.7);color:#E3C98F;font-family:'Questrial',sans-serif;letter-spacing:.08em;font-size:14.5px;background:rgba(212,178,111,.06);}
.ipw-about-close{display:flex;align-items:center;gap:18px;}
.ipw-about-close span{flex:1;height:1px;position:relative;overflow:hidden;}
.ipw-about-close span:first-child{background:linear-gradient(90deg,transparent,#D4B26F);max-width:60px;}
.ipw-about-close span:last-child{background:linear-gradient(90deg,#D4B26F,transparent);}
.ipw-about-close span::after{content:"";position:absolute;inset:0;width:120px;left:-120px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent);animation:goldSheen 5s ease-in-out infinite;}
.ipw-about-close b{font-family:'Questrial',sans-serif;font-weight:400;font-size:clamp(13px,1.1vw,16px);letter-spacing:.24em;text-transform:uppercase;color:#E3C98F;}
@media(max-width:640px){.ipw-about{grid-template-columns:5px 1fr;gap:16px;}.ipw-about-close b{letter-spacing:.14em;}}
.mu-section{overflow:visible;}
@media (prefers-reduced-motion:reduce){.ipw-about::before{animation:none}}
.ipw-about-wrap{position:relative;max-width:1040px;margin:0 auto;isolation:isolate;}
.ipw-about-wrap::before{content:"";position:absolute;inset:-30px;border-radius:44px;z-index:-1;filter:blur(40px);opacity:.6;
  background:radial-gradient(45% 60% at 18% 30%,rgba(227,28,95,.45),transparent 70%),radial-gradient(45% 60% at 82% 25%,rgba(63,173,224,.55),transparent 70%),radial-gradient(55% 60% at 55% 95%,rgba(212,178,111,.7),transparent 70%);
  animation:aboutGlow 12s ease-in-out infinite alternate;}
.ipw-about::before{display:none;}
.ipw-about{z-index:1;}
@media (prefers-reduced-motion:reduce){.ipw-about-wrap::before{animation:none}}
/* Phone: stop decorative glows from widening the page */
html,body{overflow-x:hidden;}
@supports (overflow:clip){html,body{overflow-x:clip;}}
#products,#facility,.mu-section{overflow-x:clip;}
@media(max-width:900px){
  .glow{width:100%;left:0;transform:none;}
  .ipw-about-wrap::before{inset:-14px;}
  .hero-stats .stat{width:190px;padding:22px 12px;}
  .hero-stats .icon-badge{width:76px;height:76px;}
  .hero-stats .icon-badge img{width:48px;height:48px;}
  .hero-stats .num{font-size:30px;}
  .hero-stats .lbl{font-size:13px;}
  .hero-ctas{flex-wrap:nowrap;}
  .hero-ctas .btn{padding:12px 18px;font-size:14px;}
  .gold-divider{padding:40px 18px 10px;gap:16px;}
  .gold-divider img{height:64px;}
  .ipw-about{padding:26px 20px;}
  .ipw-about-tags li{font-size:13px;padding:7px 13px;}
  .map-frame{min-height:260px;}
}
.mu-video-card{max-width:1040px;padding:18px;border-radius:28px;}
