@charset "UTF-8";

/* Rwanda edition: full-width sky blue, sun yellow and forest green color fields. */
:root{
  color-scheme:light;
  --rwanda-blue:#00A1DE;--rwanda-yellow:#FAD201;--rwanda-green:#20603D;
  --paper:#FFFFFF;--ink:#153E51;--muted:#526D79;--line:#C5DDE7;
  --blue:#006D9E;--blue-mid:#167B9F;--blue-light:#00A1DE;--logo-gray:#617681;
  --steel-surface:#E2F1F8;--steel-raised:#F8FCFE;--steel-deep:#E6F3EF;
  --silver:#085B82;--ice:#BCEBFA;--product-paper:#EBF2F6;--photo-backdrop:#E2F0F7;
  --green-light:#20603D;
}
html,body{background:var(--paper);color:var(--ink)}
body{color-scheme:light}
::selection{background:var(--rwanda-yellow);color:#153E51}
button:focus-visible,a:focus-visible{outline-color:#087CAE}
h1,h2,h3{color:var(--silver)}
.eyebrow{color:var(--blue)}
.section-kicker:before{background:var(--rwanda-yellow)}
.section-kicker .muted{color:var(--muted)}
.body-copy,.page-title-row p{color:var(--muted)}

/* White navigation sits above the large national-color sections. */
.site-header{
  background:linear-gradient(180deg,#FFFFFF 0,#FFFFFF 85%,#F3FAFE 100%);
  border-bottom-color:#B7D8E8;box-shadow:0 3px 18px #1D72900A;
}
.site-header::before{
  content:none;
}
.wordmark{background:transparent;box-shadow:none}
.site-header nav a{color:#426575}
.site-header nav a span{color:var(--blue)}
.site-header nav a:hover,.site-header nav a.active{color:var(--blue)}
.site-header nav a::after{background:var(--rwanda-blue)}
.header-contact{color:var(--rwanda-green);border-bottom-color:#92BDA5}
.header-contact:hover{color:#006D9E;border-bottom-color:var(--rwanda-blue)}

/* Yellow anodized surfaces with one directional sweep on hover. */
.button{
  color:#183E40;background:linear-gradient(180deg,#FFF3B5 0,#FAD201 8%,#EDC506 76%,#F8DF62 100%);
  border-color:#E2C846 #D4B622 #C7A91F #E3C64E;
  box-shadow:inset 0 1px 0 #FFFBE099,inset 0 -1px 0 #B28A1226,0 3px 9px #456C8512;
  transition:color 240ms ease,border-color 240ms ease,box-shadow 240ms ease;
}
.button::before{
  background:linear-gradient(115deg,transparent 27%,#FFFEEC22 43%,#FFFFFF73 50%,#FFFEEC20 57%,transparent 73%);
  transform:translateX(-125%);transition:transform 560ms cubic-bezier(.22,1,.36,1);pointer-events:none;
}
.button:hover,.button:focus-visible{
  color:#102E32;border-color:#C9A713;
  box-shadow:inset 0 1px 0 #FFFFFF99,inset 0 -1px 0 #B28A1226,0 4px 14px #456C8520;
}
.button:hover::before,.button:focus-visible::before{transform:translateX(125%)}
.button:hover .arrow,.button:focus-visible .arrow{transform:translate(4px,-1px)}
.button:disabled,.button:disabled:hover{color:#183E40;cursor:default;box-shadow:none;opacity:.55}
.button:disabled::before{display:none}.button:disabled .arrow{transform:none}
.text-link{color:var(--blue);border-bottom-color:#90BCD0}
.text-link:hover{color:var(--rwanda-green);border-bottom-color:var(--rwanda-green)}

.about-image{background:var(--photo-backdrop)}
.about-image>img{object-fit:contain}
.image-caption{background:#E2F0E7;color:var(--rwanda-green);border-top:1px solid #B9D5C4}
.image-caption span:last-child{color:var(--rwanda-green)}
.about-bottom{border-color:var(--line)}
.about-bottom .small-number{color:var(--rwanda-green)}
.about-bottom h3{color:var(--silver)}.about-bottom p{color:var(--muted)}

.filters{border-bottom-color:var(--line);scrollbar-color:var(--rwanda-blue) transparent}
.filter{color:#526D79}.filter:hover{background:#E3F3FA;color:var(--blue)}
.filter.active{background:#DDEFF9;color:#075C85}
.filter.active::after{background:var(--rwanda-blue)}

/* Original photographs and the unframed catalogue grid are preserved. */
.gallery-card{background:transparent;color:var(--ink);border:0;box-shadow:none}
.project-card .card-image{background:var(--photo-backdrop)}
.product-card .card-image{background:var(--product-paper)}
.card-image img{object-fit:contain}
.card-image .view-mark{
  color:#086C96;background:linear-gradient(160deg,#FFFFFF,#DFF2FB);
  border-color:#83BDD5;box-shadow:inset 0 1px 0 #FFFFFFDD;
}
.gallery-card:hover .view-mark{background:var(--rwanda-yellow);border-color:#D4BA29;color:#183E40}
.card-copy{border-bottom-color:var(--line)}.card-kicker{color:var(--rwanda-green)}
.card-title{color:var(--silver)}.card-description{color:var(--muted)}
.card-meta{color:#5C7480}.collection-footer>span{color:var(--muted)}

.factory-photo{background:var(--photo-backdrop)}.factory-photo img{object-fit:contain}
.factory-overview h2,.factory-facts h3{color:var(--silver)}
.factory-overview .eyebrow{color:var(--rwanda-green)}
.factory-overview p,.factory-overview .factory-intro{color:var(--muted)}
.factory-overview .factory-mobile-address{color:#326C50}
.factory-facts section{border-color:#B9D5C4}
.factory-tile{color:var(--ink);background:transparent}.factory-tile .card-image{background:var(--photo-backdrop)}

.contact-section{border-color:#B7D6C4}
.contact-information,.contact-information>div+div{border-color:var(--line)}
.contact-heading h2{color:var(--silver)}
.contact-heading>.eyebrow,.map-copy>.eyebrow{color:var(--rwanda-green)}
.map-frame{background:#E5F1F7;border-color:#A9CDB9}.map-frame iframe{color-scheme:light}
.map-copy h3,.contact-information h3{color:var(--silver)}
.map-copy p,.contact-information p{color:var(--muted)}
.contact-information a{color:var(--blue)}
.contact-information a:hover{color:var(--rwanda-green);text-decoration-color:var(--rwanda-green)}
.phone-divider{color:#5D8D72}
.site-footer{background:#E1F0E7;border-top-color:#B6D5C3;color:#416C56}
.site-footer span:first-child{color:var(--rwanda-green)}#page-index{color:var(--rwanda-green)}

.circle-button{color:var(--blue);background:#F6FCFF;border-color:#A3CADA;box-shadow:inset 0 1px 0 #FFFFFF}
.circle-button:hover{background:var(--rwanda-yellow);border-color:#CCB51C;color:#183E40}
.circle-button:disabled{opacity:.4;cursor:default;box-shadow:none}
.circle-button:disabled:hover{background:#F6FCFF;border-color:#A3CADA;color:var(--blue)}

/* A blue machined aluminum profile frames only the open detail view. */
#gallery-dialog{
  color-scheme:light;--dialog-media:var(--photo-backdrop);
  background:#F8FCFF;background-clip:padding-box;color:var(--ink);overflow:auto;
  box-shadow:0 0 0 .5px #61A1BD80,inset 0 0 0 1px #FFFFFF,0 25px 85px #17496045;
  scrollbar-color:#8AB9CE #F8FCFF;
}
#gallery-dialog::backdrop{background:rgba(19,56,72,.38)}
#gallery-dialog .dialog-close{background:#FFFFFF;color:var(--blue);border-color:#A3CADA}
#gallery-dialog .dialog-close:hover{background:var(--rwanda-yellow);color:#183E40;border-color:#CCB51C}
#gallery-dialog .dialog-picture>img{background:var(--dialog-media);object-fit:contain}
.dialog-copy h2{color:var(--silver)}.dialog-copy>p{color:var(--muted)}
.dialog-details>div{border-color:var(--line)}.dialog-details dt{color:var(--rwanda-green)}
.dialog-details dd{color:var(--ink)}#dialog-image-count{color:var(--blue)}
.dialog-image-controls{color:var(--blue)}
#dialog-thumbnails button{background:var(--dialog-media);border-color:#BDDAE7}
#dialog-thumbnails button.active{border-color:var(--rwanda-blue)}
#dialog-thumbnails button:hover{border-color:var(--rwanda-green)}
#dialog-thumbnails img{object-fit:contain}
#gallery-dialog[data-gallery-section="products"]{--dialog-media:var(--product-paper)}

.back-to-top{
  background:linear-gradient(180deg,#FCFFFD,#E0F0E5 12%,#D1E7D9 86%,#EDF8F1);
  color:var(--rwanda-green);border-color:#B4D2BE #98BEA6 #92B89F #BDDAC7;
  box-shadow:inset 0 1px 0 #FFFFFFCC,0 5px 18px #2B684B1C;
}
.back-to-top:hover{background:linear-gradient(180deg,#FFFBE2,#FAE57C 14%,#F6DB42 86%,#FFF1A5);color:#1F5140}
.jyg-loading-window--left{fill:var(--rwanda-blue)}
.jyg-loading-window--middle{fill:var(--rwanda-yellow)}
.jyg-loading-window--right{fill:var(--rwanda-green)}

/* Major surfaces, not decorative strips: blue hero, yellow credentials, green contact. */
:root{--page-gutter:4.8vw;--on-blue:#062A38}
.site-header nav{gap:0}
.site-header nav a{padding:0 18px}
.site-header nav a.active{background:var(--rwanda-yellow);color:#173C32}
.site-header nav a::after{background:var(--rwanda-green)}
.header-contact{background:var(--rwanda-green);color:#FFFFFF;border:0;padding:14px 18px}
.header-contact:hover{background:#28754C;color:#FFFFFF}
.button{background:var(--rwanda-yellow);box-shadow:none;border-color:#DFC01A;color:#173C32}
.button:hover,.button:focus-visible{box-shadow:0 4px 14px #193E491A}
.page{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}
.about-grid{
  margin:-39px calc(-1 * var(--page-gutter)) 0;
  gap:0;background:var(--rwanda-blue);grid-template-columns:1.08fr 1fr;
  min-height:620px;
}
.about-content{
  padding:54px 44px 56px var(--page-gutter);justify-content:center;
  color:var(--on-blue);
}
.about-content h1{color:var(--on-blue);font-size:clamp(58px,6vw,88px)}
.about-content .eyebrow,.about-content .section-kicker .muted,
.about-content .body-copy{color:var(--on-blue)}
.about-content .section-kicker{margin-bottom:32px}
.about-content .body-copy{max-width:450px}
.about-content .about-description{margin-top:16px}
.about-content .button{margin-top:28px}
.about-content button:focus-visible,.about-content a:focus-visible{outline-color:#062A38}
.about-image{
  margin:38px var(--page-gutter) 38px 0;width:auto;min-height:544px;
  background:#E9F3F8;
}
.image-caption{background:var(--rwanda-green);color:#FFFFFF;border:0}
.image-caption span:last-child{color:var(--rwanda-yellow)}
.about-bottom{
  margin:0 calc(-1 * var(--page-gutter));padding:38px var(--page-gutter) 40px;
  background:var(--rwanda-yellow);border:0;gap:4%;
}
.about-bottom .small-number,.about-bottom h3,.about-bottom p{color:#183C30}
.about-bottom>div{gap:16px}
.contact-section{
  margin:0 calc(-1 * var(--page-gutter)) -55px;
  padding:60px var(--page-gutter) 54px;background:var(--rwanda-green);border:0;
  color:#FFFFFF;
}
.contact-heading h2,.map-copy h3,.contact-information h3{color:#FFFFFF}
.contact-heading>.eyebrow,.map-copy>.eyebrow,.contact-information .eyebrow{color:var(--rwanda-yellow)}
.map-copy p,.contact-information p{color:#F1F8F3}
.contact-information{border-color:#FFFFFF55}
.contact-information a{color:#FFFFFF}
.contact-information a:hover{color:var(--rwanda-yellow);text-decoration-color:var(--rwanda-yellow)}
.contact-information .phone-divider{color:var(--rwanda-yellow)}
.map-frame{background:#E6F0E8;border:0}
.map-actions .text-link{color:#FFFFFF;border-color:#FFFFFF88}
.map-actions .text-link:hover{color:var(--rwanda-yellow);border-color:var(--rwanda-yellow)}
.contact-section a:focus-visible{outline-color:var(--rwanda-yellow)}
.site-footer{background:var(--rwanda-green);border-top-color:#FFFFFF55;color:#FFFFFF}
.site-footer span:first-child{color:#FFFFFF}
#page-index{color:var(--rwanda-yellow)}

/* Each catalogue opens with a full-width blue title block. */
.page-masthead{
  margin:-48px calc(-1 * var(--page-gutter)) 38px;
  padding:44px var(--page-gutter) 46px;background:var(--rwanda-blue);
  color:var(--on-blue);
}
.page-masthead .eyebrow,.page-masthead .section-kicker .muted,
.page-masthead h1,.page-masthead .page-title-row p{color:var(--on-blue)}
.page-masthead .page-title-row,.factory-page .page-masthead .page-title-row{margin-bottom:0}
.page-masthead .section-kicker{margin-bottom:28px}
.products-page .page-masthead{margin-bottom:0}
.products-page .filters{
  margin:0 calc(-1 * var(--page-gutter)) 36px;
  padding:18px var(--page-gutter);background:var(--rwanda-yellow);
  border:0;gap:8px;scrollbar-color:#20603D #FAD201;
}
.filter,.filter:first-child{padding:14px 20px;color:#173C32}
.filter:hover{background:#E5C31A;color:#173C32}
.filter.active{background:var(--rwanda-green);color:#FFFFFF}
.filter.active::after{display:none}
.filter:focus-visible{outline-color:#173C32;outline-offset:3px}
.collection-footer{
  margin:42px calc(-1 * var(--page-gutter)) -62px;
  padding:24px var(--page-gutter);background:var(--rwanda-yellow);
}
.collection-footer>span,.collection-footer .text-link{color:#173C32}
.collection-footer .text-link{border-color:#548247}
.card-image .view-mark{background:var(--rwanda-yellow);color:#173C32;border-color:#DFC01A;box-shadow:none}
.gallery-card:hover .view-mark{background:var(--rwanda-green);color:#FFFFFF;border-color:var(--rwanda-green)}
.factory-overview{padding:32px;background:var(--rwanda-green);color:#FFFFFF}
.factory-overview h2,.factory-facts h3,.factory-overview p,
.factory-overview .factory-intro,.factory-overview .factory-mobile-address{color:#FFFFFF}
.factory-overview .eyebrow{color:var(--rwanda-yellow)}
.factory-facts section{border-color:#FFFFFF55}
.back-to-top{background:var(--rwanda-yellow);color:#173C32;border-color:#CEB118;box-shadow:0 4px 18px #173E4C26}
.back-to-top:hover{background:var(--rwanda-green);color:#FFFFFF;border-color:#FFFFFF88}

@media(min-width:1650px){
  :root{--page-gutter:max(6vw,calc((100vw - 1480px)/2))}
  .about-content{padding-right:64px}
  .about-content h1{font-size:94px}
  .about-image{min-height:600px}
}
@media(max-width:1050px){
  .site-header nav a{padding:0 12px}
  .about-content{padding:40px 28px 44px var(--page-gutter)}
  .about-content h1{font-size:clamp(50px,6vw,66px)}
  .about-image{margin-top:30px;margin-bottom:30px;min-height:500px}
  .factory-overview{padding:26px}
}
@media(max-width:740px){
  :root{--page-gutter:6vw}
  .site-header{background:linear-gradient(180deg,#FFFFFF,#F4FAFD)}
  .site-header nav{gap:0}
  .site-header nav a{padding:0 9px}
  .header-contact{color:#FFFFFF;padding:12px 14px}
  .about-grid{margin-top:-30px;grid-template-columns:1fr;gap:0;min-height:0}
  .about-content{padding:36px var(--page-gutter) 34px}
  .about-content h1{font-size:54px;max-width:600px}
  .about-content .section-kicker{margin-bottom:28px}
  .about-image{margin:0 var(--page-gutter) 32px;min-height:380px;max-height:580px;aspect-ratio:1.1}
  .about-bottom{padding:32px var(--page-gutter);gap:24px}
  .contact-section{margin-bottom:-40px;padding:42px var(--page-gutter) 38px}
  .contact-information>div+div{border-color:#FFFFFF55}
  .page-masthead{margin-top:-30px;margin-bottom:28px;padding:34px var(--page-gutter) 32px}
  .page-masthead .section-kicker{margin-bottom:23px}
  .products-page .filters{padding-top:14px;padding-bottom:14px;margin-bottom:28px}
  .filter,.filter:first-child{padding:12px 16px}
  .collection-footer{margin-top:32px;margin-bottom:-40px;padding-top:20px;padding-bottom:20px}
  .factory-overview{padding:28px;margin-bottom:0}
  .factory-overview .factory-mobile-address{color:#FFFFFF}
  #gallery-dialog{box-shadow:0 0 0 .5px #61A1BD80,inset 0 0 0 .5px #FFFFFF,0 16px 50px #17496045}
  .back-to-top{box-shadow:0 3px 12px #2B684B33}
}
@media(max-width:480px){
  .site-header nav a{padding:0 8px}
  .about-content h1{font-size:50px}
  .about-image{min-height:330px;aspect-ratio:1.05}
  .about-bottom h3{font-size:19px}
  .factory-overview{padding:25px}
}
@media(prefers-reduced-motion:reduce){
  .button,.button::before,.button .arrow,.back-to-top,.back-to-top>span:first-child,.circle-button,.card-image .view-mark{transition:none}
  .button::before{display:none}
  .button:hover .arrow,.button:focus-visible .arrow,.gallery-card:hover .view-mark{transform:none}
  #gallery-dialog::backdrop{backdrop-filter:none}
}
