*{box-sizing:border-box}body{margin:0;color:#242424;background:#fff;}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}img{max-width:100%}h1,h2,h3,p{margin-top:0}h2{font-weight:600}button{cursor:pointer}.fc-wrap{width:86%;max-width:1640px;margin:auto}.fc-header{height:112px;background:linear-gradient(#183138dc,#183138dc),var(--header-image) center 20%/cover;color:white;display:flex;align-items:center;justify-content:space-between;padding:18px 7%;position:relative;z-index:20}.fc-home .fc-header{position:fixed;top:0;left:0;width:100%;background:#132b32b8}.fc-brand img{width:106px;max-height:78px;object-fit:contain}.fc-header nav{display:flex;gap:36px;align-items:center;}.fc-header nav a{padding:8px 0}.fc-header nav a:hover{color:#f9b600}.fc-menu{display:none;border:0;background:none;color:white;}.fc-hero{position:relative}.fc-hero img{width:100%;height:min(56vw,1080px);object-fit:cover}.fc-hero-caption{position:absolute;left:7%;bottom:10%;color:#fff;text-shadow:0 1px 4px #333}.fc-about{padding-top:140px;padding-bottom:140px;display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.fc-about h2{margin-bottom:6px}.fc-subtitle,.fc-title p{color:#999;}.fc-about p:not(.fc-subtitle){line-height:1.9;text-align:justify;margin-bottom:6px}.fc-about>img{width:100%}.fc-more{display:inline-block;border:1px solid #333;padding:3px 22px;margin-top:18px}.fc-title{text-align:center;margin-bottom:64px}.fc-title h2{margin-bottom:6px}.fc-collage{height:700px;display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:14px;margin-bottom:140px}.fc-collage a{position:relative;overflow:hidden}.fc-collage img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.fc-collage a:hover img{transform:scale(1.025)}.fc-collage a:first-child{grid-row:span 2}.fc-collage a:nth-child(2){grid-column:span 2}.fc-collage-2 a:nth-child(2){grid-row:span 2;grid-column:auto}.fc-collage-3 a:first-child{grid-row:auto;grid-column:span 2}.fc-collage-3 a:nth-child(2){grid-column:auto;grid-row:span 2}.fc-collage span{position:absolute;top:24px;left:24px;color:white;text-shadow:0 1px 6px #222;line-height:1.6}.fc-news h2 small{font-weight:400;color:#999;margin-left:20px}.fc-news-preview{display:grid;grid-template-columns:42% 1fr;gap:10%;margin-top:55px}.fc-news-preview>a>img{width:100%;max-height:620px;object-fit:cover}.fc-news-row{display:block;padding:32px 0;border-bottom:1px solid #555}.fc-news-row time{display:block;color:#999;margin-bottom:14px}.fc-news-row h3{line-height:1.7}.fc-contact{padding-top:140px;padding-bottom:140px}.fc-contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6%}.fc-contact-grid>a{border:1px solid #ccc;box-shadow:0 1px 7px #0002;border-radius:9px;text-align:center;padding:30px 12px 45px}.fc-contact-grid i{display:block;color:#e7803d;margin-bottom:34px}.fc-contact-grid h3{}.fc-contact-grid span{color:#999;}.fc-footer{background:#898989;color:white;padding:50px 0}.fc-footer-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:12%;align-items:center}.fc-footer-logo{width:95px;max-height:85px;object-fit:contain}.fc-footer h3{}.fc-footer p{line-height:1.8}.fc-footer i{margin-right:16px}.fc-social{display:flex;gap:14px;margin:32px 0 15px}.fc-social img{width:65px;height:65px;object-fit:contain}.fc-page-hero{height:440px;background-size:cover;background-position:center 48%;display:grid;place-items:center;color:white;text-align:center}.fc-page-hero>div{background:#14232590;padding:25px 80px}.fc-page-hero h1{}.fc-catalog{display:grid;grid-template-columns:27% 1fr;gap:6%;padding-top:90px}.fc-catalog aside h2{font-weight:400;color:#888;border-bottom:2px solid #444;padding-bottom:18px;margin-bottom:30px}.fc-search{display:flex;border:1px solid #ccc;margin-bottom:65px}.fc-search input{width:100%;min-width:0;border:0;padding:12px}.fc-search button{background:white;border:0;border-left:1px solid #ccc;padding:12px}.fc-category-link{display:block;color:#888;margin:25px 0}.fc-category-link:before{content:"";display:inline-block;width:19px;height:19px;border:1px solid #bbb;margin-right:24px}.fc-category-link.selected:before{background:#19343a}.fc-category-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 25px;padding-top:40px}.fc-category-overview img{width:100%;height:190px;object-fit:cover}.fc-category-overview h3{text-align:center;color:#999;margin-top:20px}.fc-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px}.fc-card img{width:100%;height:240px;object-fit:cover}.fc-card span{display:none}.fc-card p,.fc-card small{color:#999;margin:12px 0}.fc-card h3{}.fc-pagination{display:flex;justify-content:center;gap:24px;padding:50px}.fc-database-page{padding-top:100px;padding-bottom:50px;line-height:1.9;overflow-wrap:anywhere}.fc-database-page>h1{text-align:center;margin-bottom:65px}.fc-database-page h2{text-align:center;margin:85px 0 40px}.fc-database-page p{margin-bottom:20px}.fc-editorial-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:35px 0}.fc-editorial-images img{width:100%;height:100%;max-height:650px;object-fit:contain}.fc-database-page>img{display:block;max-width:100%;height:auto;margin:25px auto}.fc-news-page{padding-top:100px}.fc-news-page .fc-title{color:#e5a100;margin-top:80px}.fc-news-page .fc-news-preview>div{max-height:580px;overflow:auto}.fc-news-gallery{display:grid;grid-template-columns:1fr 1fr;gap:30px}.fc-news-gallery img{width:100%;height:440px;object-fit:cover}.fc-news-gallery h3{text-align:center;color:#999;margin:20px}.fc-form-wrap{margin-bottom:100px}#factoryContact{border:1px solid #333;padding:50px;display:grid;grid-template-columns:1fr 1fr;gap:40px}#factoryContact input,#factoryContact textarea{display:block;width:100%;border:1px solid #444;padding:18px;margin-bottom:35px;background:#fcfafb}#factoryContact button{border:0;border-radius:40px;background:#ffbc00;padding:12px 70px;display:block;margin:auto}.fc-detail{width:86%;max-width:1500px;margin:90px auto;display:grid;grid-template-columns:1.2fr 1fr;gap:7%}.fc-detail-media>img{width:100%;height:550px;object-fit:contain}.fc-detail-media>div{display:flex;gap:12px;overflow:auto;margin-top:20px}.fc-detail-media button{border:1px solid #ddd;background:white;flex:0 0 85px}.fc-detail-media button img{width:85px;height:85px;object-fit:cover}.fc-detail-info h1{}.fc-detail-info p{line-height:1.9;margin-top:25px}.fc-inquiry{display:inline-block;padding:14px 30px;border:1px solid #444;margin-top:20px}.fc-detail-info dl>div{display:flex;gap:25px}.storefront-detail-images img{max-width:100%}
@media(min-width:1700px){body{}.fc-about h2{}.fc-collage{height:1000px;margin-bottom:180px}.fc-about{padding-top:160px;padding-bottom:160px}.fc-news-row h3{}}
@media(max-width:1000px){.fc-header{height:80px;padding:12px 6%}.fc-brand img{width:70px}.fc-header nav{gap:18px;}.fc-collage{height:470px;margin-bottom:85px}.fc-about{padding-top:80px;padding-bottom:80px;gap:5%}.fc-contact{padding:90px 0}.fc-contact-grid{gap:20px}.fc-contact-grid h3{}.fc-contact-grid span{}.fc-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.fc-wrap{width:90%}.fc-header{height:68px}.fc-menu{display:block}.fc-header nav{display:none;position:absolute;top:68px;left:0;right:0;background:#193138;padding:20px;flex-direction:column}.fc-header.open nav{display:flex}.fc-hero img{height:72vh}.fc-hero-caption{}.fc-about{grid-template-columns:1fr;gap:30px;padding:60px 0}.fc-title{margin-bottom:30px}h2{}.fc-collage{height:390px;gap:5px;margin-bottom:60px}.fc-collage span{top:10px;left:10px;}.fc-news-preview{grid-template-columns:1fr;gap:20px;margin-top:25px}.fc-news-preview>a>img{max-height:330px}.fc-news-row{padding:20px 0}.fc-news h2 small{display:block;margin:10px 0}.fc-contact-grid{grid-template-columns:1fr}.fc-contact-grid>a{padding:24px}.fc-contact-grid i{margin-bottom:14px}.fc-footer-grid{grid-template-columns:1fr;gap:35px}.fc-page-hero{height:250px}.fc-catalog{grid-template-columns:1fr;padding-top:35px;gap:25px}.fc-catalog aside h2{margin:20px 0}.fc-category-link{display:inline-block;margin:5px 10px 5px 0}.fc-category-link:before{margin-right:7px;width:13px;height:13px}.fc-search{margin-bottom:20px}.fc-category-overview{grid-template-columns:1fr 1fr;gap:20px}.fc-category-overview img{height:140px}.fc-card img{height:180px}.fc-database-page{padding-top:50px}.fc-editorial-images{gap:10px}.fc-news-gallery img{height:220px}.fc-news-gallery h3{}.fc-detail{grid-template-columns:1fr;margin:40px auto;gap:35px}.fc-detail-media>img{height:350px}#factoryContact{padding:22px;grid-template-columns:1fr;gap:0}#factoryContact input{margin-bottom:20px}.fc-page-hero>div{padding:20px 40px}}

.fc-join-hero{padding:100px 30px;text-align:center;color:white;background-size:cover;background-position:center}.fc-join-hero a{display:inline-block;border-radius:25px;padding:12px 45px;background:#ffbd00;color:#222}.fc-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;counter-reset:steps;list-style:none;padding:0}.fc-steps li{counter-increment:steps;padding:25px;border:1px solid #ddd;border-radius:25px;text-align:center}.fc-steps li:before{content:"step " counter(steps);color:#e1aa00;display:block}.fc-social img{width:330px;height:auto;max-height:105px;object-fit:contain;object-position:left}@media(max-width:640px){.fc-steps{grid-template-columns:1fr 1fr;gap:12px}.fc-social img{width:260px}}

.fc-catalog .plsearchform{margin-bottom:45px}.fc-catalog .plsearchform .row{gap:14px}.fc-catalog .plsearchform .btnsearch{background:white;color:#444;border:1px solid #bbb}.fc-catalog .plsearchform input,.fc-catalog .plsearchform select{border-radius:0;padding:12px}.fc-catalog .plsearchform .btnsearch{width:100%}.fc-database-page time{display:block;color:#999;text-align:center}.fc-detail form{display:grid;gap:16px}
.fc-history{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;text-align:center}.fc-history h3{}.fc-history img{width:100%}@media(max-width:640px){.fc-history{grid-template-columns:1fr}.fc-history h3{}}

.fc-intro{display:grid;grid-template-columns:240px minmax(0,1fr);gap:55px;align-items:start;margin:35px 0}.fc-intro>img{width:100%;height:auto;margin-top:8px}.fc-intro>div>p:first-child{font-weight:600}.fc-intro p{margin-bottom:12px}@media(max-width:1000px){.fc-intro{grid-template-columns:160px minmax(0,1fr);gap:30px}}@media(max-width:640px){.fc-intro{grid-template-columns:90px minmax(0,1fr);gap:20px}.fc-intro>div>p:first-child{}}
/* The editable editorial layout follows the full-width company presentation. */
.fc-database-page:has(.fc-about-document){width:100%;max-width:none;padding:0;line-height:1.65}.fc-database-page:has(.fc-about-document)>h1{display:none}.fc-about-document{color:#888}.fc-about-document .fa-wrap{width:86.7%;max-width:1664px;margin-inline:auto}.fc-about-document h3{color:#262622;font-weight:600}.fc-about-document p{margin:0}.fc-about-document .fa-title{font-weight:600;line-height:1.3;color:#111;text-align:center;margin:0 0 clamp(45px,5vw,96px)}.fa-introduction{padding-top:clamp(65px,6.8vw,130px)}.fa-intro{display:grid;grid-template-columns:24.2% 1fr;gap:1.8%;margin-bottom:26px}.fa-logo{border-right:1px solid #ccc;padding:45px 35px 45px 25px;display:flex;align-items:flex-start}.fa-logo img{width:100%;height:auto}.fa-intro>div:last-child{padding-top:20px}.fa-intro h3{margin:0 0 24px}.fa-intro p{line-height:1.9}.fa-intro p:nth-child(3){color:#333}.fa-intro-photos{display:grid;grid-template-columns:1fr 1fr;gap:42px}.fa-intro-photos img{width:100%;aspect-ratio:812/547;object-fit:cover}.fa-culture{padding-top:clamp(90px,11vw,210px);padding-bottom:55px}.fa-culture h3{margin-bottom:45px}.fa-values p{line-height:1.6}.fa-values strong{font-weight:500;color:#161616}.fa-full-image img{display:block;width:100%;height:auto}.fa-history{padding-top:clamp(90px,10vw,192px)}.fa-timeline{display:flex;align-items:center;gap:28px;margin-bottom:65px;color:#111}.fa-timeline>span{border-radius:50%;background:#555;color:white;width:54px;height:54px;display:grid;place-items:center;flex-shrink:0}.fa-years{display:flex;justify-content:space-between;width:100%;position:relative;padding-bottom:24px}.fa-years:after{content:'';position:absolute;bottom:0;left:0;right:0;border-bottom:1px dotted #555}.fa-years>span{position:relative;min-width:60px;text-align:center;}.fa-years>span:after{content:'';width:12px;height:12px;border-radius:50%;border:1px solid #333;background:white;position:absolute;bottom:-30px;left:calc(50% - 6px);z-index:1}.fa-years>span.active:after{background:#111}.fa-history-body{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;padding:0 3%}.fa-history-body>img{width:100%;aspect-ratio:940/620;object-fit:cover}.fa-history-body>div{text-align:center;color:#111}.fa-history-body h3{margin:0}.fa-history-body span{display:block;width:1px;height:60px;background:#333;margin:10px auto 24px}.fa-certificates{padding-top:clamp(85px,8vw,154px)}.fa-certificate-grid{width:83%;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:80px 60px}.fa-certificate-grid img{width:100%;aspect-ratio:670/475;object-fit:contain}.fa-process{padding-top:clamp(110px,13vw,250px)}.fa-process-row{display:grid;grid-template-columns:1fr 1.12fr;gap:40px;align-items:end;margin-bottom:clamp(100px,11vw,210px)}.fa-process-row.reverse{grid-template-columns:1fr 1fr}.fa-process-row.reverse>.fa-process-copy{order:2}.fa-process-copy h3{display:flex;gap:55px;align-items:baseline;margin:0 0 35px;}.fa-process-copy h3 b{color:#ffd000;line-height:1;font-weight:400}.fa-process-copy p{font-weight:500;text-indent:2em;color:#2b2b25;line-height:1.6}.fa-pair{display:grid;grid-template-columns:1fr 1fr;gap:15px;min-width:0}.fa-pair img{display:block;width:100%;height:100%;aspect-ratio:1.4;object-fit:cover}.fa-delivery>.fa-wrap>.fa-title{margin-bottom:20px}.fa-subtitle{text-align:center;color:#333;font-weight:600;margin-bottom:110px!important}.fa-craft{display:grid;grid-template-columns:30% 1fr;gap:5%;margin-bottom:65px;align-items:center}.fa-craft h3,.fa-number-heading{margin-bottom:45px}.fa-craft h3 b,.fa-number-heading b{color:#cd8e24;margin-right:10px}.fa-craft p{text-indent:2em;line-height:1.9;color:#444}.fa-craft-images{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.fc-about-document figure{margin:0}.fa-craft-images img{width:100%;aspect-ratio:1.12;object-fit:cover;border-radius:12px 12px 0 0}.fc-about-document figcaption{color:#333;text-align:center;line-height:1.5}.fa-craft-images figcaption{background:#f6f6f6;border-radius:0 0 12px 12px;}.fa-workshops{display:grid;grid-template-columns:1fr 1fr;gap:95px 60px;align-items:start;margin-bottom:110px}.fa-panel{border:1px solid #e5e5e5;border-radius:12px;background:#f5f5f5;text-align:center;padding:55px 45px;color:#333}.fa-panel h3{margin:0 0 32px}.fa-panel p{text-indent:2em;text-align:left;line-height:2}.fa-workshops>.fa-panel{margin-right:100px;min-height:310px}.fa-workshops .fa-pair img{aspect-ratio:1.3;border-radius:10px}.fa-workshops figcaption{margin-top:10px}.fa-warehouse{background:#ffe8d1;padding:40px 0 20px}.fa-warehouse>.fa-wrap{display:grid;grid-template-columns:57% 1fr;gap:10%;align-items:center}.fa-warehouse figure{border-radius:12px;overflow:hidden;background:#eee}.fa-warehouse img{width:100%;display:block}.fa-warehouse figcaption{padding:12px}.fa-warehouse p{text-align:center;color:#333;margin-top:22px}.fa-warehouse h3{color:#754119;line-height:2}.fa-green{padding-top:110px}.fa-green-row{display:grid;grid-template-columns:57% 1fr;gap:4%;align-items:center}.fa-green-row .fa-pair img{aspect-ratio:1.46;border-radius:12px}.fa-green-row .fa-panel{padding:40px}.fa-green-row .fa-panel h3{margin-bottom:15px}.fa-green-row .fa-panel p{}.fa-team{padding-top:clamp(110px,11vw,210px);padding-bottom:140px}.fa-team>.fa-wrap>img{display:block;width:100%;height:auto}.fa-team .fa-title{margin-bottom:120px}.fa-team-photo{margin-top:110px}.fa-team-photo img{width:100%;display:block}.fc-database-page:has(.fc-about-document)+.fc-contact{display:none}body:has(.fc-about-document) main+.fc-contact{display:none}
@media(max-width:1000px){.fa-logo{padding:20px 20px 20px 0}.fa-intro h3{margin-bottom:14px}.fa-intro-photos{gap:20px}.fa-culture h3{margin-bottom:24px}.fa-process-copy h3{gap:25px;margin-bottom:25px}.fa-workshops{gap:50px 30px}.fa-workshops>.fa-panel{margin-right:20px;min-height:0}.fa-panel{padding:25px}.fa-subtitle{margin-bottom:60px!important}.fa-timeline{gap:15px}.fa-timeline>span{width:35px;height:35px;}.fa-years>span{}.fa-certificate-grid{gap:40px 25px}.fa-green-row .fa-panel{padding:20px}.fa-team{padding-bottom:70px}}
@media(max-width:640px){.fc-about-document .fa-wrap{width:90%}.fa-intro{grid-template-columns:25% 1fr;gap:5%}.fa-logo{padding:12px 12px 12px 0}.fa-intro>div:last-child{padding-top:0}.fa-intro p{line-height:1.7;}.fa-intro h3{}.fa-intro-photos{gap:12px}.fa-culture{padding-bottom:30px}.fa-values p{line-height:1.8}.fa-years>span{min-width:0}.fa-timeline{gap:10px;margin-bottom:35px}.fa-timeline>span{width:24px;height:24px;}.fa-history-body{gap:20px;padding:0}.fa-history-body p{}.fa-history-body span{height:30px;margin-bottom:12px}.fa-certificate-grid{width:90%;gap:25px 15px}.fa-process-row,.fa-process-row.reverse{gap:20px;align-items:center;grid-template-columns:1fr 1fr;margin-bottom:65px}.fa-process-copy h3{gap:10px;margin-bottom:15px;}.fa-process-copy h3 b{}.fa-process-copy p{text-indent:0}.fa-pair{gap:6px}.fa-craft{grid-template-columns:1fr;gap:20px}.fa-craft h3,.fa-number-heading{margin-bottom:20px}.fa-craft p{}.fa-craft-images{gap:8px}.fa-workshops{gap:28px 15px;margin-bottom:55px}.fa-workshops>.fa-panel{margin-right:0;padding:20px 15px}.fa-panel h3{margin-bottom:15px}.fa-workshops .fa-panel p{line-height:1.7;text-indent:0}.fa-warehouse>.fa-wrap{gap:5%;grid-template-columns:58% 1fr}.fa-warehouse h3{}.fa-warehouse figcaption,.fa-warehouse p{}.fa-green{padding-top:55px}.fa-green-row{grid-template-columns:1fr;gap:20px}.fa-green-row .fa-panel{padding:22px}.fa-team .fa-title{margin-bottom:50px}.fa-team-photo{margin-top:45px}.fa-team{padding-bottom:55px}.fa-subtitle{margin-bottom:45px!important}}
/* Join reference: image-backed hero and flow, editable contact and form. */
.fc-database-page:has(.fc-join-document){width:100%;max-width:none;padding:0}.fc-database-page:has(.fc-join-document)>h1{display:none}.fc-join-document{color:#111;}.fc-join-document img{max-width:100%}.fj-hero{position:relative;border-top:clamp(10px,1.3vw,25px) solid #888}.fj-hero>img,.fj-flow>img{display:block;width:100%;height:auto}.fj-hotspot{position:absolute;display:block;border-radius:15px}.fj-hotspot:focus-visible{outline:3px solid #ffbb00;outline-offset:5px}.fj-phone{left:3.5%;top:32%;width:29%;height:39%}.fj-service{left:36%;top:32%;width:29%;height:39%}.fj-mail{left:67%;top:32%;width:29%;height:39%}.fj-action{left:37%;top:82%;width:24%;height:11%}.fj-contact{border-top:1px solid #888;padding-top:13.54vw}.fj-contact>h2{line-height:1.3;text-align:center;margin:0;color:#111;font-weight:600}.fj-en{text-align:center;color:#999;line-height:1.3;margin:0 0 5.73vw!important}.fj-cards{width:91.5%;margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.8vw}.fj-cards>a{height:23.18vw;max-height:445px;border:2px solid #b4b4b4;border-radius:20px;text-align:center;display:flex;flex-direction:column;align-items:center;padding:1.4vw .5vw 0}.fj-cards img{width:6.25vw;height:6.25vw;object-fit:contain;margin-bottom:2.6vw}.fj-cards h3{font-weight:500;line-height:1.5;margin:0 0 1.5vw;white-space:nowrap}.fj-cards p{line-height:1.4;color:#888;margin:0}.fj-statistics{width:86.5%;margin:11.98vw auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:8.3vw}.fj-statistics>div{height:9.375vw;border-radius:6vw;box-shadow:0 15px 35px #0000000d;text-align:center;padding:1.2vw 0;background:white}.fj-statistics h3{line-height:1.4;margin:0;color:#444;font-weight:600}.fj-statistics p{color:#e75015;line-height:1.15;margin:0;}.fj-statistics small{color:#333;font-weight:600;margin-left:.5vw}.fj-statistics sup{top:-.6em}.fj-map{display:block;width:89.32%;height:auto;margin:4.167vw auto 0}.fj-form-section{width:82.3%;margin:15.625vw auto 0;padding-bottom:9.375vw}.fj-form-section>h2{line-height:1.4;font-weight:500;color:#bfbfbf;text-align:left;margin:0 0 3.385vw}#factoryContact.fj-form{border:0;display:block;padding:0;margin:0}#factoryContact.fj-form .fj-form-fields{display:grid;grid-template-columns:1fr 1fr;gap:4.95vw 2.08vw}#factoryContact.fj-form input,#factoryContact.fj-form textarea{border:2px solid #111;border-radius:32px;background:#fcfafb;padding:1.3vw 1.04vw;font-weight:300;margin:0;width:100%;min-width:0}#factoryContact.fj-form input{height:7.292vw}#factoryContact.fj-form textarea{grid-column:1/-1;height:23.44vw;resize:vertical;padding-top:3.12vw}#factoryContact.fj-form button{height:5.73vw;width:22.4vw;padding:0;border-radius:3vw;background:#ffbc00;color:#171714;line-height:1.2;margin:8.33vw auto 0;font-weight:600}#factoryContact.fj-form [data-message]{text-align:center;margin:20px 0 0}#factoryContact.fj-form [data-message]:empty{display:none}body:has(.fc-join-document)>.fc-contact,body:has(.fc-join-document) main+.fc-contact{display:none}
@media(min-width:1920px){.fj-cards>a{max-height:none}}
@media(max-width:640px){.fj-contact{padding-top:60px}.fj-contact>h2{}.fj-en{margin-bottom:35px!important}.fj-cards{gap:10px;width:94%}.fj-cards>a{border-width:1px;border-radius:8px;height:auto;min-height:145px;padding:15px 3px}.fj-cards img{width:40px;height:40px;margin-bottom:15px}.fj-cards h3{white-space:normal;margin-bottom:12px}.fj-cards p{}.fj-statistics{gap:12px;width:90%;margin-top:60px}.fj-statistics>div{height:auto;min-height:75px;padding:15px 0;border-radius:40px}.fj-statistics h3{}.fj-statistics p{}.fj-statistics sup{}.fj-statistics small{}.fj-map{margin-top:35px}.fj-form-section{width:88%;margin-top:70px;padding-bottom:65px}.fj-form-section>h2{margin-bottom:25px}#factoryContact.fj-form .fj-form-fields{gap:20px 12px}#factoryContact.fj-form input,#factoryContact.fj-form textarea{border-width:1px;border-radius:12px;padding:14px 10px}#factoryContact.fj-form input{height:50px}#factoryContact.fj-form textarea{height:170px}#factoryContact.fj-form button{height:45px;width:165px;border-radius:25px;margin-top:40px}}
.fj-cards>a{border-radius:1.04vw;border-width:max(1px,.104vw)}#factoryContact.fj-form input,#factoryContact.fj-form textarea{border-radius:1.667vw;border-width:max(1px,.104vw)}#factoryContact.fj-form{scroll-margin-top:70px}@media(max-width:640px){.fj-cards>a{border-radius:8px}#factoryContact.fj-form input,#factoryContact.fj-form textarea{border-radius:12px}}

.fc-news-feature {
    grid-template-columns: 46fr 60fr;
    gap: clamp(8px, 2.4vw, 32px);
}
.fc-news-feature-cover, .fc-news-feature-stack { aspect-ratio: 457 / 626; }
.fc-news-feature-stack {
    aspect-ratio: 598 / 626;
    display: grid;
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 6px;
}
.fc-news-feature-cover img, .fc-news-feature-stack img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
}
.fc-news-feature-stack img {
    border: 1px solid #c8c4c4;
    border-radius: clamp(8px, 2.4vw, 32px);
    padding: 2.8% 10%;
    background: #faf8f8;
}
.fc-news-feature h3 { font-weight: 400; }
.fc-news-detail-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
    gap: 24px;
}
.fc-news-detail-grid img { width: 100%; height: auto; }

.fc-exhibition-gallery {
    display: grid;
    grid-template-columns: 397fr 615fr;
    gap: clamp(12px, 2.5vw, 32px);
}
.fc-exhibition-gallery h3 {
    
    font-weight: 400;
    color: #888;
    text-align: center;
    margin: 24px 0 0;
}
.fc-exhibition-review > img {
    display: block;
    width: 100%;
    aspect-ratio: 397 / 705;
    object-fit: cover;
}
.fc-exhibition-right { min-width: 0; }
.fc-exhibition-invitations {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(8px, 1.6vw, 22px);
}
.fc-exhibition-invitations img {
    display: block;
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
}
.fc-exhibition-right > h3 { margin: 24px 0; }
.fc-exhibition-photos > img {
    display: block;
    width: 100%;
    aspect-ratio: 598 / 312;
    padding: 1.8% 5.5%;
    object-fit: cover;
    background: #faf8f8;
    border: 1px solid #c8c4c4;
    border-radius: clamp(10px, 2.4vw, 32px);
}
.fc-news-video-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 480px), 1fr));
    gap: 32px;
}
.fc-news-video-grid video {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #111;
    object-fit: contain;
}
@media(max-width:640px) {
    .fc-exhibition-gallery h3 { margin-top: 14px; }
    .fc-exhibition-right > h3 { margin: 12px 0; }
}
.fc-exhibition-media {
    aspect-ratio: 615 / 705;
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto minmax(0, 1fr);
}
.fc-exhibition-media > h3 { margin: 24px 0; }
.fc-exhibition-media .fc-exhibition-invitations a { display: block; min-height: 0; }
.fc-exhibition-media .fc-exhibition-invitations img,
.fc-exhibition-media .fc-exhibition-photos > img {
    height: 100%;
    aspect-ratio: auto;
    min-height: 0;
}
.fc-exhibition-media .fc-exhibition-photos { min-height: 0; }
.fc-gallery-modal .modal-content { background: rgba(0, 0, 0, .94); }
.fc-gallery-modal .modal-header { height: 64px; flex-shrink: 0; }
.fc-gallery-modal .modal-body { min-height: 0; }
.fc-gallery-modal .carousel-item img { width: 100%; height: 100%; object-fit: contain; }
.fc-gallery-modal .carousel-control-prev,
.fc-gallery-modal .carousel-control-next { width: 10%; }
.fc-news-detail-grid img[role="button"] { cursor: zoom-in; }
#factoryWorldMap { width: 89.32%; aspect-ratio: 1715 / 850; margin: 4.167vw auto 0; }
.fj-statistics:has(> div:only-child) { display: flex; justify-content: center; }
.fj-statistics > div:only-child { min-width: 28%; }
@media(max-width:640px) {
    .fc-exhibition-media > h3 { margin: 12px 0; }
    #factoryWorldMap { width: 94%; min-height: 200px; }
    .fj-statistics > div:only-child { min-width: 160px; }
}

/* Use Bootstrap's default type family and size throughout this theme. */
body { padding-top: 112px; }
h1, h2, h3, h4, h5, h6, small, .small, .btn, .form-control, .form-select, .badge, .page-link, sub, sup { font-size: inherit; }
h1, h2, .fc-about-document .fa-title { font-size: 30px; }
.fc-about-document h3 { font-size: 28px; }
.fj-statistics h3 { font-size: 18px; }
.fj-statistics > div > p { font-size: 44px; }
.fj-statistics small { font-size: 16px; }
.fc-catalog aside h2 { font-size: inherit; }
.fc-header { position: fixed; top: 0; left: 0; width: 100%; z-index: 1030; }
.fc-search-toggle { background: transparent; color: inherit; border: 0; padding: 8px; }
.fc-header-search { position: absolute; top: 100%; right: 7%; width: min(90vw, 640px); padding: 20px; color: #242424; background: white; box-shadow: 0 5px 16px #0002; }
.fc-header-search .row { align-items: center; }
.fc-brand-video { width: 100%; height: auto; object-fit: cover; }
.fc-search-results { padding-block: 60px; }
.fc-search-result { border-bottom: 1px solid #ddd; padding-block: 24px; }
.fc-search-result h3 { margin-top: 12px; }
.fc-tag-filters fieldset { margin-block: 40px; }
.fc-tag-filters legend { font-size: inherit; border-bottom: 2px solid #333; padding-bottom: 16px; margin-bottom: 16px; }
.fc-color-options { display: grid; grid-template-columns: repeat(6, 36px); gap: 16px; }
.fc-color-options label { position: relative; cursor: pointer; }
.fc-color-options input { position: absolute; opacity: 0; width: 100%; height: 100%; cursor: pointer; }
.fc-color-swatch { display: block; width: 34px; height: 34px; border: 1px solid #ccc; border-radius: 3px; }
.fc-color-options input:checked + span { outline: 3px solid #222; outline-offset: 3px; }
.fc-color-options input:focus-visible + span { outline: 3px solid #0d6efd; outline-offset: 3px; }
.fc-tag-options { display: grid; gap: 16px; }
.fc-tag-options label { display: flex; gap: 16px; align-items: center; cursor: pointer; }
@media(max-width:1000px) { body { padding-top: 80px; } .fc-color-options { grid-template-columns: repeat(4, 34px); gap: 12px; } }
@media(max-width:640px) { body { padding-top: 68px; } .fc-color-options { grid-template-columns: repeat(6, 34px); gap: 14px; } }

.fc-header-actions { display: flex; align-items: center; gap: 16px; }

.fc-detail-swatches { display: grid; grid-template-columns: repeat(auto-fill, 54px); gap: 12px; margin-block: 16px; }
.fc-detail-swatches button { width: 54px; height: 54px; padding: 3px; border: 1px solid #ccc; background: white; border-radius: 3px; }
.fc-detail-swatches button img { width: 100%; height: 100%; object-fit: cover; }
.fc-detail-swatches button.selected { border: 3px solid #d07b23; padding: 1px; box-shadow: 0 0 0 2px #f0d7bb; }
.fc-detail-swatches button:focus-visible { outline: 2px solid #0d6efd; outline-offset: 3px; }
.fa-history .fa-timeline > button { border: 0; background: #555; color: white; border-radius: 50%; width: 40px; height: 40px; flex-shrink: 0; }
.fa-history .fa-timeline > button:disabled { opacity: .35; cursor: default; }
.fa-history .fa-years { position: relative; display: flex; justify-content: flex-start; gap: 32px; overflow-x: auto; padding: 12px 4px 24px; scrollbar-width: thin; }
.fa-history .fa-years > button { position: relative; flex: 0 0 90px; border: 0; background: transparent; padding: 10px 0; }
.fa-history .fa-years > button::after { content: ''; position: absolute; width: 10px; height: 10px; border: 1px solid #333; border-radius: 50%; left: calc(50% - 5px); bottom: 0; background: white; }
.fa-history .fa-years > button.active { font-weight: 700; color: #bd7023; }
.fa-history .fa-years > button.active::after { background: #bd7023; border-color: #bd7023; }
.fa-history .fa-years::after { display: none; }
#factoryHistory .fa-history-body { min-height: 320px; }
#factoryHistory .fa-history-body > img {   object-fit: contain;  height: auto; aspect-ratio: 4 / 3; }
#factoryCertificates { max-width: 1200px; margin: auto; }
#factoryCertificates .carousel-item img { width: 100%; height: 520px; display: block; object-fit: contain; }
#factoryCertificates .carousel-control-prev, #factoryCertificates .carousel-control-next { width: 8%; }
#factoryCertificates .carousel-control-prev-icon, #factoryCertificates .carousel-control-next-icon { background-color: #555; border-radius: 50%; padding: 16px; }
@media(max-width:640px) {
    .fa-history .fa-years { gap: 12px; }
    .fa-history .fa-years > button { flex-basis: 65px; }
    #factoryHistory .fa-history-body { min-height: 260px; }
    #factoryHistory .fa-history-body > img {   height: auto; aspect-ratio: 4 / 3; }
    #factoryCertificates .carousel-item img { height: 340px; }
}

.fc-back-button {
    position: absolute;
    top: calc(100% + 8px);
    left: 7%;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    color: #333;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    box-shadow: 0 2px 8px #0001;
}
.fc-back-button:hover { background: #f5f5f5; }
@media(max-width:1000px) { .fc-back-button { left: 6%; } }
/* Contact cards and the account preview share their configured artwork. */
.fc-contact-grid > a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 24px;
    min-height: 280px;
    padding: 28px 16px;
}
.fc-contact-grid > a > img { width: 76px; height: 76px; object-fit: contain; }
.fc-contact-grid h3, .fc-contact-grid span { margin: 0; }
.fc-social-account { position: relative; display: inline-block; }
.fc-social-preview {
    position: absolute;
    bottom: calc(100% + 10px);
    left: 0;
    z-index: 1040;
    padding: 12px;
    background: white;
    border: 1px solid #ddd;
    border-radius: 6px;
    box-shadow: 0 5px 20px #0003;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition: opacity .15s;
}
.fc-social-preview img { width: 420px; max-width: 80vw; height: auto; max-height: none; }
.fc-social-account:hover .fc-social-preview, .fc-social-account:focus-within .fc-social-preview { visibility: visible; opacity: 1; }
/* The event occupies the upper area; the record selector sits below it. */
.fc-about-document .fa-history {
    width: 100%;
    max-width: none;
    padding: 60px 6.65%;
    margin-top: 100px;
    background-position: center;
    background-size: cover;
    color: white;
}
.fa-history .fa-title, .fa-history h3 { color: white; }
#factoryHistory .fa-history-body { grid-template-columns: 1fr 1fr; padding: 0; gap: 8%; color: white; }
#factoryHistory .fa-history-body > img { order: 2; border: 6px solid white;  background: #fff1;  height: auto; aspect-ratio: 4 / 3; }
#factoryHistory .fa-history-body > div { order: 1; color: white; }
#factoryHistory .fa-history-body span { background: white; }
.fa-history .fa-timeline { margin: 50px 0 0; }
.fa-history .fa-timeline > button { background: transparent; color: white; }
.fa-history .fa-years { color: white; }
.fa-history .fa-years > button { padding: 24px 0 0; color: white; }
.fa-history .fa-years::before { content: ''; position: absolute; left: 0; right: 0; top: 16px; border-top: 1px dashed white; }
.fa-history .fa-years > button::after { top: 0; bottom: auto; background: white; border-color: white; }
.fa-history .fa-years > button.active { color: white; }
.fa-history .fa-years > button.active::after { background: transparent; border: 3px solid white; box-shadow: 0 0 0 3px #ffffff55; }
.fa-workshops > .fa-panel {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    align-self: stretch;
    min-height: 0;
}
.fa-workshops > .fa-panel p { text-align: center; text-indent: 0; }
.fa-warehouse > .fa-wrap { align-items: center; }
.fa-warehouse > .fa-wrap > h3 { align-self: center; text-align: center; margin: 0; font-size: 30px; }
/* Editable recruitment hero and contact form. */
.fj-hero { padding: 80px 0 60px; text-align: center; color: white; background-position: center; background-size: cover; }
.fj-hero h1 { margin-bottom: 70px; }
.fj-hero .fj-cards > a { height: auto; min-height: 260px; padding: 30px 12px; justify-content: center; gap: 28px; background: transparent; color: white; }
.fj-hero .fj-cards p, .fj-hero .fj-cards h3 { color: white; margin: 0; }
.fj-hero .fj-cards i { display: grid; place-items: center; color: #f36a22; border: 3px solid #f36a22; border-radius: 50%; width: 70px; height: 70px; font-size: 32px; }
.fj-contact-action { display: inline-block; background: #ffbc00; color: #111; border-radius: 30px; padding: 14px 70px; margin-top: 65px; }
.fj-statistics > div { height: auto; min-height: 0; padding: 28px 18px; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.fj-statistics h3 { margin-bottom: 14px; }
.fj-form-section { width: calc(100% - 48px); max-width: 1760px; margin: 80px auto; padding: 50px; background: #f7f7f7; }
.fj-form-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; align-items: stretch; }
.fj-form-layout > img { width: 100%; height: 100%; object-fit: cover; min-height: 0; }
.fj-form-layout h2 { color: #c39260; font-size: 28px; font-weight: 400; line-height: 1.5; margin: 0 0 35px; }
#factoryContact.fj-form .fj-form-fields { gap: 16px; }
#factoryContact.fj-form input, #factoryContact.fj-form textarea { padding: 12px; border: 1px solid #cbd1d7; border-radius: 2px; background: #fcfcfc; }
#factoryContact.fj-form input { height: 46px; }
#factoryContact.fj-form textarea { height: 200px; }
#factoryContact.fj-form input::placeholder, #factoryContact.fj-form textarea::placeholder { color: #637689; }
#factoryContact.fj-form button { width: auto; min-width: 166px; height: 48px; padding: 12px 40px; border-radius: 3px; background: #c39260; color: white; margin: 20px auto 0; }
@media(max-width:640px) {
    .fc-contact-grid > a { min-height: 230px; }
    .fc-about-document .fa-history { padding: 45px 5%; }
    #factoryHistory .fa-history-body { grid-template-columns: 1fr; gap: 24px; }
    #factoryHistory .fa-history-body > img {   height: auto; aspect-ratio: 4 / 3; }
    .fj-hero { padding: 50px 0; }
    .fj-hero .fj-cards { grid-template-columns: 1fr; width: 90%; gap: 18px; }
    .fj-hero .fj-cards > a { min-height: 200px; }
    .fj-statistics { grid-template-columns: 1fr; gap: 24px; }
    .fj-form-section { width: 94%; padding: 24px; margin-block: 50px; }
    .fj-form-layout { grid-template-columns: 1fr; gap: 28px; }
    .fj-form-layout > img { height: auto; }
}

.fj-contact .fj-cards > a {
    height: auto;
    min-height: 0;
    max-height: none;
    padding: 40px 16px;
    justify-content: center;
    gap: 24px;
}
.fj-contact .fj-cards img,
.fj-contact .fj-cards h3,
.fj-contact .fj-cards p { margin: 0; }

.fj-contact { border-top: 0; }
