/*
Theme Name: Greenwire Inspection
Version: 3.3.0
Description: Greenwire solar sourcing and quality control website.
*/
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--gw-paper);color:var(--gw-graphite);font:16px/1.65 'Avenir Next',Avenir,'Segoe UI',sans-serif}a{color:inherit}p{color:var(--gw-muted)}h1,h2,h3{line-height:1.15}h1{font-size:clamp(43px,5.2vw,74px);font-weight:500;letter-spacing:-2.8px;margin:20px 0 25px}h2{font-size:clamp(30px,3.5vw,44px);font-weight:500;letter-spacing:-1.4px;margin:14px 0 22px}h3{font-size:21px;line-height:1.3;font-weight:600}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--gw-graphite)}.fine{font-size:12px}.button,button{display:inline-block;background:var(--gw-graphite);color:var(--gw-white);padding:14px 23px;border:0;border-radius:5px;text-decoration:none;font:600 14px/1.4 'Avenir Next',Avenir,'Segoe UI',sans-serif;cursor:pointer;transition:transform .25s,box-shadow .25s}.button.green{background:var(--gw-green);color:var(--gw-white)}.button.outline{background:transparent;border:1px solid var(--gw-line);color:var(--gw-graphite)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
header{background:var(--gw-white);position:sticky;top:0;z-index:5;border-bottom:1px solid var(--gw-line)}.nav{max-width:1360px;margin:auto;padding:20px 40px;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{width:210px;height:auto;display:block}nav{display:flex;gap:28px;align-items:center}nav a{text-decoration:none;font-size:14px;font-weight:600}nav .button{background:var(--gw-green);color:var(--gw-white)}nav a:not(.button):hover{text-decoration:underline;text-decoration-color:var(--gw-green);text-decoration-thickness:3px;text-underline-offset:7px}main>section,.footer-inner{max-width:1320px;margin:auto;padding:28px 40px}.section{padding-top:80px;padding-bottom:80px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:60px;margin-bottom:35px}.section-head h2{margin-bottom:0}.section-head p{max-width:400px}
main>.hero-photo{display:flex;position:relative;isolation:isolate;max-width:none;min-height:640px;padding:80px max(40px,calc((100vw - 1240px)/2));background:var(--gw-graphite) url('assets/original-hero.jpg') center/cover no-repeat;color:var(--gw-white);align-items:center}.hero-photo:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(37,55,69,.93),rgba(37,55,69,.65) 60%,rgba(37,55,69,.18))}.hero-content{max-width:860px}.hero-photo h1{line-height:1.12}.hero-photo h1 em{font-style:normal;color:var(--gw-green)}.hero-photo .eyebrow,.hero-photo p{color:var(--gw-white)}.hero-photo .intro{font-size:18px;max-width:600px}.hero-photo .outline{color:var(--gw-white);border-color:rgba(255,255,255,.65)}.hero-caption{position:absolute;right:40px;bottom:25px;font-size:10px;letter-spacing:2px;color:var(--gw-white)}
main>.video-section{max-width:none;padding:64px 0 36px}.video-intro{max-width:1320px;margin:0 auto 35px;padding:0 40px}.video-section video{width:100%;aspect-ratio:21/9;max-height:680px;object-fit:cover;display:block;background:var(--gw-graphite)}.video-caption{max-width:1240px;margin:auto;display:flex;justify-content:space-between;padding:14px 0;font-size:12px;color:var(--gw-muted)}main>.strip{max-width:1240px;background:rgba(37,55,69,.055);border-top:3px solid var(--gw-green);display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding:27px 30px;text-align:center}.strip>div{padding:0 12px}.strip span{display:block;font-size:12px;color:var(--gw-muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:var(--gw-white);border-radius:5px;overflow:hidden;border-bottom:3px solid var(--gw-green);transition:transform .3s,box-shadow .3s}.service-image{width:100%;height:225px;object-fit:cover;display:block;transition:transform .6s}.card-body{padding:25px 27px 30px}.number{font-size:12px;color:var(--gw-graphite);letter-spacing:2px;border-bottom:2px solid var(--gw-green);padding-bottom:3px}.card h3{margin-top:16px}.card p{font-size:14px;min-height:70px}.card a{font-size:13px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--gw-green)}
main>.brand-section{background:var(--gw-white);max-width:none;padding:26px 0 24px;border-top:1px solid var(--gw-line);border-bottom:1px solid var(--gw-line)}.brand-heading{max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding-bottom:12px}.brand-heading .eyebrow{font-size:10px;color:var(--gw-muted)}#brand-pause{background:none;border:0;font-size:12px;color:var(--gw-muted);cursor:pointer;padding:5px 10px}.brand-window{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}.brand-track{display:flex;width:max-content;animation:brands-left 80s linear infinite}.brand-group{display:flex;flex:none;list-style:none;margin:0;padding:0 32px 0 0;gap:32px}.brand-cell{width:184px;height:72px;flex:none;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.brand-vector{max-width:154px;width:100%;max-height:48px;object-fit:contain}.brand-vector.k2-systems{max-width:58px;max-height:58px}.brand-vector.sma{max-width:115px;max-height:52px}.brand-bitmap{position:absolute;max-width:none}.brand-window:hover .brand-track,.brand-window:focus-within .brand-track,.brand-section.paused .brand-track{animation-play-state:paused}@keyframes brands-left{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.dark{background:var(--gw-graphite);color:var(--gw-white)}.dark p{color:rgba(255,255,255,.82)}.dark .eyebrow{color:var(--gw-green)}.product-band #products{max-width:none;margin:0;padding:0}.product-intro{max-width:1320px;margin:auto;padding:72px 40px 0}.product-gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:clamp(280px,26vw,420px)}.product-panel{position:relative;display:block;min-width:0;overflow:hidden;grid-column:span 3;background:var(--gw-graphite);text-decoration:none;color:var(--gw-white)}.product-panel:nth-child(n+5){grid-column:span 4}.product-panel img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(1);transform:scale(1);transition:filter .5s ease,transform .5s cubic-bezier(.22,.61,.36,1)}.product-panel:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,20,25,.35),transparent 58%);pointer-events:none}.product-number{position:absolute;top:-.25em;right:.02em;font-size:clamp(140px,13vw,240px);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.6);z-index:1;font-weight:400;letter-spacing:-.05em}.product-panel h3{position:absolute;top:14%;left:7%;right:24%;margin:0;font-size:clamp(21px,1.8vw,32px);line-height:1.18;font-weight:700;color:var(--gw-white);z-index:2}.product-plus{position:absolute;top:13.5%;right:6%;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--gw-green);color:var(--gw-white);font-size:31px;font-weight:400;line-height:1;z-index:2}.product-panel:focus-visible{outline:3px solid var(--gw-green);outline-offset:-3px}.product-panel:focus-visible img{filter:grayscale(0);transform:scale(1.03)}@media(hover:hover){.product-panel:hover img{filter:grayscale(0);transform:scale(1.03)}}
@media(max-width:1000px){.product-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:360px}.product-panel,.product-panel:nth-child(n+5){grid-column:auto}.product-number{font-size:25vw}.product-panel h3{font-size:clamp(23px,3vw,30px)}}
@media(max-width:600px){.product-gallery{grid-template-columns:1fr;grid-auto-rows:auto}.product-panel{aspect-ratio:20/21}.product-intro{padding:50px 22px 0}.product-number{font-size:48vw}.product-panel h3{font-size:30px}.product-plus{width:50px;height:50px}}
@media(prefers-reduced-motion:reduce){.product-panel:hover img,.product-panel:focus-visible img{transform:none}}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;position:relative;padding-top:18px}.steps:before{content:'';position:absolute;left:55px;right:55px;top:73px;height:2px;background:var(--gw-green)}.steps:after{content:'';position:absolute;top:69px;right:52px;border:5px solid transparent;border-left-color:var(--gw-green);border-right:0}.step{position:relative;min-width:0}.process-icon{position:relative;display:block;width:110px;height:110px;object-fit:contain;background:var(--gw-paper);margin:0 0 25px;box-shadow:0 0 0 8px var(--gw-paper)}.step .number{display:inline-block}.step h3{font-size:20px}.step p{font-size:14px}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px}
.founder{display:grid;grid-template-columns:42% 58%;background:var(--gw-graphite);border-radius:6px;overflow:hidden;box-shadow:0 18px 50px rgba(37,55,69,.07)}.founder-photo{position:relative;min-height:580px;overflow:hidden}.founder-photo>img{width:100%;height:100%;object-fit:cover;object-position:center 26%;position:absolute;inset:0;transition:transform .7s}.photo-label{position:absolute;bottom:24px;left:24px;display:flex;align-items:center;gap:9px;background:var(--gw-white);color:var(--gw-graphite);border-radius:3px;padding:9px 15px;font-size:12px;font-weight:600}.photo-label i{height:7px;width:7px;background:var(--gw-green);border-radius:50%}.founder-copy{padding:42px 50px 35px;color:var(--gw-white);display:flex;flex-direction:column;justify-content:center;border-top:5px solid var(--gw-green)}.founder-copy .eyebrow{color:var(--gw-green)}.founder-copy h2{font-size:37px;font-weight:500;letter-spacing:-1px;line-height:1.2;margin:12px 0 6px}.founder-copy .founder-role{color:var(--gw-green);font-size:13px;margin:0 0 24px}.founder-quote{margin:0;font-style:italic}.founder-quote p{font-size:15px;line-height:1.7;color:var(--gw-white);margin:0 0 15px;font-style:italic}.founder-quote .founder-opening{font-size:23px;line-height:1.4;font-weight:500;letter-spacing:-.3px;margin-bottom:20px}.founder-signature{display:flex;align-items:center;gap:17px;margin-top:8px;color:var(--gw-white);font-size:12px;line-height:1.6}.signature-rule{width:4px;height:40px;background:var(--gw-green)}
main>.media-section{max-width:none;background:rgba(37,55,69,.055);padding-left:max(40px,calc((100vw - 1240px)/2));padding-right:max(40px,calc((100vw - 1240px)/2))}.media-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:50px;align-items:center}.media-layout video{width:100%;aspect-ratio:16/9;object-fit:contain;background:var(--gw-graphite);border-radius:5px}.media-copy h3{font-size:27px}.faq{max-width:840px}details{border-bottom:1px solid var(--gw-line);padding:22px 0}summary{cursor:pointer;font-weight:600}details p{font-size:15px}.notice{padding:16px;background:var(--gw-white);border-left:4px solid var(--gw-green)}
main>.contact-section{max-width:none;margin:0;background:var(--gw-green);padding:52px max(32px,calc((100vw - 1180px)/2)) 26px;color:var(--gw-white)}.contact-heading{text-align:center;margin:0 auto 34px}.contact-heading .eyebrow{color:var(--gw-white);font-size:10px;letter-spacing:2px}.contact-heading h2{font-size:clamp(32px,3.6vw,48px);font-weight:600;letter-spacing:-1.3px;line-height:1.2;margin:12px 0;color:var(--gw-white)}.contact-heading p{font-size:17px;color:var(--gw-white);margin:0}.contact-heading-rule{display:block;height:3px;width:48px;background:var(--gw-white);margin:23px auto 0;border-radius:2px}.contact-form-card{background:var(--gw-white);padding:36px 46px 32px;border-radius:8px;box-shadow:0 18px 45px rgba(37,55,69,.13);color:var(--gw-graphite)}.contact-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.quick-enquiry label{display:block;font-family:inherit;font-size:12px;font-weight:600;margin:0}.quick-enquiry label>span{font-size:11px;font-weight:400;color:var(--gw-muted)}.quick-enquiry input,.quick-enquiry select,.quick-enquiry textarea{display:block;font-family:inherit;font-size:15px;font-weight:400;color:var(--gw-graphite);width:100%;padding:15px 17px;background:var(--gw-white);border:1px solid var(--gw-line);border-radius:6px;box-shadow:none;margin-top:8px;min-height:54px;transition:border-color .2s,box-shadow .2s}.quick-enquiry input::placeholder,.quick-enquiry textarea::placeholder{color:var(--gw-muted);opacity:1}.quick-enquiry input:focus,.quick-enquiry select:focus,.quick-enquiry textarea:focus{outline:none;border-color:var(--gw-green);box-shadow:0 0 0 3px rgba(50,195,108,.16)}.quick-enquiry .request-label{margin-top:22px}.quick-enquiry select{-webkit-appearance:none;appearance:none;background:var(--gw-white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23253745' stroke-width='1.8'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 17px center/18px no-repeat;padding-right:45px}.contact-details{padding:0;border:0;margin-top:16px}.contact-details summary{font-size:12px;font-weight:500;color:var(--gw-graphite);display:list-item;margin-left:14px}.contact-details summary span{color:var(--gw-muted);font-size:11px}.quick-enquiry textarea{min-height:90px;resize:vertical}.quick-enquiry .contact-consent{display:flex;justify-content:center;align-items:center;gap:9px;font-size:11px;font-weight:400;margin-top:24px}.quick-enquiry .contact-consent input{width:15px;height:15px;min-height:0;flex:none;margin:0;padding:0;accent-color:var(--gw-green)}.quick-enquiry .contact-consent span{font-size:11px;color:var(--gw-muted)}.contact-submit{display:flex;align-items:stretch;justify-content:center;margin:20px auto 0;padding:0;border:0;border-radius:5px;background:var(--gw-graphite);color:var(--gw-white);font-size:14px;font-weight:600;overflow:hidden}.contact-submit>span:first-child{padding:17px 31px}.contact-submit .submit-arrow{padding:13px 20px;border-left:1px solid rgba(255,255,255,.2);font-size:22px;line-height:1.3}.contact-submit:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(37,55,69,.18)}.contact-preview-note{text-align:center;font-size:10px;letter-spacing:.2px;color:var(--gw-white);margin:15px 0 0}.contact-success{font-size:13px;color:var(--gw-graphite);text-align:center;margin:15px 0 0}.contact-section .notice{font-size:13px;margin:0 0 20px;background:var(--gw-paper)}
footer{background:var(--gw-white)}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:12px;padding-top:34px;padding-bottom:34px}.footer-inner a{text-decoration-color:var(--gw-green);text-underline-offset:4px}.trap,.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;z-index:20;background:var(--gw-white);padding:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}:focus-visible{outline:3px solid var(--gw-graphite);outline-offset:4px}
@media(hover:hover){.button:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(37,55,69,.16)}.card:hover{transform:translateY(-6px);box-shadow:0 18px 35px rgba(37,55,69,.13)}.card:hover .service-image{transform:scale(1.025)}.founder:hover .founder-photo>img{transform:scale(1.025)}}
@media(min-width:1600px){main>.hero-photo{min-height:710px}}@media(max-width:1320px){.brand-heading,.video-caption{padding-left:40px;padding-right:40px}}@media(max-width:1000px){nav{gap:16px}.section-head{gap:30px}.founder-copy{padding:32px}.founder-copy h2{font-size:32px}.founder-photo{min-height:610px}.media-layout{gap:25px}}
@media(max-width:850px){.nav,main>section,.footer-inner{padding-left:22px;padding-right:22px}.nav{padding-top:18px;padding-bottom:18px}.logo{width:180px}nav a:not(.button){display:none}main>.hero-photo{padding:60px 24px;min-height:570px;background-position:60% center}.hero-photo h1{letter-spacing:-1.5px}.hero-caption{right:24px}.hero-photo .intro{font-size:17px}.section{padding-top:55px;padding-bottom:55px}.cards{grid-template-columns:1fr 1fr}.service-image{height:200px}.section-head{display:block}.section-head h2{margin-bottom:20px}.split,.media-layout{grid-template-columns:1fr;gap:28px}.video-intro{padding:0 22px}.video-section video{aspect-ratio:16/9}.video-caption{padding:14px 22px}.brand-heading{padding-left:22px;padding-right:22px}.brand-group{gap:16px;padding-right:16px}.footer-inner{flex-wrap:wrap}.founder-copy{padding:30px}.founder{grid-template-columns:1fr}.founder-photo{min-height:0;aspect-ratio:4/3.7}.founder-photo>img{object-position:center 24%}}
@media(max-width:700px){main>.contact-section{padding:36px 20px 23px}.contact-heading{margin-bottom:26px}.contact-heading h2{font-size:33px;letter-spacing:-1px}.contact-heading p{font-size:14px;max-width:290px;margin:auto}.contact-heading .eyebrow{font-size:9px;letter-spacing:1.1px}.contact-form-card{padding:25px 22px;border-radius:7px}.contact-fields{grid-template-columns:1fr;gap:17px}.quick-enquiry .request-label{margin-top:17px}.quick-enquiry input,.quick-enquiry select,.quick-enquiry textarea{font-size:16px}.quick-enquiry .contact-consent{align-items:flex-start;justify-content:flex-start}.quick-enquiry .contact-consent input{margin-top:2px}.contact-submit{width:100%;justify-content:space-between}.contact-submit>span:first-child{flex:1}.contact-preview-note{font-size:9px}.steps{grid-template-columns:repeat(4,220px);overflow-x:auto;padding:18px 0 10px}.steps:before{right:auto;width:750px}.steps:after{right:auto;left:801px}}
@media(max-width:500px){.cards{grid-template-columns:1fr}.logo{width:150px}.nav{gap:10px}.nav .button{padding:11px}main>.hero-photo{min-height:540px}.hero-photo h1{font-size:48px}.hero-photo .eyebrow{font-size:10px;letter-spacing:1.3px}.hero-photo .button{font-size:12px;padding:13px 16px}.hero-caption{font-size:8px}main>.strip{grid-template-columns:1fr;gap:20px}.card p{min-height:0}.founder-copy{padding:27px}.founder-copy h2{font-size:31px}.founder-quote p{font-size:14px}.founder-quote .founder-opening{font-size:21px}.photo-label{bottom:18px;left:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.brand-track{animation:none}.brand-window{overflow-x:auto}.brand-group[aria-hidden=true]{display:none}}

/* User-supplied count: 230 factories inspected. */
main>.about-section{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.about-inspection-photo{position:relative;margin-right:20px}.about-factory-image{display:block;width:100%;aspect-ratio:1.1;object-fit:cover;object-position:45% center;border-radius:12px}.factory-inspected-badge{position:absolute;right:-30px;bottom:30px;width:200px;padding:26px 22px;background:var(--gw-green);color:var(--gw-white);border-radius:10px;box-shadow:0 15px 32px rgba(37,55,69,.13)}.factory-inspected-badge svg{width:58px;height:58px;display:block;margin-bottom:18px;color:var(--gw-white)}.factory-inspected-badge strong{display:block;font-size:52px;line-height:1.05;font-weight:700;letter-spacing:-1px;color:var(--gw-white)}.factory-inspected-badge span{display:block;margin-top:12px;font-size:16px;font-weight:600;line-height:1.3;color:var(--gw-white)}.about-copy .button{margin-top:12px}@media(max-width:850px){main>.about-section{grid-template-columns:1fr;gap:35px}.about-inspection-photo{margin-right:20px}.about-factory-image{aspect-ratio:4/3}.factory-inspected-badge{right:-20px;bottom:24px}.about-copy{max-width:620px}}@media(max-width:500px){.factory-inspected-badge{width:160px;padding:20px 18px;bottom:20px}.factory-inspected-badge svg{height:42px;width:42px;margin-bottom:12px}.factory-inspected-badge strong{font-size:43px}.factory-inspected-badge span{font-size:13px;margin-top:9px}.about-factory-image{aspect-ratio:1.12}}

.video-player{position:relative}.video-play-fallback{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;background:var(--gw-green);color:var(--gw-white);box-shadow:0 8px 30px rgba(0,0,0,.2);display:flex;align-items:center;gap:10px;padding:16px 24px;white-space:nowrap}.video-play-fallback:hover{background:var(--gw-green)}.video-play-fallback span{font-size:20px}.video-open-link{position:absolute;top:16px;right:16px;z-index:2;background:var(--gw-graphite);color:var(--gw-white);padding:9px 13px;border-radius:4px;font-size:12px;text-decoration:none}.video-play-fallback[hidden],.video-open-link[hidden]{display:none}.video-play-fallback:focus-visible,.video-open-link:focus-visible{outline-color:var(--gw-white)}
.about-factory-image{aspect-ratio:4/3;object-position:center}.factory-inspected-badge{left:-20px;right:auto;top:24px;bottom:auto}@media(max-width:850px){.about-inspection-photo{margin-left:20px;margin-right:0}.factory-inspected-badge{left:-20px;right:auto;top:24px;bottom:auto}}@media(max-width:500px){.factory-inspected-badge{left:-20px;top:20px;right:auto;bottom:auto}}
