/*
Theme Name: Apex Polyfab
Theme URI: https://apexpolyfab.com
Author: Apex Polyfab
Description: Business theme for Apex Polyfab, PP woven bag manufacturer in Gujarat, India. Includes an editable Products section (Products menu in the dashboard), enquiry form, SEO fields, schema, breadcrumbs and sitemap support.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: apex-polyfab
*/
:root{--navy:#0b2545;--navy2:#13315c;--orange:#e8731a;--orange-d:#c85f0e;--ink:#1d2733;--muted:#5b6776;--line:#dfe4ea;--soft:#f4f6f9;--white:#fff;--r:6px;--w:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:"Inter","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);line-height:1.65;font-size:16.5px;background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}a{color:var(--navy2)}a:hover{color:var(--orange-d)}
h1,h2,h3,h4{font-family:"Inter","Segoe UI",Roboto,Arial,sans-serif;color:var(--navy);line-height:1.22;margin:0 0 .6em;font-weight:700}
h1{font-size:clamp(1.8rem,3.6vw,2.7rem)}h2{font-size:clamp(1.4rem,2.5vw,1.95rem)}h3{font-size:1.15rem}
p{margin:0 0 1em}.wrap{max-width:var(--w);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:99}
/* header */
.topbar{background:var(--navy);color:#cfd8e6;font-size:.86rem}.topbar .wrap{display:flex;justify-content:space-between;gap:12px;padding-top:7px;padding-bottom:7px;flex-wrap:wrap}.topbar a{color:#fff;text-decoration:none}
.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px}
.brand img{height:58px;width:auto}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;align-items:center}
.nav li{position:relative}
.nav a{display:block;padding:10px 13px;color:var(--navy);text-decoration:none;font-weight:600;font-size:.96rem;border-radius:var(--r)}
.nav a:hover,.nav .current-menu-item>a,.nav .current-menu-ancestor>a{color:var(--orange-d)}
.nav .sub-menu{display:none;position:absolute;left:0;top:100%;background:#fff;border:1px solid var(--line);box-shadow:0 8px 24px rgba(11,37,69,.12);min-width:290px;padding:6px;flex-direction:column;align-items:stretch;gap:0}
.nav li:hover>.sub-menu,.nav li:focus-within>.sub-menu{display:flex}
.nav .sub-menu a{font-weight:500;font-size:.93rem}
.nav .menu-quote>a{background:var(--orange);color:#fff;margin-left:6px}.nav .menu-quote>a:hover{background:var(--orange-d);color:#fff}
.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:var(--r);padding:9px 13px;font-weight:600;color:var(--navy);cursor:pointer}
/* buttons */
.btn{display:inline-block;padding:13px 24px;border-radius:var(--r);font-weight:600;text-decoration:none;border:2px solid transparent;cursor:pointer;font-size:1rem;font-family:inherit;line-height:1.2}
.btn-primary{background:var(--orange);color:#fff}.btn-primary:hover{background:var(--orange-d);color:#fff}
.btn-outline{border-color:#fff;color:#fff}.btn-outline:hover{background:#fff;color:var(--navy)}
.btn-dark{background:var(--navy);color:#fff}.btn-dark:hover{background:var(--navy2);color:#fff}
.btn-line{border-color:var(--navy);color:var(--navy)}.btn-line:hover{background:var(--navy);color:#fff}
/* hero */
.hero{background:linear-gradient(135deg,var(--navy) 0%,var(--navy2) 100%);color:#fff;padding:64px 0}
.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.hero h1{color:#fff}.hero p{color:#d7e0ee;max-width:60ch}
.hero .btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.hero-img{background:#fff;border-radius:10px;padding:14px}.hero-img img{border-radius:6px;width:100%;aspect-ratio:4/5;object-fit:cover}
.kicker{color:var(--orange);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;margin-bottom:10px;display:block}
/* sections */
.section{padding:62px 0}.section.alt{background:var(--soft)}.section-head{max-width:720px;margin-bottom:34px}.section-head p{color:var(--muted)}
.grid{display:grid;gap:24px}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}.g2{grid-template-columns:repeat(2,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s}
.card:hover{box-shadow:0 8px 22px rgba(11,37,69,.1)}
.card .thumb{background:var(--soft);aspect-ratio:1/1;overflow:hidden}.card .thumb img{width:100%;height:100%;object-fit:cover}
.card .body{padding:18px 20px 22px;display:flex;flex-direction:column;flex:1}.card h3{margin-bottom:.4em}.card h3 a{text-decoration:none}.card p{color:var(--muted);font-size:.95rem;flex:1}
.more{font-weight:600;text-decoration:none;color:var(--orange-d)}
.box{background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);padding:20px 22px;border-radius:var(--r)}
.steps{counter-reset:s;list-style:none;padding:0;margin:0}.steps li{counter-increment:s;position:relative;padding:0 0 18px 56px}.steps li:before{content:counter(s);position:absolute;left:0;top:0;width:38px;height:38px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:700}
.ticks{list-style:none;padding:0;margin:0 0 1em}.ticks li{padding:5px 0 5px 28px;position:relative}.ticks li:before{content:"";position:absolute;left:3px;top:13px;width:11px;height:6px;border-left:3px solid var(--orange);border-bottom:3px solid var(--orange);transform:rotate(-45deg)}
table.specs{width:100%;border-collapse:collapse;margin:0 0 1.2em}.specs th,.specs td{text-align:left;padding:11px 14px;border:1px solid var(--line);vertical-align:top}.specs th{background:var(--soft);width:36%;color:var(--navy)}
.faq details{border:1px solid var(--line);border-radius:var(--r);background:#fff;margin-bottom:10px}.faq summary{padding:14px 18px;cursor:pointer;font-weight:600;color:var(--navy)}.faq details p{padding:0 18px;margin:0 0 14px;color:var(--muted)}
.cta{background:var(--navy);color:#fff;padding:52px 0;text-align:center}.cta h2{color:#fff}.cta p{color:#cfd8e6;max-width:60ch;margin:0 auto 22px}
/* page */
.page-head{background:var(--soft);border-bottom:1px solid var(--line);padding:30px 0 28px}.page-head h1{margin:6px 0 0}
.crumbs{font-size:.86rem;color:var(--muted)}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--orange-d)}.crumbs span.sep{margin:0 6px}
.content{padding:44px 0 56px}.content .wrap.cols{display:grid;grid-template-columns:1fr 360px;gap:44px;align-items:start}
.entry>*:first-child{margin-top:0}.entry h2{margin-top:1.5em}.entry ul{padding-left:1.2em}
.side{position:sticky;top:100px}.side .box+.box{margin-top:18px}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0 6px}.gallery img{border:1px solid var(--line);border-radius:var(--r);width:100%;aspect-ratio:3/4;object-fit:contain;background:var(--soft)}
.main-img img{border:1px solid var(--line);border-radius:8px;width:100%;max-height:560px;object-fit:contain;background:var(--soft)}
/* form */
.form{background:#fff;border:1px solid var(--line);border-radius:8px;padding:24px}.form h2,.form h3{margin-top:0}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form label{display:block;font-weight:600;font-size:.9rem;margin:0 0 4px;color:var(--navy)}
.form input,.form select,.form textarea{width:100%;padding:11px 12px;border:1px solid #c3ccd8;border-radius:var(--r);font:inherit;background:#fff}.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--orange);border-color:var(--orange)}
.form .f{margin-bottom:14px}.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.notice{padding:14px 18px;border-radius:var(--r);margin-bottom:18px;font-weight:500}.notice.ok{background:#e8f6ee;border:1px solid #9bd3b0;color:#14532d}.notice.err{background:#fdecec;border:1px solid #f1a6a6;color:#7f1d1d}
/* footer */
.site-footer{background:#07182e;color:#b9c5d6;padding:52px 0 0;font-size:.95rem}.site-footer h3{color:#fff;font-size:1rem;margin-bottom:.8em}
.site-footer a{color:#b9c5d6;text-decoration:none}.site-footer a:hover{color:#fff}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li{padding:3px 0}
.site-footer .grid{grid-template-columns:1.4fr 1fr 1.2fr 1.2fr}.foot-logo{background:#fff;display:inline-block;padding:8px 12px;border-radius:6px;margin-bottom:14px}.foot-logo img{height:48px;width:auto}
.copy{border-top:1px solid #1d3351;margin-top:36px;padding:16px 0;font-size:.85rem}
.wa{position:fixed;right:16px;bottom:16px;background:#25d366;color:#fff;border-radius:50px;padding:11px 18px;font-weight:600;text-decoration:none;z-index:40;box-shadow:0 4px 14px rgba(0,0,0,.2)}.wa:hover{color:#fff;background:#1da851}
@media(max-width:960px){
.hero .wrap,.content .wrap.cols{grid-template-columns:1fr}.g3,.g4{grid-template-columns:repeat(2,1fr)}.site-footer .grid{grid-template-columns:1fr 1fr}.side{position:static}
.menu-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);padding:10px 20px 18px;max-height:80vh;overflow:auto}.nav.open{display:block}
.nav ul{flex-direction:column;align-items:stretch}.nav .sub-menu{display:flex;position:static;border:0;box-shadow:none;padding:0 0 0 14px;min-width:0}.nav .menu-quote>a{margin:8px 0 0;text-align:center}
.site-header .wrap{position:relative}.hero{padding:40px 0}.hero-img{max-width:380px}}
@media(max-width:600px){.g2,.g3,.g4,.form .row,.site-footer .grid{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}.section{padding:44px 0}.brand img{height:48px}.topbar .wrap{justify-content:center}}

/* ===== Design v2: woven-pattern industrial look ===== */
:root{--r:2px;--weave:repeating-linear-gradient(0deg,rgba(11,37,69,.045) 0 1px,transparent 1px 7px),repeating-linear-gradient(90deg,rgba(11,37,69,.045) 0 1px,transparent 1px 7px)}
body{background:#fff}
h1,h2{letter-spacing:-.015em}
.tag{display:inline-block;background:var(--orange);color:#fff;font-weight:700;font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px 4px 12px;margin-bottom:14px;clip-path:polygon(0 0,100% 0,calc(100% - 8px) 100%,0 100%)}
.btn{border-radius:2px;text-transform:none;letter-spacing:.01em}
.btn-line{border-color:var(--navy);color:var(--navy);background:transparent}
.topbar{background:#07182e}
.site-header{border-bottom:3px solid var(--orange)}
.nav a{border-radius:0;position:relative}.nav>ul>li>a:after{content:"";position:absolute;left:13px;right:13px;bottom:4px;height:2px;background:var(--orange);transform:scaleX(0);transition:transform .2s}
.nav>ul>li:hover>a:after,.nav>ul>.current-menu-item>a:after{transform:scaleX(1)}.nav .menu-quote>a:after{display:none}
.hero2{background:#eef2f7 var(--weave);border-bottom:1px solid var(--line);padding:56px 0 64px;position:relative;overflow:hidden}
.hero2:before{content:"";position:absolute;right:-120px;top:0;bottom:0;width:48%;background:var(--navy);clip-path:polygon(22% 0,100% 0,100% 100%,0 100%)}
.hero2 .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;position:relative}
.hero2 h1{font-size:clamp(2rem,4vw,3.1rem)}.hero2 .lead{font-size:1.1rem;color:var(--ink);max-width:56ch}.hero2 p{color:var(--muted);max-width:58ch}
.hero2 .btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.hero-art{position:relative;aspect-ratio:1/1;max-width:520px;width:100%;margin-left:auto}
.hero-art img{position:absolute;width:62%;height:auto;border-radius:6px;box-shadow:0 18px 38px rgba(0,0,0,.35);background:#eef2f7}
.hero-art .b1{left:0;top:10%;z-index:2}.hero-art .b2{right:0;top:0;z-index:1}.hero-art .b3{left:22%;bottom:0;z-index:3}
.hero-art>img:only-child{position:static;width:100%}
.bagstrip{background:var(--navy);color:#fff}.bagstrip .wrap{display:grid;grid-template-columns:repeat(5,1fr)}
.bagstrip a{color:#fff;text-decoration:none;padding:18px 16px;font-weight:600;font-size:.95rem;border-left:1px solid rgba(255,255,255,.14);display:flex;gap:10px;align-items:center}.bagstrip a:last-child{border-right:1px solid rgba(255,255,255,.14)}
.bagstrip a:hover{background:var(--orange);color:#fff}.bagstrip b{color:var(--orange);font-size:.82rem}.bagstrip a:hover b{color:#fff}
.sec-title{max-width:720px;margin-bottom:30px}.sec-title h2{margin-bottom:.3em}.sec-title p{color:var(--muted)}
.tiles .card{border-radius:0;border:1px solid var(--line);border-top:4px solid var(--navy);position:relative}
.tiles .card:hover{border-top-color:var(--orange);box-shadow:0 10px 26px rgba(11,37,69,.12)}
.tiles .thumb{background:#eef2f7 var(--weave);aspect-ratio:1/1}.tiles .thumb img{object-fit:contain;padding:6px}
.tiles .num{position:absolute;right:14px;top:14px;font-size:.8rem;font-weight:700;color:#aab6c6;letter-spacing:.08em}
.tiles .card .body{position:relative}.card h3{font-size:1.05rem}
.card{border-radius:0}
.alt{background:#f4f6f9 var(--weave)}
.split{gap:48px;align-items:start}
.box{border-radius:0;border-left:4px solid var(--orange)}
.tablewrap{overflow-x:auto}table.guide thead th{background:var(--navy);color:#fff;border-color:var(--navy)}table.guide td:first-child{font-weight:600;color:var(--navy);width:34%}
.specs th,.specs td{background:#fff}
.form-band .form{border-top:4px solid var(--orange);border-radius:0}
.form{border-radius:0}.form input,.form select,.form textarea{border-radius:2px}
.page-head{background:#eef2f7 var(--weave);border-bottom:3px solid var(--navy)}
.main-img img{background:#eef2f7 var(--weave)}
.gallery img{background:#eef2f7}
.site-footer{border-top:4px solid var(--orange)}
.float{position:fixed;right:14px;bottom:14px;display:flex;flex-direction:column;gap:8px;z-index:60;align-items:flex-end}
.fl{border:0;cursor:pointer;color:#fff;font:600 .92rem/1 inherit;font-family:inherit;padding:13px 18px;border-radius:2px;text-decoration:none;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.fl-call{background:var(--navy)}.fl-wa{background:#1da851}.fl-q{background:var(--orange)}.fl:hover{color:#fff;filter:brightness(.92)}
.qdialog{border:0;padding:0;max-width:640px;width:calc(100% - 28px);border-top:4px solid var(--orange);box-shadow:0 20px 60px rgba(0,0,0,.4);max-height:92vh;overflow:auto}
.qdialog::backdrop{background:rgba(7,24,46,.65)}.qdialog .form{border:0}
.qclose{position:absolute;right:10px;top:6px;background:none;border:0;font-size:2rem;line-height:1;cursor:pointer;color:var(--navy);z-index:2}
@media(max-width:960px){.hero2:before{display:none}.hero2 .wrap{grid-template-columns:1fr}.hero-art{margin:10px auto 0;max-width:420px}.bagstrip .wrap{grid-template-columns:repeat(2,1fr)}.bagstrip a{border-bottom:1px solid rgba(255,255,255,.14)}}
@media(max-width:600px){.float{flex-direction:row;left:10px;right:10px;bottom:10px}.fl{flex:1;text-align:center;padding:13px 6px}.site-footer{padding-bottom:70px}}
