:root { --red:#b9201f; --red-dark:#8c1716; --ink:#202223; --muted:#636464; --cream:#fbf9f5; --green:#1b4d36; --container:1200px; }
    * {box-sizing:border-box} html {scroll-behavior:smooth} body {margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:white;-webkit-font-smoothing:antialiased} img {display:block;max-width:100%} button,input,textarea,select {font:inherit} button,a { -webkit-tap-highlight-color:transparent } a {color:inherit;text-decoration:none} button {cursor:pointer} :focus-visible {outline:3px solid #b9201f80;outline-offset:4px} .container{width:min(var(--container),calc(100% - 64px));margin-inline:auto} .eyebrow{font-size:12px;color:var(--red);font-weight:800;letter-spacing:.09em;text-transform:uppercase} h1,h2,h3,p{margin-top:0} h2{font-size:clamp(30px,3vw,46px);line-height:1.09;letter-spacing:-.045em} p{line-height:1.6} .btn{display:inline-flex;align-items:center;justify-content:center;gap:13px;padding:15px 23px;border:1px solid transparent;border-radius:6px;font-size:14px;font-weight:800;white-space:nowrap;transition:transform .2s,background .2s,box-shadow .2s}.btn:hover{transform:translateY(-2px)} .btn-red{background:var(--red);color:white}.btn-red:hover{background:var(--red-dark);box-shadow:0 8px 20px #9b181829}.btn-white{background:white;color:var(--ink)}.btn-outline{background:transparent;border-color:#888;color:var(--ink)} .arrow{font-size:19px;font-weight:400;line-height:0} section[id]{scroll-margin-top:90px}
    .site-header{height:92px;display:flex;align-items:center;background:#fff;position:relative;z-index:40;box-shadow:0 1px 0 #eee}.header-inner{width:min(1370px,calc(100% - 58px));margin:auto;display:flex;align-items:center;gap:38px}.logo{display:block;flex:none}.logo img{width:250px;height:auto;max-height:71px;object-fit:contain;object-position:left center}.nav{display:flex;align-items:center;justify-content:center;gap:clamp(16px,2.5vw,34px);margin-left:auto}.nav a{font-size:14px;font-weight:700;white-space:nowrap;transition:color .15s}.nav a:hover{color:var(--red)}.nav .nav-quote{display:none}.header-cta{margin-left:14px}.menu-toggle{display:none;border:0;background:transparent;padding:8px}.menu-toggle span{display:block;width:25px;height:2px;background:#222;margin:5px 0}
    .hero{width:100%;height:70vh;min-height:480px;max-height:800px;display:grid;grid-template-columns:50% 50%;overflow:hidden}.hero-copy{background:linear-gradient(90deg,#fff 0%,#fff 80%,#fbfaf7 100%);padding:clamp(34px,5vw,110px) clamp(25px,4vw,85px);display:flex;justify-content:center;flex-direction:column;position:relative;z-index:2}.hero-copy::after{content:"";position:absolute;left:100%;top:0;bottom:0;width:180px;pointer-events:none;background:linear-gradient(90deg,#fbfaf7 0%,#fbfaf7de 20%,#fbfaf798 55%,transparent 100%)}.hero h1{font-size:clamp(40px,4.2vw,66px);line-height:1.04;letter-spacing:-.055em;max-width:670px;margin-bottom:24px;font-weight:800}.hero p{font-size:clamp(16px,1.45vw,22px);max-width:530px;line-height:1.48;margin-bottom:42px}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.text-link{font-weight:700;text-decoration:underline;text-underline-offset:5px}.hero-photo{height:100%;min-width:0;overflow:hidden;background:#b6b48b}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:58% 50%}
    .welcome{padding:78px 0 62px}.welcome-head{display:flex;justify-content:space-between;align-items:flex-start;gap:28px;margin-bottom:36px}.welcome-head h2{font-size:clamp(34px,3.3vw,50px);line-height:1.07;margin:0;max-width:850px}.welcome-head h2 .mark{width:40px;display:inline-block;vertical-align:middle;transform:translateY(-4px)}.legal-name{text-align:right;font-size:12px;line-height:1.6;color:#585858;margin-top:8px;flex:none}.promo-grid{display:grid;grid-template-columns:1fr 1.06fr;gap:20px;min-height:480px}.promo-left{display:grid;grid-template-rows:1fr .69fr;gap:20px;min-width:0}.promo-small-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.promo-tile{border-radius:7px;position:relative;overflow:hidden;isolation:isolate;padding:32px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;transition:transform .22s}.promo-tile:hover{transform:translateY(-3px)}.promo-summer{background:#eef6e7;justify-content:center}.promo-summer::after{content:"";position:absolute;right:0;bottom:0;width:53%;height:96%;background:url('https://images.unsplash.com/photo-1519457431-44ccd64a579b?w=720&q=82') center 25%/cover no-repeat;mask-image:linear-gradient(90deg,transparent 0%,black 30%);z-index:-1}.promo-summer h3{font-size:clamp(23px,2.2vw,35px);line-height:1.14;max-width:270px;letter-spacing:-.035em;margin:13px 0 10px}.tiny-pill{border:1px solid #3d4138;border-radius:22px;padding:3px 10px;font-size:11px;font-weight:700}.small-underline{font-size:12px;text-decoration:underline;text-underline-offset:3px;font-weight:700;color:#585858}.promo-mini{background:#f7f5f1;min-height:170px}.promo-mini h3{font-size:clamp(18px,1.45vw,22px);line-height:1.16;letter-spacing:-.025em;margin:0 0 10px}.promo-company{background:#e8f6fb;align-items:center;text-align:center;justify-content:flex-start;padding:35px 25px 0}.promo-company h3{font-size:clamp(26px,2.1vw,34px);letter-spacing:-.035em;margin:0 0 8px}.promo-company p{font-size:14px;margin:0 0 12px}.factory-campus{position:absolute;bottom:0;left:0;right:0;height:65%;width:100%;object-fit:cover;object-position:center 50%;z-index:-1}.promo-company::after{content:"";position:absolute;inset:0 0 40% 0;background:linear-gradient(#e8f6fb,#e8f6fbdc,transparent);z-index:-1}
    .categories{padding:12px 0 95px}.section-title{margin-bottom:32px}.category-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:17px}.category{display:block;text-align:center;transition:transform .2s}.category:hover{transform:translateY(-5px)}.category-frame{aspect-ratio:1/1.1;border-radius:7px;overflow:hidden;background:#eee8df}.category-frame img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.category:hover img{transform:scale(1.035)}.category-title{font-size:15px;font-weight:800;margin-top:15px}
    .capabilities{padding:0 0 100px}.capabilities .section-title{margin-bottom:28px}.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.cap-photo{width:100%;height:240px;border-radius:8px;background:#eee;overflow:hidden}.capability h3{font-size:20px;margin:17px 0 7px;letter-spacing:-.025em}.capability p{font-size:14px;color:#626262;max-width:340px}
    .process{height:min(690px,74vh);min-height:590px;position:relative;background:#50514d;color:#fff;overflow:hidden}.process-bg,.process-bg img{position:absolute;inset:0;width:100%;height:100%}.process-bg img{object-fit:cover;object-position:center;opacity:0;transform:scale(1.04);transition:opacity .55s ease,transform 2s ease}.process-bg img.active{opacity:1;transform:scale(1)}.process::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,17,16,.82) 0%,rgba(20,20,19,.62) 34%,rgba(20,20,19,.15) 74%)}.process-inner{height:100%;position:relative;z-index:1;display:flex;align-items:center}.process-content{width:550px;max-width:100%}.process h2{font-size:clamp(35px,3.8vw,54px);margin-bottom:30px;color:white}.step-list{display:grid;gap:8px}.step{width:100%;display:flex;gap:19px;align-items:flex-start;text-align:left;color:#e8e8e8;background:transparent;border:0;padding:11px 14px 11px 0;border-radius:7px;transition:background .25s}.step:hover{background:#ffffff13}.step-num{display:flex;align-items:center;justify-content:center;width:43px;height:43px;border:1.5px solid #fff7;border-radius:50%;font-size:13px;font-weight:700;flex:none}.step.active .step-num{background:var(--red);border-color:var(--red);color:white}.step-copy{padding-top:8px}.step strong{font-size:20px;display:block;color:white}.step-description{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .3s,opacity .3s}.step-description>span{overflow:hidden;font-size:14px;line-height:1.5;max-width:370px}.step.active .step-description{grid-template-rows:1fr;opacity:1;margin-top:6px}.step-hint{font-size:12px;opacity:.85;margin:20px 0 0 5px}.process-dots{position:absolute;right:70px;bottom:34px;z-index:2;display:flex;gap:9px}.process-dots button{width:9px;height:9px;border:0;border-radius:100%;background:#fff9;padding:0}.process-dots button.active{background:#e22c28;transform:scale(1.2)}
    .quality-wrap{background:#f9f7f3;padding:90px 0 58px}.quality-card{background:#fff;border-radius:24px;box-shadow:0 16px 35px #44332211;padding:25px;display:grid;grid-template-columns:1.05fr 1fr;gap:50px;align-items:center}.quality-photo{width:100%;height:370px;border-radius:17px;background:#eee8df}.quality-copy{padding:24px 25px 24px 0}.quality-copy h2{max-width:460px;margin-bottom:22px}.quality-copy p{font-size:15px;color:#555;max-width:450px}.cert-section{padding:48px 0 66px;background:#f9f7f3}.cert-row{display:grid;grid-template-columns:repeat(5,1fr);align-items:center;text-align:center}.cert-item{min-height:110px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:11px;color:#4d504f;border-right:1px solid #ddd}.cert-item:last-child{border-right:0}.cert-icon{width:36px;height:36px;display:grid;place-items:center;border:1.5px solid #777;border-radius:8px;font-size:23px;line-height:1}.cert-label{font-size:13px;font-weight:700}.cert-note{font-size:11px;color:#858585;text-align:center;margin:16px 0 0}
    .about{min-height:590px;background:#3e4342 url('assets/source/factory-013.jpg') center/cover;position:relative;display:flex;align-items:center;justify-content:center;color:white;text-align:center;padding:100px 25px}.about::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#101817bf,#111b18a3,#101817bf)}.about-content{max-width:770px;position:relative;z-index:1}.about .eyebrow{color:#ffe7de}.about h2{font-size:clamp(38px,4vw,62px);color:white;margin:15px auto 20px}.about p{font-size:18px;max-width:620px;margin:0 auto 34px;color:#f4f4f2}.about .btn{min-width:185px}
    .cta{background:var(--green);color:white;text-align:center;padding:115px 25px 125px}.cta h2{font-size:clamp(37px,3.9vw,58px);color:#fff;margin:0 0 13px}.cta p{color:#edf4ed;font-size:17px;margin:0 auto 35px;max-width:660px}.cta .btn{min-width:225px}
    .footer{padding:67px 0 23px;background:white}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:30px}.footer .logo img{width:235px}.footer p{max-width:300px;color:#747474;font-size:13px;margin-top:17px}.footer h3{font-size:14px;margin-bottom:16px}.footer a{display:block;font-size:13px;color:#666;margin-bottom:10px}.footer a:hover{color:var(--red)}.copyright{margin-top:65px;border-top:1px solid #eee;padding-top:20px;font-size:11px;color:#8a8a8a}
    .modal-backdrop{position:fixed;inset:0;z-index:1000;background:#101310aa;display:none;justify-content:center;align-items:center;padding:20px;overflow:auto}.modal-backdrop.open{display:flex}.modal{background:white;border-radius:20px;width:min(630px,100%);max-height:min(92vh,850px);overflow:auto;box-shadow:0 25px 80px #0004;position:relative;padding:42px}.modal-close{position:absolute;right:20px;top:16px;border:0;background:#f2f2f2;border-radius:50%;width:36px;height:36px;font-size:23px}.modal h2{margin-bottom:10px}.modal-intro{color:#666;font-size:14px;margin-bottom:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700}.field.full{grid-column:1/-1}.field input,.field select,.field textarea{padding:13px 14px;border:1px solid #d6d6d6;border-radius:7px;width:100%;font-size:14px;background:white}.field textarea{min-height:110px;resize:vertical}.submit-note{font-size:12px;color:#777;margin:17px 0}.success-state{text-align:center;padding:35px 5px}.success-circle{width:70px;height:70px;margin:0 auto 25px;border-radius:50%;display:grid;place-items:center;background:#e4f4e6;color:#176d37;font-size:36px}.success-state h2{font-size:30px}.success-state p{color:#666}.toast{position:fixed;z-index:1001;bottom:25px;right:25px;background:#222;color:white;padding:14px 18px;border-radius:8px;box-shadow:0 8px 30px #0003;transform:translateY(90px);opacity:0;transition:transform .3s,opacity .3s}.toast.show{transform:translateY(0);opacity:1}
    @media(max-width:1060px){.logo img{width:205px}.header-inner{gap:15px}.nav{gap:14px}.nav a{font-size:12px}.header-cta{font-size:12px;padding:12px}.hero h1{font-size:clamp(40px,4.4vw,54px)}.hero-copy{padding-left:40px}.welcome-head h2{font-size:39px}.category-title{font-size:13px}.quality-card{gap:25px}}
    @media(max-width:780px){.container{width:min(100% - 36px,1200px)}.site-header{height:75px}.header-inner{width:calc(100% - 30px)}.logo img{width:188px}.menu-toggle{display:block;margin-left:auto}.header-cta{display:none}.nav{display:none;position:absolute;top:75px;left:0;right:0;background:white;flex-direction:column;align-items:stretch;padding:12px 24px 24px;box-shadow:0 15px 23px #0002;gap:0}.nav.open{display:flex}.nav a{padding:14px 0;border-bottom:1px solid #eee;font-size:15px}.nav .nav-quote{display:block;color:var(--red)}.hero{height:auto;min-height:0;max-height:none;display:flex;flex-direction:column-reverse}.hero-photo{height:380px}.hero-photo img{object-position:58% center}.hero-copy{padding:50px 24px 60px}.hero-copy::after{display:none}.hero h1{font-size:clamp(38px,8vw,52px);max-width:650px}.hero p{font-size:16px;margin-bottom:28px}.hero-actions{gap:20px}.welcome{padding:50px 0}.welcome-head{display:block}.welcome-head h2{font-size:35px}.legal-name{text-align:left;margin-top:18px}.promo-grid{grid-template-columns:1fr;min-height:0}.promo-left{grid-template-rows:260px 155px}.promo-company{min-height:420px}.categories{padding-bottom:60px}.category-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px;gap:14px}.category{min-width:185px;scroll-snap-align:start}.capability-grid{grid-template-columns:1fr 1fr}.capability:last-child{grid-column:1/-1}.capabilities{padding-bottom:70px}.process{height:625px;min-height:0}.process-dots{right:25px}.quality-card{grid-template-columns:1fr;gap:18px}.quality-photo{height:290px}.quality-copy{padding:0 10px 14px}.about{min-height:490px}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2}}
    @media(max-width:520px){.hero-photo{height:285px}.hero-copy{padding:40px 19px 50px}.hero h1{font-size:39px}.hero-actions .btn{padding:14px 16px}.welcome-head h2{font-size:31px}.welcome-head h2 .mark{width:27px}.promo-tile{padding:21px}.promo-summer h3{font-size:26px}.promo-small-row{gap:12px}.promo-left{gap:12px}.promo-grid{gap:12px}.promo-mini h3{font-size:17px}.promo-company{min-height:370px;padding-top:25px}.promo-company h3{font-size:24px}.promo-company p{font-size:12px}.category{min-width:155px}.capability-grid{grid-template-columns:1fr}.capability:last-child{grid-column:auto}.capability img{height:240px}.process{height:620px}.process h2{font-size:36px}.step strong{font-size:18px}.step-hint{font-size:11px}.quality-wrap{padding-top:60px}.quality-card{padding:12px;border-radius:20px}.quality-card img{height:250px}.quality-copy{padding:14px}.cert-row{grid-template-columns:repeat(3,1fr);row-gap:20px}.cert-item:nth-child(3){border-right:0}.cert-item{min-height:90px}.cert-label{font-size:11px}.about{padding:90px 20px}.about h2{font-size:36px}.about p{font-size:15px}.cta{padding:88px 20px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{grid-column:auto}.modal{padding:35px 22px}.form-grid{grid-template-columns:1fr}}
    /* Design-review visual fallback: image crops from the approved generated mockup. */
    .reference-crop{background-image:url('assets/reference-mockup.png')!important;background-repeat:no-repeat;background-color:#ece8df;}
    .reference-crop>img{opacity:0!important}
    .category-frame.reference-crop{background-size:600% auto}
    .capability.reference-crop{background:none!important}
    .capability .reference-crop{background-size:360% auto;border-radius:8px;height:240px;display:block}
    .capability .reference-crop img{height:100%}
    .quality-card .reference-crop{background-size:225% auto;height:370px;border-radius:17px}
    .quality-card .reference-crop img{height:100%}
    .factory-campus.reference-crop{background-size:235% auto;background-position:88% 31%;height:65%}
    .promo-company.reference-crop{background-image:url('assets/reference-mockup.png')!important;background-size:235% auto;background-position:88% 31%;}
    .about.reference-crop{background-size:210% auto;background-position:center 89%}
    .process-bg .reference-crop{background-size:160% auto;background-position:center 67%;position:absolute;inset:0;opacity:0;transition:opacity .5s}
    .process-bg .reference-crop.active{opacity:1}
    .welcome-head h2 .mark{width:42px;height:39px;display:inline-block;vertical-align:middle;transform:translateY(-3px);position:relative}
    .welcome-head h2 .mark img{width:100%;max-width:100%;height:100%;object-fit:contain;object-position:center}
    @media(max-width:520px){.welcome-head h2 .mark{width:30px;height:29px}}
    /* The approved mockup's soft-neutral styling for the spring collection card. */
    .promo-summer::after{background-image:url('assets/reference-mockup.png');background-position:32.5% 24.1%;background-size:550% auto;background-repeat:no-repeat}
    @media(max-width:780px){.quality-card .reference-crop{height:290px}}
    @media(max-width:520px){.quality-card .reference-crop{height:250px}}
    /* Approved iteration: keep hero copy on the 1200px content grid. */
    @media(min-width:781px){.header-inner{width:min(var(--container),calc(100% - 64px))}}
    .hero{container-type:inline-size}
    @media(min-width:781px){.hero-copy{padding-left:max(32px,calc((100cqw - var(--container))/2))}}
    .hero p{font-size:16px}
    /* Approved warm hero surface and matching feathered edge. */
    .hero-copy{background:#f7f5f1}
    .hero-copy::after{background:linear-gradient(90deg,#f7f5f1 0%,#f7f5f1e6 20%,#f7f5f199 55%,transparent 100%)}
    /* Original manufacturer photography and updated creative assets. */
    .promo-summer::after{width:55%;height:100%;background-image:url('assets/spring-girl.webp');background-position:center bottom;background-size:auto 96%;background-repeat:no-repeat;mask-image:none}
    .factory-campus{background:url('assets/company-overview.webp') center bottom/cover no-repeat}
    .category-frame{background:#f7f6f3}
    .category-frame img{object-fit:contain;padding:7px;mix-blend-mode:multiply}
    .pathway-photo{background-size:cover;background-position:center}
    .pathway-photo.tech{background-image:url('assets/pathway-tech.webp');background-position:center 45%}
    .pathway-photo.sample{background-image:url('assets/pathway-sample.webp');background-position:center}
    .pathway-photo.idea{background-image:url('assets/pathway-idea.webp');background-position:center}
    .quality-photo{background:#ece7de url('assets/quality-bear.webp') center/cover no-repeat}
    @media(min-width:1061px){.hero{grid-template-columns:57% 43%}.hero h1{font-size:60px}}
    /* Three entry points for brands starting a manufacturing project. */
    .capabilities{padding-bottom:96px}
    .service-intro{margin-bottom:36px}
    .service-intro h2{font-size:clamp(34px,3.6vw,48px);margin:0 0 17px;max-width:960px}
    .service-intro p{font-size:17px;line-height:1.55;color:#63615e;margin:0;max-width:790px}
    .pathway-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
    .pathway-card{border:1px solid #e6ddd4;border-radius:10px;overflow:hidden;background:#fff;display:flex;flex-direction:column;box-shadow:0 8px 24px #4937260a;transition:transform .2s,box-shadow .2s}
    .pathway-card:hover{transform:translateY(-4px);box-shadow:0 13px 27px #49372613}
    .pathway-photo{aspect-ratio:373/234;background-image:url('assets/service-pathways-reference.png');background-size:346% auto;background-repeat:no-repeat;background-color:#eee9e3}
    .pathway-photo.tech{background-position:6.3% 30.7%}
    .pathway-photo.sample{background-position:50% 30.7%}
    .pathway-photo.idea{background-position:93.7% 30.7%}
    .pathway-body{padding:25px 26px 28px;display:flex;flex-direction:column;align-items:flex-start;flex:1;min-height:220px}
    .pathway-body h3{font-size:22px;line-height:1.28;letter-spacing:-.025em;margin:0 0 16px}
    .pathway-body p{font-size:16px;line-height:1.65;color:#66615e;margin:0 0 24px}
    .pathway-link{border:0;padding:6px 0 0;background:none;color:#bd492e;font-size:15px;font-weight:800;margin-top:auto;display:inline-flex;gap:12px;align-items:center;transition:color .2s,gap .2s}
    .pathway-link:hover{color:var(--red-dark);gap:17px}
    .pathway-faq{margin-top:32px;border-bottom:1px solid #e7e1d9;padding-bottom:18px}
    .pathway-faq summary{cursor:pointer;font-size:16px;color:#555;line-height:1.6;padding:7px 0}
    .pathway-faq p{font-size:15px;line-height:1.7;color:#65615d;max-width:900px;margin:12px 0 6px 18px}
    /* Show the full bespoke colour-block imagery, not the earlier collage sprite crops. */
    .pathway-photo{background-size:cover;background-position:center}
    .pathway-photo.tech{background-position:center 45%}
    .pathway-photo.sample,.pathway-photo.idea{background-position:center}
    .step{padding-left:11px}
    /* Supplied certification artwork, displayed without item dividers. */
    .cert-row{gap:clamp(16px,4vw,56px)}
    .cert-item{border-right:0;min-height:108px;padding:10px 0}
    .cert-item img{width:auto;max-width:100%;height:auto;max-height:80px;object-fit:contain;mix-blend-mode:multiply}
    .cta h2{font-size:clamp(32px,3.4vw,40px)}
    @media(max-width:900px){.pathway-grid{grid-template-columns:1fr}.pathway-card{width:100%;max-width:620px;margin-inline:auto}.cert-row{gap:18px}}
    @media(max-width:520px){.service-intro h2{font-size:34px}.service-intro p{font-size:15px}.pathway-body{padding:22px 23px 25px;min-height:205px}.pathway-body h3{font-size:21px}.pathway-body p{font-size:15px}.pathway-faq summary{font-size:15px}.cert-item{min-height:95px}.cert-item img{max-height:62px}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
