/*
Theme Name: Crescent Industrial
Theme URI: https://crescentprintingpress.com/
Author: Crescent Printing Press
Description: Faithful WordPress conversion of the Crescent Printing Press HTML website.
Version: 1.0.0
License: GPL-2.0-or-later
Text Domain: crescent-industrial
*/
:root{
    --navy:#12212E;
    --navy-2:#1A3346;
    --navy-3:#22405A;
    --charcoal:#1B262F;
    --paper:#F4F5F1;
    --paper-dim:#E7E8E2;
    --ink:#12212E;
    --silver:#A7B4C0;
    --silver-dim:#6E7C8A;
    --copper:#DA9145;
    --copper-light:#EBAE6C;
    --line: rgba(167,180,192,0.18);
    --line-dark: rgba(18,33,46,0.12);
    --radius: 2px;
    --ff-display:'Space Grotesk', sans-serif;
    --ff-body:'Inter', sans-serif;
    --ff-mono:'IBM Plex Mono', monospace;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    *{animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important;}
  }
  body{
    font-family:var(--ff-body);
    background:var(--paper);
    color:var(--ink);
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  img,svg{display:block;max-width:100%;}
  a{color:inherit;text-decoration:none;}
  ul{list-style:none;}
  button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}
  .wrap{max-width:1240px;margin:0 auto;padding:0 32px;}
  @media (max-width:640px){.wrap{padding:0 20px;}}

  .eyebrow{
    font-family:var(--ff-mono);
    font-size:12px;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:var(--copper);
    display:flex;align-items:center;gap:10px;
    margin-bottom:18px;
  }
  .eyebrow::before{content:"";width:22px;height:1px;background:var(--copper);display:inline-block;}
  .eyebrow.light{color:var(--copper-light);}

  h1,h2,h3,h4{font-family:var(--ff-display);font-weight:700;letter-spacing:-0.01em;line-height:1.05;}
  h2{font-size:clamp(28px,4vw,44px);}
  h3{font-size:20px;}
  p{color:var(--silver-dim);}
  .section-light p{color:#4A5262;}

  .btn{
    display:inline-flex;align-items:center;gap:10px;
    font-family:var(--ff-mono);font-size:13px;letter-spacing:0.06em;text-transform:uppercase;
    padding:16px 26px;border-radius:var(--radius);
    transition:all .25s ease;
    white-space:nowrap;
  }
  .btn-primary{background:var(--copper);color:var(--navy);font-weight:600;}
  .btn-primary:hover{background:var(--copper-light);transform:translateY(-1px);}
  .btn-outline{border:1px solid var(--silver-dim);color:var(--paper);}
  .btn-outline:hover{border-color:var(--copper-light);color:var(--copper-light);}
  .btn-outline.dark{border:1px solid var(--line-dark);color:var(--ink);}
  .btn-outline.dark:hover{border-color:var(--copper);color:var(--copper);}
  .btn-arrow{transition:transform .2s ease;}
  .btn:hover .btn-arrow{transform:translateX(3px);}

  /* Registration mark — signature element (offset-print color-registration crosshair) */
  .regmark{width:16px;height:16px;position:relative;opacity:.55;flex-shrink:0;}
  .regmark svg{width:100%;height:100%;}
  .corner-marks{position:absolute;inset:0;pointer-events:none;}
  .corner-marks .cm{position:absolute;width:18px;height:18px;opacity:.35;}
  .corner-marks .cm.tl{top:14px;left:14px;}
  .corner-marks .cm.tr{top:14px;right:14px;}
  .corner-marks .cm.bl{bottom:14px;left:14px;}
  .corner-marks .cm.br{bottom:14px;right:14px;}

  /* halftone texture */
  .halftone{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(167,180,192,.5) 1px, transparent 1.4px);background-size:8px 8px;opacity:.08;pointer-events:none;}

  /* ===== LANGUAGE SWITCHER ===== */
  .language-switcher{display:inline-flex;align-items:center;gap:2px;padding:4px;border:1px solid rgba(235,174,108,.55);border-radius:999px;background:rgba(18,33,46,.94);backdrop-filter:blur(10px);box-shadow:0 4px 18px rgba(0,0,0,.16),inset 0 0 0 1px rgba(255,255,255,.03);min-width:104px;justify-content:center;}
  .language-switcher::before{content:"LANG";font-family:var(--ff-mono);font-size:9px;letter-spacing:.10em;color:var(--copper-light);padding:0 5px 0 3px;}
  .language-switcher .lang-btn{min-width:40px;min-height:32px;padding:6px 10px;border-radius:999px;color:var(--silver);font-family:var(--ff-mono);font-size:11px;font-weight:600;letter-spacing:.04em;line-height:1;transition:background .22s ease,color .22s ease,transform .22s ease;white-space:nowrap;}
  .language-switcher .lang-btn:hover{color:var(--paper);transform:translateY(-1px);}
  .language-switcher .lang-btn.active{background:var(--copper);color:var(--navy);font-weight:700;box-shadow:0 2px 10px rgba(0,0,0,.20);}
  .language-switcher .lang-divider{width:1px;height:18px;background:rgba(167,180,192,.28);transition:opacity .2s ease;}
  .crescent-urdu .language-switcher .lang-btn[data-lang="ur"]{font-family:'Noto Naskh Arabic',serif;font-size:14px;padding-top:4px;}
  @media (max-width:920px){.nav-cta{gap:10px;}.language-switcher{margin-right:0;min-width:108px;}}
  @media (max-width:640px){
    nav{padding:12px 16px;}
    .logo{font-size:15px;gap:7px;}
    .logo .mark{width:24px;height:24px;}
    .logo small{font-size:7px;letter-spacing:.10em;}
    .nav-cta{gap:8px;}
    .language-switcher{min-width:98px;padding:3px;border-color:rgba(235,174,108,.7);}
    .language-switcher::before{display:none;}
    .language-switcher .lang-btn{min-width:39px;min-height:34px;padding:6px 8px;font-size:11px;}
    .language-switcher .lang-btn[data-lang="ur"]{font-size:14px;}
    .menu-toggle{width:24px;}
    .nav-links{top:56px;}
  }
  @media (max-width:380px){
    .logo span{max-width:145px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
    .language-switcher{min-width:88px;}
    .language-switcher .lang-btn{min-width:35px;padding-left:6px;padding-right:6px;}
  }

  /* ===== URDU / RTL ===== */
  html[dir="rtl"] body{font-family:'Noto Naskh Arabic',var(--ff-body),sans-serif;}
  html[dir="rtl"] h1,html[dir="rtl"] h2,html[dir="rtl"] h3,html[dir="rtl"] h4,html[dir="rtl"] .logo,html[dir="rtl"] .btn,html[dir="rtl"] .nav-links a,html[dir="rtl"] .eyebrow,html[dir="rtl"] .hero-eyebrow{font-family:'Noto Naskh Arabic',var(--ff-body),sans-serif;letter-spacing:0;}
  html[dir="rtl"] .btn-arrow{display:inline-block;transform:scaleX(-1);}
  html[dir="rtl"] .btn:hover .btn-arrow{transform:scaleX(-1) translateX(3px);}
  html[dir="rtl"] .nav-links,html[dir="rtl"] .hero-grid,html[dir="rtl"] .trust-grid,html[dir="rtl"] .product-grid,html[dir="rtl"] .process-list,html[dir="rtl"] .custom-flow,html[dir="rtl"] .industry-tabs,html[dir="rtl"] .contact-grid,html[dir="rtl"] .footer-grid,html[dir="rtl"] .mobile-action-bar{direction:rtl;}
  html[dir="rtl"] .hero h1,html[dir="rtl"] .hero p,html[dir="rtl"] .hero-ctas,html[dir="rtl"] .section-head,html[dir="rtl"] .section-light p,html[dir="rtl"] .quote-section,html[dir="rtl"] .quote-section form,html[dir="rtl"] .field,html[dir="rtl"] .contact-grid,html[dir="rtl"] footer,html[dir="rtl"] .why-item,html[dir="rtl"] .industry-body{direction:rtl;text-align:right;}
  html[dir="rtl"] .hero-ctas{justify-content:flex-start;}
  html[dir="rtl"] .field input,html[dir="rtl"] .field select,html[dir="rtl"] .field textarea{direction:rtl;text-align:right;}
  html[dir="rtl"] .app-tags,html[dir="rtl"] .hours-row,html[dir="rtl"] .footer-bottom{direction:rtl;}
  html[dir="rtl"] .logo small{text-align:right;}


  /* Mobile + RTL language switcher refinements */
  html[dir="rtl"] .language-switcher{direction:ltr;}
  html[dir="rtl"] .language-switcher::before{direction:ltr;}
  @media (max-width:920px){
    html[dir="rtl"] .nav-links{align-items:flex-start;}
  }

  /* ===== NAV ===== */
  header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(18,33,46,0.86);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
  nav{display:flex;align-items:center;justify-content:space-between;padding:18px 32px;max-width:1240px;margin:0 auto;}
  .logo{font-family:var(--ff-display);font-weight:700;font-size:18px;color:var(--paper);display:flex;align-items:center;gap:10px;}
  .logo .mark{width:26px;height:26px;}
  .logo small{display:block;font-family:var(--ff-mono);font-weight:400;font-size:9px;letter-spacing:.14em;color:var(--copper-light);text-transform:uppercase;}
  .nav-links{display:flex;gap:30px;align-items:center;}
  .nav-links a{font-size:13px;letter-spacing:.03em;color:var(--silver);transition:color .2s;font-family:var(--ff-mono);}
  .nav-links a:hover{color:var(--paper);}
  .nav-cta{display:flex;align-items:center;gap:18px;}
  .menu-toggle{display:none;flex-direction:column;gap:5px;width:26px;}
  .menu-toggle span{height:2px;background:var(--paper);display:block;}
  @media (max-width:920px){
    .nav-links{position:fixed;top:64px;left:0;right:0;background:var(--navy);flex-direction:column;align-items:flex-start;padding:24px 28px;gap:20px;border-bottom:1px solid var(--line);transform:translateY(-130%);transition:transform .3s ease;}
    .nav-links.open{transform:translateY(0);}
    .menu-toggle{display:flex;}
    .nav-cta .btn-outline{display:none;}
  }

  /* ===== MOBILE STICKY ACTION BAR ===== */
  .mobile-action-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:99;background:var(--navy);border-top:1px solid var(--line);}
  .mobile-action-bar a{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:14px 6px;font-family:var(--ff-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--paper);border-right:1px solid var(--line);}
  .mobile-action-bar a:last-child{border-right:none;}
  .mobile-action-bar a.primary{background:var(--copper);color:var(--navy);font-weight:600;}
  .mobile-action-bar svg{width:15px;height:15px;stroke:currentColor;flex-shrink:0;}
  @media (max-width:820px){
    .mobile-action-bar{display:flex;}
    body{padding-bottom:58px;}
  }

  /* ===== FLOATING WHATSAPP (desktop) ===== */
  .whatsapp-float{position:fixed;bottom:26px;right:26px;width:54px;height:54px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(0,0,0,.3);z-index:98;transition:transform .2s ease;}
  .whatsapp-float:hover{transform:scale(1.07);}
  .whatsapp-float svg{width:26px;height:26px;fill:#fff;}
  @media (max-width:820px){.whatsapp-float{display:none;}}

  /* ===== HERO ===== */
  .hero{position:relative;min-height:100vh;background:radial-gradient(ellipse at 70% 20%, var(--navy-3), var(--navy) 60%);color:var(--paper);display:flex;align-items:center;padding:120px 0 80px;overflow:hidden;}
  .hero .halftone{opacity:.06;}
  .hero-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:60px;align-items:center;position:relative;z-index:2;}
  @media (max-width:920px){.hero-grid{grid-template-columns:1fr;}}
  .hero-eyebrow{font-family:var(--ff-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--copper-light);margin-bottom:24px;display:flex;align-items:center;gap:12px;}
  .hero h1{font-size:clamp(38px,5.4vw,68px);color:var(--paper);margin-bottom:24px;}
  .hero h1 em{font-style:normal;color:var(--copper-light);}
  .hero p.lede{font-size:18px;color:var(--silver);max-width:520px;margin-bottom:38px;}
  .hero-ctas{display:flex;gap:16px;flex-wrap:wrap;}
  .brochure-link{display:inline-block;margin-top:22px;font-family:var(--ff-mono);font-size:12px;letter-spacing:.04em;color:var(--silver);border-bottom:1px dotted var(--silver-dim);padding-bottom:2px;transition:color .2s;}
  .brochure-link:hover{color:var(--copper-light);border-color:var(--copper-light);}
  .hero-visual{position:relative;display:flex;justify-content:center;align-items:center;}
  .can-illustration{width:100%;max-width:380px;}
  .spec-tag{position:absolute;font-family:var(--ff-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--copper-light);background:rgba(18,33,46,.8);border:1px solid var(--line);padding:6px 10px;border-radius:var(--radius);}
  .spec-tag.t1{top:8%;left:-4%;}
  .spec-tag.t2{bottom:14%;right:-6%;}
  @media (max-width:640px){.spec-tag{display:none;}}

  /* ===== TRUST BAR ===== */
  .trust-bar{background:var(--charcoal);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:44px 0;}
  .trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;}
  @media (max-width:820px){.trust-grid{grid-template-columns:repeat(2,1fr);}}
  .trust-item{text-align:left;border-left:2px solid var(--copper);padding-left:18px;}
  .trust-num{font-family:var(--ff-display);font-size:clamp(26px,3vw,38px);color:var(--paper);font-weight:700;}
  .trust-label{font-family:var(--ff-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--silver-dim);margin-top:6px;}

  /* ===== SECTION SHELLS ===== */
  section{position:relative;padding:110px 0;}
  @media (max-width:640px){section{padding:76px 0;}}
  .section-dark{background:var(--navy);color:var(--paper);}
  .section-dark p{color:var(--silver);}
  .section-charcoal{background:var(--charcoal);color:var(--paper);}
  .section-charcoal p{color:var(--silver);}
  .section-light{background:var(--paper);}
  .section-head{max-width:680px;margin-bottom:60px;}
  .section-head.center{margin-left:auto;margin-right:auto;text-align:center;}

  /* ===== ABOUT ===== */
  .about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;}
  @media (max-width:900px){.about-grid{grid-template-columns:1fr;}}
  .factory-plate{aspect-ratio:4/5;position:relative;border-radius:var(--radius);overflow:hidden;background:
    repeating-linear-gradient(135deg, rgba(193,121,61,.14) 0 2px, transparent 2px 22px),
    linear-gradient(160deg, var(--navy-3), var(--navy) 70%);
    border:1px solid var(--line);
  }
  .factory-plate .plate-label{position:absolute;bottom:20px;left:20px;right:20px;font-family:var(--ff-mono);font-size:10px;color:var(--silver-dim);letter-spacing:.06em;border-top:1px solid var(--line);padding-top:12px;}
  .timeline{margin-top:36px;border-left:1px solid var(--line-dark);padding-left:22px;}
  .timeline-item{position:relative;padding-bottom:26px;}
  .timeline-item::before{content:"";position:absolute;left:-27px;top:4px;width:9px;height:9px;border-radius:50%;background:var(--copper);}
  .timeline-year{font-family:var(--ff-mono);font-size:13px;color:var(--copper);font-weight:600;}
  .timeline-item p{margin-top:4px;font-size:14px;}

  /* ===== PRODUCTS ===== */
  .product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-dark);border:1px solid var(--line-dark);}
  @media (max-width:920px){.product-grid{grid-template-columns:repeat(2,1fr);}}
  @media (max-width:560px){.product-grid{grid-template-columns:1fr;}}
  .product-card{background:var(--paper);padding:28px 24px;transition:background .25s ease;position:relative;}
  .product-card:hover{background:var(--navy);}
  .product-card:hover *{color:var(--paper) !important;}
  .product-card:hover .product-icon{border-color:var(--copper);}
  .product-icon{width:44px;height:44px;border:1px solid var(--line-dark);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:18px;transition:border-color .25s;}
  .product-icon svg{width:20px;height:20px;stroke:var(--copper);}
  .product-card h4{font-size:16px;margin-bottom:8px;}
  .product-card p{font-size:13px;color:var(--silver-dim);margin-bottom:16px;}
  .product-link{font-family:var(--ff-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--copper);display:inline-flex;align-items:center;gap:6px;}

  /* ===== CUSTOM STRIP ===== */
  .custom-strip{background:var(--navy);color:var(--paper);}
  .custom-flow{display:flex;flex-wrap:wrap;gap:0;margin-top:50px;border-top:1px solid var(--line);}
  .flow-step{flex:1 1 150px;padding:22px 18px;border-right:1px solid var(--line);position:relative;}
  .flow-step:last-child{border-right:none;}
  .flow-step .fnum{font-family:var(--ff-mono);font-size:11px;color:var(--copper-light);}
  .flow-step .flabel{font-family:var(--ff-display);font-size:15px;margin-top:8px;font-weight:600;}

  /* ===== INDUSTRIES ===== */
  .industry-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:40px;}
  .industry-tab{font-family:var(--ff-mono);font-size:12px;letter-spacing:.04em;padding:10px 16px;border:1px solid var(--line-dark);border-radius:var(--radius);color:#4A5262;transition:all .2s;}
  .industry-tab.active,.industry-tab:hover{border-color:var(--copper);color:var(--copper);background:rgba(193,121,61,.06);}
  .industry-panel{display:none;}
  .industry-panel.active{display:grid;}
  .industry-panel{grid-template-columns:1fr 1fr;gap:50px;align-items:center;}
  @media (max-width:820px){.industry-panel{grid-template-columns:1fr;}}
  .industry-plate{aspect-ratio:16/10;border-radius:var(--radius);background:
    repeating-linear-gradient(45deg, rgba(18,33,46,.05) 0 2px, transparent 2px 18px),
    linear-gradient(150deg,#EDEEE8,#DEDFD7);
    border:1px solid var(--line-dark);position:relative;overflow:hidden;}
  .industry-plate .plate-label{position:absolute;bottom:16px;left:16px;font-family:var(--ff-mono);font-size:10px;color:#8A93A0;letter-spacing:.06em;}
  .industry-body h3{margin-bottom:14px;font-size:24px;}

  /* ===== MANUFACTURING PROCESS ===== */
  .process-list{margin-top:50px;border-top:1px solid var(--line);}
  .process-row{display:grid;grid-template-columns:70px 1fr 1.3fr;gap:24px;padding:26px 0;border-bottom:1px solid var(--line);align-items:start;}
  @media (max-width:700px){.process-row{grid-template-columns:50px 1fr;}.process-row .p-desc{grid-column:1/-1;}}
  .process-row .p-num{font-family:var(--ff-mono);color:var(--copper);font-size:15px;}
  .process-row h4{font-size:17px;}
  .process-row p{font-size:14px;}

  /* ===== TECH / POLYPROPYLENE ===== */
  .tech-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
  @media (max-width:900px){.tech-grid{grid-template-columns:1fr;}}
  .app-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;}
  .app-tag{font-family:var(--ff-mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--line);color:var(--silver);padding:8px 14px;border-radius:20px;}

  /* ===== QUALITY ===== */
  .quality-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:50px;}
  @media (max-width:820px){.quality-grid{grid-template-columns:repeat(2,1fr);}}
  .quality-item{border-top:2px solid var(--copper);padding-top:16px;}
  .quality-item h4{font-size:15px;margin-bottom:8px;}
  .quality-item p{font-size:13px;}
  .cert-note{margin-top:50px;font-family:var(--ff-mono);font-size:12px;color:var(--silver-dim);border:1px dashed var(--line);padding:16px 20px;border-radius:var(--radius);}

  /* ===== TRUSTED BY ===== */
  .logo-wall{display:flex;flex-wrap:wrap;gap:1px;background:var(--line-dark);border:1px solid var(--line-dark);margin-top:40px;}
  .logo-cell{flex:1 1 150px;background:var(--paper);padding:30px 20px;display:flex;align-items:center;justify-content:center;font-family:var(--ff-display);font-weight:700;font-size:18px;color:#3A4150;letter-spacing:.02em;transition:color .2s;}
  .logo-cell:hover{color:var(--copper);}
  .logo-note{margin-top:20px;font-family:var(--ff-mono);font-size:12px;color:var(--silver-dim);}

  /* ===== WHY ===== */
  .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:50px;border:1px solid var(--line);}
  @media (max-width:820px){.why-grid{grid-template-columns:1fr 1fr;}}
  @media (max-width:560px){.why-grid{grid-template-columns:1fr;}}
  .why-item{background:var(--navy);padding:30px 26px;}
  .why-item .wn{font-family:var(--ff-mono);color:var(--copper-light);font-size:12px;}
  .why-item h4{margin-top:10px;font-size:16px;color:var(--paper);}
  .why-item p{margin-top:8px;font-size:13px;}

  /* ===== FACTORY FULL BLEED ===== */
  .factory-hero{position:relative;min-height:70vh;display:flex;align-items:flex-end;background:
    linear-gradient(0deg, rgba(18,33,46,.95), rgba(18,33,46,.55)),
    repeating-linear-gradient(60deg, rgba(167,180,192,.05) 0 2px, transparent 2px 30px),
    linear-gradient(160deg, var(--navy-3), var(--navy));
    color:var(--paper);padding-bottom:80px;}
  .factory-hero-inner{max-width:640px;}
  .video-plate{margin-top:36px;display:inline-flex;align-items:center;gap:16px;border:1px dashed var(--line);border-radius:var(--radius);padding:16px 22px;}
  .video-play{width:40px;height:40px;border-radius:50%;background:var(--copper-light);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
  .video-play svg{width:18px;height:18px;}
  .video-plate span{font-family:var(--ff-mono);font-size:12px;color:var(--silver-dim);}
  .factory-hero h2{font-size:clamp(30px,4.6vw,50px);margin-bottom:20px;}

  /* ===== SUSTAINABILITY ===== */
  .sus-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
  @media (max-width:900px){.sus-grid{grid-template-columns:1fr;}}

  /* ===== TESTIMONIAL ===== */
  .testi-box{border:1px dashed var(--line-dark);border-radius:var(--radius);padding:60px 40px;text-align:center;margin-top:40px;}
  .testi-box p{font-family:var(--ff-display);font-size:22px;color:#5A6272;font-weight:500;}

  /* ===== QUOTE FORM ===== */
  .quote-section{background:var(--navy);color:var(--paper);}
  .quote-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:70px;}
  @media (max-width:900px){.quote-grid{grid-template-columns:1fr;}}
  .contact-methods{margin-top:40px;display:flex;flex-direction:column;gap:18px;}
  .contact-method{display:flex;gap:14px;align-items:flex-start;border-top:1px solid var(--line);padding-top:16px;}
  .contact-method .cm-icon{width:18px;height:18px;stroke:var(--copper-light);flex-shrink:0;margin-top:2px;}
  .contact-method .cm-label{font-family:var(--ff-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--silver-dim);}
  .contact-method .cm-value{font-size:14px;color:var(--paper);margin-top:2px;}
  form{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
  .field{display:flex;flex-direction:column;gap:8px;}
  .field.full{grid-column:1/-1;}
  label{font-family:var(--ff-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--silver);}
  input,select,textarea{
    background:var(--navy-2);border:1px solid var(--line);color:var(--paper);
    padding:13px 14px;border-radius:var(--radius);font-family:var(--ff-body);font-size:14px;
  }
  input:focus,select:focus,textarea:focus{outline:2px solid var(--copper);outline-offset:1px;border-color:var(--copper);}
  textarea{resize:vertical;min-height:100px;}
  .file-field{border:1px dashed var(--line);border-radius:var(--radius);padding:16px;font-family:var(--ff-mono);font-size:12px;color:var(--silver-dim);cursor:pointer;transition:border-color .2s;}
  .file-field:hover{border-color:var(--copper-light);color:var(--paper);}
  .form-submit{grid-column:1/-1;margin-top:6px;}

  /* ===== CONTACT PAGE STYLE SECTION ===== */
  .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;}
  @media (max-width:900px){.contact-grid{grid-template-columns:1fr;}}
  .map-plate{aspect-ratio:4/3;border-radius:var(--radius);border:1px solid var(--line-dark);position:relative;overflow:hidden;
    background:
      linear-gradient(rgba(18,33,46,.04) 1px, transparent 1px) 0 0/26px 26px,
      linear-gradient(90deg, rgba(18,33,46,.04) 1px, transparent 1px) 0 0/26px 26px,
      #EEEFE9;}
  .map-plate .pin{position:absolute;top:44%;left:48%;width:14px;height:14px;background:var(--copper);border-radius:50% 50% 50% 0;transform:rotate(-45deg);}
  .map-plate .plate-label{position:absolute;top:16px;left:16px;font-family:var(--ff-mono);font-size:10px;color:#8A93A0;}
  .hours-table{margin-top:24px;font-family:var(--ff-mono);font-size:13px;}
  .hours-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line-dark);color:#4A5262;}

  /* ===== FOOTER ===== */
  footer{background:var(--charcoal);color:var(--paper);padding:70px 0 30px;}
  .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:50px;border-bottom:1px solid var(--line);}
  @media (max-width:820px){.footer-grid{grid-template-columns:1fr 1fr;}}
  @media (max-width:560px){.footer-grid{grid-template-columns:1fr;}}
  .footer-grid h5{font-family:var(--ff-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--copper-light);margin-bottom:18px;}
  .footer-grid li{margin-bottom:10px;font-size:13px;color:var(--silver);}
  .footer-grid li a:hover{color:var(--paper);}
  .footer-bottom{padding-top:26px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-family:var(--ff-mono);font-size:11px;color:var(--silver-dim);}

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


/* =========================================================
   CRESCENT INDUSTRIAL - FINAL MOBILE RESPONSIVE OVERRIDE
   Added to fix mobile overflow, hero sizing, grids and forms.
   ========================================================= */

html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden !important;
}

img,
svg,
video,
iframe {
  max-width: 100%;
}

@media (max-width: 640px) {

  /* Global mobile safety */
  html,
  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden !important;
  }

  .wrap {
    width: 100%;
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }

  section {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
  }

  /* Navigation */
  nav {
    width: 100%;
    max-width: 100%;
    padding: 14px 18px;
  }

  .logo {
    min-width: 0;
    max-width: calc(100% - 50px);
    font-size: 16px;
  }

  .logo small {
    font-size: 8px;
    letter-spacing: .10em;
  }

  .logo .mark {
    width: 22px;
    height: 22px;
    flex-shrink: 0;
  }

  /* Mobile menu */
  .nav-links {
    width: 100%;
    max-width: 100%;
    padding: 22px 20px;
  }

  /* Hero */
  .hero {
    width: 100%;
    max-width: 100%;
    min-height: auto;
    padding: 105px 0 55px;
    overflow: hidden !important;
  }

  .hero-grid {
    width: 100%;
    max-width: 100%;
    grid-template-columns: 1fr;
    gap: 35px;
  }

  .hero-grid > div {
    min-width: 0;
    width: 100%;
    max-width: 100%;
  }

  .hero-eyebrow {
    width: 100%;
    max-width: 100%;
    font-size: 10px;
    line-height: 1.5;
    letter-spacing: .09em;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .hero h1 {
    width: 100%;
    max-width: 100%;
    font-size: clamp(34px, 10vw, 44px);
    line-height: 1.05;
    overflow-wrap: anywhere;
  }

  .hero p.lede {
    width: 100%;
    max-width: 100%;
    font-size: 15px;
    line-height: 1.55;
  }

  .hero-ctas {
    width: 100%;
    max-width: 100%;
    flex-direction: column;
    gap: 10px;
  }

  .hero-ctas .btn {
    width: 100%;
    max-width: 100%;
    justify-content: center;
    padding: 14px 16px;
    font-size: 11px;
  }

  .brochure-link {
    display: block;
    width: 100%;
    max-width: 100%;
    font-size: 10px;
    line-height: 1.6;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  /* Hero product image */
  .hero-visual {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .can-illustration {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto;
    display: block;
    transform: none !important;
  }

  .spec-tag {
    display: none;
  }

  /* Trust */
  .trust-grid {
    width: 100%;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }

  .trust-item {
    min-width: 0;
    padding-left: 12px;
  }

  .trust-num {
    font-size: 27px;
  }

  .trust-label {
    font-size: 9px;
    line-height: 1.4;
  }

  /* About */
  .about-grid {
    width: 100%;
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .factory-plate {
    width: 100%;
    max-width: 100%;
    aspect-ratio: 4 / 5;
  }

  .factory-plate img {
    max-width: none;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* Product cards */
  .product-grid {
    width: 100%;
    max-width: 100%;
    grid-template-columns: 1fr;
  }

  .product-card {
    min-width: 0;
    padding: 24px 20px;
  }

  /* Custom process strip */
  .custom-flow {
    width: 100%;
    max-width: 100%;
  }

  .flow-step {
    flex: 1 1 100%;
    border-right: none;
    border-bottom: 1px solid var(--line);
  }

  .flow-step:last-child {
    border-bottom: none;
  }

  /* Industries */
  .industry-tabs {
    width: 100%;
    max-width: 100%;
  }

  .industry-tab {
    max-width: 100%;
    font-size: 10px;
    padding: 9px 12px;
  }

  .industry-panel {
    width: 100%;
    max-width: 100%;
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .industry-plate {
    width: 100%;
    max-width: 100%;
  }

  /* Manufacturing process */
  .process-list,
  .process-row {
    width: 100%;
    max-width: 100%;
  }

  .process-row {
    grid-template-columns: 42px 1fr;
    gap: 15px;
    padding: 22px 0;
  }

  .process-row .p-desc {
    grid-column: 1 / -1;
  }

  /* Tech / polypropylene */
  .tech-grid {
    width: 100%;
    max-width: 100%;
    grid-template-columns: 1fr;
    gap: 40px;
  }

  /* Quality */
  .quality-grid {
    width: 100%;
    max-width: 100%;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }

  .quality-item {
    min-width: 0;
  }

  /* Trusted by */
  .logo-wall {
    width: 100%;
    max-width: 100%;
  }

  .logo-cell {
    flex: 1 1 140px;
    min-width: 0;
    padding: 22px 14px;
    font-size: 15px;
  }

  /* Why */
  .why-grid {
    width: 100%;
    max-width: 100%;
    grid-template-columns: 1fr;
  }

  .why-item {
    min-width: 0;
  }

  /* Factory */
  .factory-hero {
    width: 100%;
    max-width: 100%;
    min-height: 65vh;
    padding-bottom: 55px;
    overflow: hidden;
  }

  .factory-hero-inner {
    width: 100%;
    max-width: 100%;
  }

  .factory-hero h2 {
    font-size: clamp(30px, 9vw, 42px);
  }

  .video-plate {
    max-width: 100%;
  }

  /* Sustainability */
  .sus-grid {
    width: 100%;
    max-width: 100%;
    grid-template-columns: 1fr;
    gap: 40px;
  }

  /* Testimonial */
  .testi-box {
    width: 100%;
    max-width: 100%;
    padding: 35px 20px;
  }

  .testi-box p {
    font-size: 18px;
  }

  /* Quote / contact */
  .quote-grid,
  .contact-grid {
    width: 100%;
    max-width: 100%;
    grid-template-columns: 1fr;
    gap: 40px;
  }

  form {
    width: 100%;
    max-width: 100%;
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .field,
  .field.full {
    width: 100%;
    max-width: 100%;
    grid-column: 1;
    min-width: 0;
  }

  input,
  select,
  textarea {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .form-submit {
    grid-column: 1;
    width: 100%;
  }

  .form-submit .btn {
    width: 100%;
    justify-content: center;
  }

  /* Footer */
  footer {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
  }

  .footer-grid {
    width: 100%;
    max-width: 100%;
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .footer-bottom {
    width: 100%;
    max-width: 100%;
    flex-direction: column;
    gap: 8px;
  }

  /* Mobile bottom action bar */
  .mobile-action-bar {
    width: 100%;
    max-width: 100%;
  }

  .mobile-action-bar a {
    min-width: 0;
    padding: 13px 4px;
    font-size: 9px;
    gap: 4px;
  }
}

/* Small phones */
@media (max-width: 380px) {

  .wrap {
    padding-left: 16px;
    padding-right: 16px;
  }

  nav {
    padding-left: 14px;
    padding-right: 14px;
  }

  .logo {
    font-size: 14px;
  }

  .logo small {
    font-size: 7px;
  }

  .hero {
    padding-top: 98px;
  }

  .hero h1 {
    font-size: 32px;
  }

  .hero-eyebrow {
    font-size: 9px;
  }

  .hero p.lede {
    font-size: 14px;
  }

  .trust-grid {
    grid-template-columns: 1fr;
  }

  .quality-grid {
    grid-template-columns: 1fr;
  }

  .mobile-action-bar a {
    font-size: 8px;
  }
}


/* =========================================================
   CRESCENT INDUSTRIAL — FINAL RESPONSIVE FIX
   ========================================================= */

html, body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden !important;
}

*, *::before, *::after {
  box-sizing: border-box;
}

img, svg, video, iframe {
  max-width: 100%;
}

@media (max-width: 920px) {
  html, body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .wrap {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .hero {
    width: 100% !important;
    max-width: 100% !important;
    min-height: auto !important;
    padding: 105px 0 55px !important;
    overflow: hidden !important;
  }

  .hero-grid {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 38px !important;
  }

  .hero-grid > div {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .hero-eyebrow {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    font-size: 10px !important;
    line-height: 1.6 !important;
    letter-spacing: .10em !important;
  }

  .hero h1 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    font-size: clamp(34px, 8.5vw, 48px) !important;
    line-height: 1.06 !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  .hero p.lede {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
    overflow-wrap: break-word !important;
  }

  .hero-ctas {
    width: 100% !important;
    max-width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
  }

  .hero-ctas .btn {
    width: 100% !important;
    max-width: 100% !important;
    justify-content: center !important;
  }

  .brochure-link {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    line-height: 1.6 !important;
  }

  .hero-visual {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }

  .hero-visual .can-illustration {
    display: block !important;
    width: 100% !important;
    max-width: 520px !important;
    height: auto !important;
    margin: 0 auto !important;
    transform: none !important;
  }

  .spec-tag {
    display: none !important;
  }

  .about-grid,
  .tech-grid,
  .sus-grid,
  .quote-grid,
  .contact-grid,
  .industry-panel {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .product-grid,
  .section-head,
  .factory-hero-inner {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  h1, h2, h3, h4, h5, p, a, li, span {
    max-width: 100%;
  }

  form {
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .field, .field.full {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    grid-column: 1 !important;
  }

  input, select, textarea {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .form-submit {
    width: 100% !important;
    grid-column: 1 !important;
  }

  .form-submit .btn {
    width: 100% !important;
  }

  .footer-grid {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
}

@media (max-width: 640px) {
  .wrap {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  nav {
    width: 100% !important;
    max-width: 100% !important;
    padding: 14px 16px !important;
  }

  .logo {
    min-width: 0 !important;
    max-width: calc(100% - 45px) !important;
    font-size: 16px !important;
  }

  .logo small {
    font-size: 7px !important;
    letter-spacing: .09em !important;
  }

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

  .hero h1 {
    font-size: clamp(32px, 9.5vw, 42px) !important;
  }

  .hero p.lede {
    font-size: 15px !important;
  }

  .hero-visual .can-illustration {
    width: 100% !important;
    max-width: 500px !important;
  }

  .product-grid,
  .quality-grid,
  .why-grid,
  .footer-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .trust-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 18px !important;
  }

  .custom-flow .flow-step {
    flex: 1 1 100% !important;
    border-right: none !important;
    border-bottom: 1px solid var(--line);
  }

  .custom-flow .flow-step:last-child {
    border-bottom: none;
  }
}

@media (max-width: 380px) {
  .wrap {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .hero h1 {
    font-size: 30px !important;
  }

  .hero-eyebrow {
    font-size: 9px !important;
  }

  .hero p.lede {
    font-size: 14px !important;
  }

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


/* ===== PERFORMANCE SAFE-GUARDS ===== */
/* Keep below-the-fold media from delaying first paint. */
img[loading="lazy"]{content-visibility:auto;}
@media (prefers-reduced-motion: reduce){
  header{backdrop-filter:none;}
}
