/* MTP Light. Native controls, responsive grids, and the utilities used by this theme. */
:root{--primary:#08764f;--primary-dark:#05563a;--ink:#172e27;--muted:#626a70;--line:#dee7e2;--surface:#f4f7f4;--radius:2px;--space:.5rem;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;color:var(--ink);background:#fff;font:16px/1.7 "Roboto",sans-serif}button,input,textarea,select{font:inherit}button,summary{cursor:pointer}img{max-width:100%;height:auto;vertical-align:middle}svg{max-width:100%}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #d7a51a;outline-offset:4px}h1,h2,h3,h4,h5,h6{line-height:1.2;color:var(--ink);letter-spacing:-.025em;margin:0 0 1rem;font-family:"Poppins","Roboto",sans-serif;font-weight:500}h1,.h1{font-size:clamp(2rem,4vw,3.5rem)}h2{font-size:clamp(1.6rem,3vw,2.5rem)}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.1rem}h6,.h6{font-size:1rem}p{margin:0 0 1.2rem}ul{padding-left:1.3rem;margin-top:0}figure{margin:0}section{padding:4rem 0}[hidden]{display:none!important}.container,.container-fluid{width:100%;max-width:1240px;margin-inline:auto;padding-inline:24px}.container-fluid{max-width:1440px}.row{display:flex;flex-wrap:wrap;margin-inline:-12px}.row>*{width:100%;min-width:0;padding-inline:12px}.col{flex:1 0 0}.col-auto{flex:0 0 auto;width:auto}.g-0{margin:0}.g-0>*{padding:0}.g-4{row-gap:24px}.lead{font-size:1.15rem;line-height:1.65}.title{margin-bottom:2.5rem}.icon{display:inline-block;min-width:1em;font-style:normal;font-weight:700;margin-inline-end:.35rem}.divider{height:1px;background:var(--line)}.skip-link{position:fixed;top:-100px;left:1rem;z-index:20;background:var(--ink);color:#fff;padding:1rem}.skip-link:focus{top:1rem}
.site-header{position:sticky;top:0;z-index:10;background:#fff;box-shadow:0 1px 0 var(--line)}.contact-strip{background:var(--surface);font-size:.8rem}.contact-strip>.container{display:flex;align-items:center;gap:1.5rem;min-height:38px}.contact-strip a{color:var(--ink)}.language-picker{margin-left:auto;position:relative}.language-picker summary{padding:.2rem .5rem}.navigation{display:flex;align-items:center;gap:2rem;min-height:96px}.site-logo{flex-shrink:0}.site-logo img{width:190px;height:68px;object-fit:contain}#site-navigation{display:flex;align-items:center;gap:1.15rem;margin-left:auto;font-size:.88rem;font-weight:600}#site-navigation>a:not(.btn){color:var(--ink);padding:.5rem 0}#site-navigation [aria-current="page"]{color:var(--primary);border-bottom:2px solid var(--primary)}.nav-dropdown{position:relative}.nav-dropdown summary{padding:.5rem 0}.dropdown-panel{position:absolute;right:0;top:100%;z-index:11;background:#fff;min-width:180px;padding:.5rem;border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 24px #172e2712}.dropdown-panel a{display:block;padding:.5rem .75rem;border-radius:4px}.dropdown-panel a:hover,.dropdown-panel [aria-current]{background:var(--surface)}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);border-radius:6px;padding:.5rem .8rem;color:var(--ink)}
.hero{background:var(--surface);padding:3.5rem 0}.hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:3.5rem}.hero-copy h1{max-width:12ch}.hero-copy p{max-width:55ch}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;font-weight:700;color:var(--primary);margin-bottom:1.25rem}.hero-image{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius)}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem}.page-intro{background:var(--surface);padding:3rem 0}.page-intro h1{margin-bottom:0}.left{padding-block:1.5rem}.left .my-6{margin-block:2rem!important}.btn,button[type="submit"]{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:.75rem 1.3rem;border:1px solid transparent;border-radius:6px;font-weight:500;font-size:.95rem;text-decoration:none;line-height:1.3}.btn:hover{text-decoration:none}.btn-grad,button[type="submit"]{background:var(--primary);color:#fff}.btn-grad:hover,button[type="submit"]:hover{background:var(--primary-dark)}.btn-dark{background:var(--ink);color:#fff}.btn-white{background:#fff;color:var(--ink)}.btn-outline-light{border-color:var(--line);background:#fff;color:var(--ink)}.btn-outline-white{border-color:#fff;color:#fff;background:transparent}.btn-sm{font-size:.85rem;padding:.6rem 1rem;min-height:40px}.btn-lg{padding:1rem 1.5rem}.btn-link{color:var(--primary);background:transparent}.btn-round{border-radius:50%}
.bg-light{background:var(--surface)}.bg-dark{background:var(--ink)}.bg-grad{background:var(--primary)}.text-primary,.text-grad{color:var(--primary)!important}.text-secondary,.text-light-gray{color:var(--muted)}.text-success{color:var(--primary)}.text-white,.all-text-white,.all-text-white h1,.all-text-white h2,.all-text-white h3,.all-text-white h4,.all-text-white h5,.all-text-white h6,.all-text-white a{color:#fff}.all-text-white .btn-dark{color:#fff}.text-dark{color:var(--ink)}.bg-overlay-dark-2{position:relative}.display-1{font-size:clamp(2rem,4.5vw,3.6rem)}.display-2,.display-3,.display-4{font-size:clamp(1.8rem,4vw,3rem)}.display-5{font-size:clamp(1.5rem,3vw,2.1rem)}.display-6,.display-7{font-size:1.15rem}.display-8,.fs-4{font-size:1.4rem}.fw-bold,.font-weight-700{font-weight:700}.fw-normal{font-weight:400}.fst-italic{font-style:italic}
.blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.blog-grid .post-item{min-width:0}.post-item-wrap,.news-grid .post{height:100%;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff}.post-image img{width:100%;aspect-ratio:16/10;object-fit:cover}.post-item-desc{padding:1.4rem}.post-info{padding:1.4rem}.post-info h5{margin-top:.8rem}.post-meta,.post-time,.post-author{font-size:.8rem;color:var(--muted)}.excerpt{margin:0 0 1.2rem}.item-link,.post-link{font-weight:600}.post-info>.post-item-desc{padding:0}.blog-page .post-item-wrap{border:0}.blog-page .post-image img{max-height:600px;aspect-ratio:auto;object-fit:contain;background:var(--surface)}.blog-page .post-item-desc{padding:2rem 0}.blog-page .post-item-desc img{height:auto}.blog-page .post-item-desc table{width:100%;border-collapse:collapse}.blog-page .post-item-desc td,.blog-page .post-item-desc th{padding:.6rem;border:1px solid var(--line)}.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.news-grid .post>.post-image{margin:0}.news-grid .post-footer{padding:0 1.25rem 1.25rem}.news-grid .post-info{padding:1.25rem}.tags{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.tags a{padding:.35rem .7rem;border:1px solid var(--line);border-radius:4px;font-size:.85rem}.social-icons{list-style:none;display:flex;gap:.7rem;padding:0;justify-content:flex-end}.social-icons-link{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;color:var(--primary)}.pagination{display:flex;gap:.4rem;list-style:none;padding:0;flex-wrap:wrap}.page-link{display:block;border:1px solid var(--line);padding:.4rem .8rem;border-radius:4px}.page-item.active .page-link{background:var(--primary);color:#fff;border-color:var(--primary)}.page-item.disabled .page-link{color:var(--muted);pointer-events:none}.post-navigation{align-items:center}.post-navigation h6{margin-top:.5rem}.all-post{font-size:1.6rem}
.footer{padding-top:3rem;border-top:1px solid var(--line)}.footer-logo-item{width:180px}.footer .widget{font-size:.9rem}.footer .nav-link{display:block;padding:.25rem 0}.footer-copyright{font-size:.8rem}.footer-copyright p{margin:0}.nav,.list-unstyled,.list-group{list-style:none;padding-left:0}.nav.flex-column{display:flex}.list-group-item{padding:.35rem 0}.list-inline{list-style:none;padding:0;margin:0}.list-inline-item{display:inline-block;margin-right:.5rem}.border,.border-top{border:1px solid var(--line)}.border-top{border-width:1px 0 0}.border-0{border:0!important}.rounded{border-radius:var(--radius)}.rounded-0{border-radius:0}.shadow{box-shadow:0 6px 20px #172e2710}.text-truncate{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.position-relative{position:relative}.overflow-hidden{overflow:hidden}.align-middle{vertical-align:middle}.img-fluid,.card-img-top{max-width:100%;height:auto}.w-100{width:100%}.w-auto{width:auto}.h-100{height:100%}.h-auto{height:auto}.h-600{min-height:360px;height:auto}.rotate-270{writing-mode:vertical-rl;transform:rotate(180deg)}.process-content{padding:1rem;border-bottom:1px solid var(--line)}.contact-box{border-radius:var(--radius)}iframe{min-height:320px;border:0}.form-group{margin-bottom:1rem}label{display:block;font-size:.9rem;font-weight:600;margin-bottom:.35rem}input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]),textarea,select{width:100%;padding:.7rem .85rem;border:1px solid #baccc2;border-radius:6px;background:#fff;color:var(--ink)}textarea{min-height:140px;resize:vertical}.form-check{display:flex;align-items:flex-start;gap:.5rem}.form-check label{font-weight:400}.invalid-feedback,.text-danger{color:#a52a24}.valid-feedback{color:var(--primary)}.alert{padding:1rem;border:1px solid var(--line);border-radius:6px}.alert-success{background:#e9f5ef}.alert-danger{background:#fff0ed}
.faq-list{max-width:900px}.faq-item{border-bottom:1px solid var(--line);padding:1rem 0}.faq-item summary{font-size:1.1rem;font-weight:500;padding:.75rem .5rem}.faq-answer{padding:.5rem .5rem 1rem}.faq-answer p:last-child{margin-bottom:0}.gallery-filters{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:2rem}.gallery-filters button{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:.6rem 1rem}.gallery-filters [aria-pressed="true"]{background:var(--primary);border-color:var(--primary);color:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.gallery-grid figure{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}.gallery-grid figcaption{padding:1rem}.gallery-grid h3{font-size:1rem;margin-bottom:.5rem}.gallery-grid figcaption p{font-size:.85rem;color:var(--muted);margin:0}.gallery-link{display:block}.gallery-link:hover img{filter:brightness(.95)}#gallery-dialog{border:0;border-radius:12px;padding:3rem 1rem 1rem;width:min(95vw,1100px);max-height:95vh;background:#fff}#gallery-dialog::backdrop{background:#12231ddd}#gallery-dialog img{display:block;max-height:75vh;width:100%;object-fit:contain}.gallery-caption{margin:1rem 0 0;text-align:center}.dialog-close{position:absolute;right:.8rem;top:.4rem;border:0;background:transparent;font-size:2rem;line-height:1;padding:.3rem .5rem}body:has(dialog[open]){overflow:hidden}
@media(max-width:1100px){.navigation{flex-wrap:wrap;gap:0;min-height:86px;padding-block:.5rem}.site-logo img{width:160px;height:60px}.js .menu-toggle{display:block;margin-left:auto}#site-navigation{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:0;padding:1rem 0}#site-navigation a{padding:.5rem}.js #site-navigation:not(.is-open){display:none}.nav-dropdown .dropdown-panel{position:static;box-shadow:none;margin-top:.5rem}.contact-strip span{display:none}.hero-grid{gap:2rem}.hero-copy h1{max-width:none}}
@media(max-width:767px){.container,.container-fluid{padding-inline:20px}.hero{padding:2.5rem 0}.hero-grid{grid-template-columns:1fr}.hero-image{aspect-ratio:16/10;max-height:350px}.hero-actions .btn{flex:1}.blog-grid,.news-grid,.gallery-grid{grid-template-columns:1fr}.news-grid,.gallery-grid{gap:1.2rem}.contact-strip>.container{gap:.7rem;font-size:.7rem}.language-picker summary{padding:.2rem}.contact-strip>.container>a:first-child{display:none}section{padding:2.5rem 0}.footer .widget{margin-bottom:1.5rem}.row{row-gap:1.2rem}.g-0{row-gap:0}.post-item-desc{padding:1.1rem}.gallery-grid img{aspect-ratio:16/10}.social-icons{justify-content:center}.rotate-270{writing-mode:initial;transform:none}.post-navigation p{font-size:.8rem}.h-600{min-height:280px}.page-intro{padding:2rem 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Utilities present in the page markup. */
.align-items-center{align-items:center}.align-self-center{align-self:center}.align-self-end{align-self:flex-end}.align-self-top{align-self:flex-start}.col{flex:1 0 0}.col-10{flex:0 0 auto;width:83.33333%}.col-12{flex:0 0 auto;width:100.00000%}.col-2{flex:0 0 auto;width:16.66667%}.col-5{flex:0 0 auto;width:41.66667%}.col-6{flex:0 0 auto;width:50.00000%}.col-8{flex:0 0 auto;width:66.66667%}.col-auto{flex:0 0 auto;width:auto}.d-block{display:block!important}.d-flex{display:flex!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-none{display:none!important}.d-table{display:table!important}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.justify-content-between{justify-content:space-between}.justify-content-center{justify-content:center}.m-0{margin:0!important}.m-2{margin:.5rem!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:2rem!important}.mb-6{margin-bottom:3rem!important}.mb-8{margin-bottom:5rem!important}.me-auto{margin-right:auto!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:2rem!important}.mt-6{margin-top:3rem!important}.mx-2{margin-left:.5rem!important;margin-right:.5rem!important}.mx-auto{margin-left:auto!important;margin-right:auto!important}.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-5{margin-top:2rem!important;margin-bottom:2rem!important}.my-6{margin-top:3rem!important;margin-bottom:3rem!important}.p-0{padding:0!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:2rem!important}.pb-0{padding-bottom:0!important}.pb-3{padding-bottom:1rem!important}.pb-5{padding-bottom:2rem!important}.pe-0{padding-right:0!important}.ps-2{padding-left:.5rem!important}.pt-0{padding-top:0!important}.pt-4{padding-top:1.5rem!important}.pt-6{padding-top:3rem!important}.px-3{padding-left:1rem!important;padding-right:1rem!important}.px-4{padding-left:1.5rem!important;padding-right:1.5rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-5{padding-top:2rem!important;padding-bottom:2rem!important}.text-center{text-align:center!important}.text-start{text-align:left!important}
@media(min-width:576px){.col-sm-4{flex:0 0 auto;width:33.33333%}.col-sm-8{flex:0 0 auto;width:66.66667%}.p-sm-5{padding:2rem!important}.text-sm-center{text-align:center!important}.text-sm-end{text-align:right!important}.text-sm-start{text-align:left!important}}
@media(min-width:768px){.col-md-12{flex:0 0 auto;width:100.00000%}.col-md-2{flex:0 0 auto;width:16.66667%}.col-md-3{flex:0 0 auto;width:25.00000%}.col-md-4{flex:0 0 auto;width:33.33333%}.col-md-6{flex:0 0 auto;width:50.00000%}.col-md-8{flex:0 0 auto;width:66.66667%}.col-md-auto{flex:0 0 auto;width:auto}.d-md-block{display:block!important}.d-md-flex{display:flex!important}.justify-content-md-center{justify-content:center}.justify-content-md-start{justify-content:flex-start}.mb-md-0{margin-bottom:0!important}.mt-md-0{margin-top:0!important}.mt-md-6{margin-top:3rem!important}.offset-md-1{margin-left:8.33333%}.p-md-5{padding:2rem!important}.text-md-start{text-align:left!important}}
@media(min-width:992px){.col-lg-12{flex:0 0 auto;width:100.00000%}.col-lg-6{flex:0 0 auto;width:50.00000%}.col-lg-7{flex:0 0 auto;width:58.33333%}.col-lg-8{flex:0 0 auto;width:66.66667%}.d-lg-block{display:block!important}.m-lg-0{margin:0!important}.my-lg-9{margin-top:6rem!important;margin-bottom:6rem!important}.p-lg-5{padding:2rem!important}.pe-lg-5{padding-right:2rem!important}.text-lg-end{text-align:right!important}}
@media(min-width:1200px){.col-xl-6{flex:0 0 auto;width:50.00000%}}
/* Filters are only shown when their JavaScript enhancement is active. */
.gallery-filters{display:none}.js .gallery-filters{display:flex}

.illustrative-image{width:100%;aspect-ratio:3/2;object-fit:cover}.post-item-desc{padding-top:1.5rem}

/* Match the original typography and keep card media aligned. */
h1.fw-bold,h2.fw-bold,h3.fw-bold,h4.fw-bold,h5.fw-bold,h6.fw-bold{font-weight:500}
#site-navigation{font-family:"Poppins","Roboto",sans-serif;font-weight:500}
.post-image>a,.news-grid .post>a:first-child{display:block;line-height:0}
.blog-grid .post-image img,.news-grid .post>a:first-child img{display:block;width:100%;height:auto;aspect-ratio:3/2;max-height:none;object-fit:cover;object-position:center;margin:0}
.blog-grid .post{height:100%;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff}
.blog-grid .post-image{margin:0;padding:0}
.news-grid .item{min-width:0}
.news-grid .post-title{display:block;font-family:"Poppins","Roboto",sans-serif;font-size:1.1rem;font-weight:500;line-height:1.4;margin:.8rem 0 1rem}
.post-author,.post-time{display:inline}
.post-footer{gap:.5rem}
/* Detail pages show the entire original image rather than a card crop. */
.blog-page:not(:has(.blog-grid)) .post-image img{display:block;width:100%;max-height:600px;object-fit:contain;object-position:center;margin:0}

.about-teaser{display:flex;align-items:center;gap:1rem;writing-mode:horizontal-tb;transform:none}
.about-teaser-link.btn{display:inline-flex;width:48px;height:48px;min-width:48px;min-height:48px;padding:0;flex:0 0 48px;aspect-ratio:1;border-radius:50%;line-height:1}
.about-teaser-link svg{display:block;flex:none;margin:0}
.about-teaser-link:hover{background:#eaf2ed}
.about-teaser h4{font-size:1rem}.about-teaser p{font-size:.85rem}

/* About page: aligned photography and balanced reading columns. */
.about-page .hero-copy h1{max-width:none}
.about-page .hero-image{display:block;aspect-ratio:4/3;object-position:center}
.about-story .row{align-items:start;row-gap:2rem}
.about-story-intro{max-width:420px;padding-right:2rem;text-align:left}
.about-story-intro span{display:block;font-size:1.2rem;line-height:1.7;margin-top:1.5rem}
.about-story-copy p{padding-right:0!important}
.about-page .why-us .container{max-width:1240px}
.about-split{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;border-radius:var(--radius);overflow:hidden}
.about-photo{min-height:380px;position:relative}
.about-photo img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.about-panel{padding:clamp(1.5rem,4vw,3rem)}
.about-panel .title{margin-bottom:1.5rem}
.about-panel .pre-title{display:block;font-family:"Poppins","Roboto",sans-serif;font-size:1.25rem;margin-bottom:1rem}
.about-panel h2{font-size:clamp(1.5rem,2.5vw,2rem)}
.about-panel .row{row-gap:1rem}
.about-panel .col{flex-basis:180px}
.about-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}
.about-values>h2{grid-column:1/-1;margin-bottom:1rem!important}
.about-value{padding:1.5rem;background:var(--surface);border-radius:var(--radius)}
.about-value-number{font-size:2rem;font-weight:300;margin-bottom:1rem}
.about-value h3{font-size:1.2rem;line-height:1.4}
.about-value .process-content{padding:0;border:0;margin:0}
.about-quality{max-width:900px;margin-inline:auto}
.about-quality h2,.about-quality p{text-align:left!important}
.about-quality .display-1{font-size:clamp(1.8rem,3vw,2.6rem);margin-bottom:1.5rem!important}
@media(max-width:991px){.about-split{grid-template-columns:1fr}.about-photo{min-height:0;aspect-ratio:4/3}.about-export .about-photo{order:-1}.about-values{grid-template-columns:repeat(2,minmax(0,1fr))}.about-story-intro{max-width:none;padding:0}}
@media(max-width:575px){.about-values{grid-template-columns:1fr}.about-panel .row{display:block}.about-panel .col-auto,.about-panel .col{width:100%;margin-bottom:.5rem}}

/* Industrial edges and shared fluid page alignment. */
:root{--page-gutter:clamp(20px,3vw,64px)}
.container{max-width:1240px;padding-inline:24px}.container-fluid{max-width:none;padding-inline:var(--page-gutter)}
.contact-strip>.container,.navigation.container,.hero>.container{max-width:none;padding-inline:var(--page-gutter)}
@media(max-width:767px){.container{padding-inline:20px}}
.btn,.menu-toggle,.gallery-filters button,.tags a,.page-link,input,textarea,select,.alert,#gallery-dialog{border-radius:2px}
.btn-round,.social-icons-link{border-radius:50%}
.dropdown-panel{min-width:220px;padding:.4rem 0;border-radius:2px;border-top:3px solid var(--primary);box-shadow:0 8px 20px #172e2714;margin-top:8px}
.dropdown-panel a{padding:.8rem 1rem;border-radius:0;color:var(--ink);font-size:.85rem;line-height:1.4;border-left:3px solid transparent}
.dropdown-panel a:hover,.dropdown-panel a:focus-visible,.dropdown-panel [aria-current]{background:var(--surface);border-left-color:var(--primary);color:var(--primary);text-decoration:none}
.language-picker summary,.nav-dropdown summary{display:flex;align-items:center;gap:.6rem;list-style:none}
.language-picker summary::-webkit-details-marker,.nav-dropdown summary::-webkit-details-marker{display:none}
.language-picker summary::after,.nav-dropdown summary::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .15s}
.language-picker[open] summary::after,.nav-dropdown[open] summary::after{transform:rotate(225deg)}
.language-picker[open] summary,.nav-dropdown[open] summary{color:var(--primary)}
.about-page .hero-grid{gap:clamp(2rem,5vw,6rem)}
@media(max-width:1100px){#site-navigation .dropdown-panel{position:static;margin-top:.4rem;width:100%;box-shadow:none;min-width:0}#site-navigation .nav-dropdown{width:100%}}
@media(prefers-reduced-motion:reduce){.language-picker summary::after,.nav-dropdown summary::after{transition:none}}

.contact-icon{display:inline-block;width:20px;height:20px;min-width:20px;flex:0 0 20px;vertical-align:middle}
.footer .address li{display:flex;align-items:flex-start;gap:.75rem;justify-content:flex-start;text-align:left}
.footer .address .contact-icon{margin-top:.2rem}
.footer .address li p{margin:0}
.contact-box .contact-icon{margin:0 0 .5rem}

/* Neutral grey secondary copy for a quieter industrial palette. */
.hero-copy .lead,.hero-copy>p:not(.eyebrow):not(.text-primary),.page-intro>p{color:#596168}
.about-story-copy p,.about-story-intro span,.about-value .process-content,.about-quality>p{color:#596168}
.post-info .excerpt,.post-info>p,.post-meta,.post-time,.post-author,.gallery-grid figcaption p{color:var(--muted)}
.footer .widget>p,.footer .address,.footer-copyright{color:#626a70}
.contact-page .title>p,.contact-page .col-md-6 p,.faq-answer{color:#596168}

/* Preserve readable text on green and dark panels over grey copy rules. */
.bg-grad p,.bg-dark p,.all-text-white p,.footer .bg-grad p,.footer .bg-dark p{color:#fff}

.home-carousel{position:relative;padding:0;background:#172e27;color:#fff;overflow:hidden}
.carousel-slide{position:relative;min-height:590px;display:flex;align-items:center}
.carousel-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.carousel-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,25,21,.76) 0%,rgba(12,25,21,.56) 40%,rgba(12,25,21,.12) 68%,rgba(12,25,21,.02) 100%)}
.carousel-content{position:relative;z-index:1;padding-block:4rem 7rem}
.carousel-copy{max-width:720px}.carousel-copy h1,.carousel-copy h2{font-size:clamp(2rem,4.1vw,4rem);color:#fff;line-height:1.15;margin-bottom:1.5rem}
.carousel-copy .eyebrow{color:#b6d8c4}.carousel-copy .lead{color:#eef3f0;font-size:clamp(1rem,1.4vw,1.25rem)}.carousel-note{color:#b6d8c4;font-weight:500}
.carousel-controls{position:absolute;bottom:2rem;z-index:2;display:flex;justify-content:space-between;align-items:center}
.carousel-dots,.carousel-arrows{display:flex;gap:.6rem}.carousel-controls button{border:1px solid #ffffff66;border-radius:2px;background:transparent;color:#fff;min-width:48px;min-height:44px;padding:.5rem .9rem}
.carousel-controls button:hover,.carousel-dots [aria-current="true"]{background:#fff;color:var(--ink);border-color:#fff}
.carousel-dots button{border-width:0 0 2px;font-size:.85rem}.carousel-arrows button{font-size:1.5rem;line-height:1}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:767px){.carousel-slide{min-height:610px}.carousel-slide::after{background:linear-gradient(90deg,rgba(12,25,21,.68),rgba(12,25,21,.48))}.carousel-content{padding-block:3rem 7rem}.carousel-controls{bottom:1.5rem}.carousel-copy .hero-actions .btn{flex:0 1 auto}}

/* Navigation uses a filled active state instead of an underline. */
#site-navigation{gap:.35rem}
#site-navigation>a:not(.btn),#site-navigation .nav-dropdown summary{padding:.65rem .8rem;border:1px solid transparent;border-radius:2px;transition:background-color .15s,color .15s,border-color .15s}
#site-navigation>a:not(.btn):hover,#site-navigation .nav-dropdown summary:hover{background:#f0f2f1;color:#173e2d;text-decoration:none}
#site-navigation>a[aria-current="page"]:not(.btn){background:#245b40;border:1px solid #245b40;color:#fff;text-decoration:none;box-shadow:0 3px 8px #173e2d18}
#site-navigation .nav-dropdown[open] summary{background:#245b40;border-color:#245b40;color:#fff}
#site-navigation>a:focus-visible,#site-navigation summary:focus-visible{outline-offset:2px}
@media(max-width:1100px){#site-navigation>a:not(.btn),#site-navigation .nav-dropdown summary{padding:.75rem 1rem;width:100%}}
@media(prefers-reduced-motion:reduce){#site-navigation>a:not(.btn),#site-navigation .nav-dropdown summary{transition:none}}

.home-products{background:var(--surface);padding-block:4rem}
.home-products>.container-fluid{padding-inline:0}
.home-products .col-12>h2 .text-dark{color:var(--ink)!important}
.home-products .col-12>h2.text-primary{color:var(--primary)!important}
.home-products .post{background:#fff}
.home-products .post p{color:var(--muted)}
@media(max-width:767px){.home-products{padding-block:2.5rem}}

.post-categories{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--line)}
.category-tag{display:inline-flex;align-items:center;padding:.35rem .65rem;border:1px solid #d9e1dc;border-radius:2px;background:#f4f7f4;color:#596168;font-size:.78rem;line-height:1.4}
.category-tag:hover,.category-tag:focus-visible{background:#245b40;border-color:#245b40;color:#fff;text-decoration:none}

/* Animated industrial FAQ cards. */
.faq-item{margin-bottom:.9rem;padding:0;border:1px solid var(--line);border-left:3px solid #ccd8d0;border-radius:2px;background:#fff;overflow:hidden;transition:border-color .2s,background-color .2s}
.faq-item:hover{border-left-color:var(--primary);background:#f8faf8}
.faq-item[open]{border-left-color:var(--primary);background:var(--surface)}
.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;list-style:none;padding:1.3rem 1.5rem;font-family:"Poppins","Roboto",sans-serif;font-size:1rem;color:var(--ink)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border:1px solid #cadccf;color:var(--primary);font:24px/1 "Roboto",sans-serif;background:#fff;transition:background-color .2s,color .2s}
.faq-item[open] summary::after{content:"−";background:var(--primary);border-color:var(--primary);color:#fff}
.faq-item .faq-answer{padding:0 1.5rem 1.5rem;max-width:80ch}
@media(max-width:575px){.faq-item summary{padding:1rem;gap:.8rem;font-size:.9rem}.faq-item .faq-answer{padding:0 1rem 1rem}}
@media(prefers-reduced-motion:reduce){.faq-item,.faq-item summary::after{transition:none}}

.carousel-copy h1,.carousel-copy h2,.carousel-copy .lead{text-shadow:0 2px 10px #00000045}

/* Full background industrial carousel in the theme palette. */
.home-carousel{background:var(--surface);color:var(--ink);border-bottom:1px solid var(--line)}
.carousel-slide{min-height:600px}
.carousel-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.carousel-slide::after{display:block;background:linear-gradient(90deg,rgba(248,250,248,.94) 0%,rgba(248,250,248,.82) 28%,rgba(248,250,248,.3) 52%,transparent 72%)}
.carousel-content{padding-block:4rem 7rem}
.carousel-copy{max-width:min(50%,680px);padding-right:1rem}
.carousel-copy h1,.carousel-copy h2{color:var(--ink);font-size:clamp(2rem,3.6vw,3.7rem);text-shadow:none}
.carousel-copy .eyebrow,.carousel-copy .carousel-note{color:var(--primary)}
.carousel-copy .lead{color:#596168;text-shadow:none;font-size:1.15rem}
.carousel-copy .btn-outline-white{border-color:#a6b8ac;background:#ffffff80;color:var(--ink)}
.carousel-copy .btn-outline-white:hover{background:#e4eee7}
.carousel-controls{width:100%;padding-right:var(--page-gutter)}
.carousel-controls button{border-color:#bdcec3;color:var(--primary);background:#f8faf8e8}
.carousel-controls button:hover,.carousel-dots [aria-current="true"]{background:var(--primary);border-color:var(--primary);color:#fff}
@media(max-width:767px){
.carousel-slide{min-height:650px;flex-direction:row}
.carousel-photo{position:absolute;inset:0;width:100%;height:100%;object-position:65% center}
.carousel-slide::after{background:linear-gradient(90deg,rgba(248,250,248,.96),rgba(248,250,248,.87) 60%,rgba(248,250,248,.6))}
.carousel-content{padding-block:2.5rem 7rem}
.carousel-copy{max-width:100%;padding-right:0}
.carousel-copy h1,.carousel-copy h2{font-size:2rem}
.carousel-controls{bottom:1.5rem;width:100%;padding-right:var(--page-gutter)}
}

/* About hero photography fills the section to the right edge. */
.about-page .about-hero{padding:0}
.about-page .about-hero .hero-grid{padding:0;gap:0;align-items:stretch;grid-template-columns:1fr 1fr}
.about-hero .hero-copy{padding:clamp(2.5rem,5vw,5rem) clamp(1.5rem,4vw,4rem);padding-left:max(var(--page-gutter),calc((100vw - 1240px)/2 + 24px));align-self:center}
.about-page .about-hero .hero-image{width:100%;height:100%;min-height:520px;max-height:none;aspect-ratio:auto;object-fit:cover;border-radius:0;align-self:stretch}
@media(max-width:767px){.about-page .about-hero .hero-grid{grid-template-columns:1fr}.about-hero .hero-copy{padding:2.5rem 20px}.about-page .about-hero .hero-image{height:320px;min-height:0}}

.products-hero{position:relative;background:#f4f6f4 url('../images/generated/carousel-products.webp') center/cover no-repeat;padding:clamp(3rem,6vw,5.5rem) 0;border-bottom:1px solid var(--line)}
.products-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f4f6f4f5 0%,#f4f6f4d9 35%,#f4f6f433 65%,transparent)}
.products-hero>.container-fluid{position:relative}
.products-hero-copy{max-width:560px}
.products-hero h1{font-size:clamp(2.3rem,4vw,3.8rem);margin-bottom:1.2rem}
.products-hero .lead{color:var(--muted);max-width:38ch;margin-bottom:1.8rem}
@media(max-width:767px){.products-hero{background-position:65% center}.products-hero::before{background:#f4f6f4df}.products-hero-copy{max-width:100%}}
