@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#211e1a;--paper:#f3eee5;--accent:#af624f;--line:#b9aea0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 system-ui,sans-serif}a{color:inherit}header{padding:18px 5vw;display:flex;justify-content:space-between;align-items:center;gap:14px;background:#211e1a;color:#f6efe6}nav{display:flex;gap:clamp(10px,3vw,40px);flex-wrap:wrap}nav a,.wordmark{text-decoration:none}.wordmark{font-weight:900;letter-spacing:.13em;font-size:1.4rem}.wordmark span,h1 span{color:#dc8c73}.hero{min-height:72svh;display:grid;align-items:center;position:relative;padding:55px 7vw;color:#fff7ed;background:linear-gradient(90deg,#15110eea,#18110f3d),url('hero.webp') 62% center/cover,#382721}.hero>div{max-width:810px}.hero p:not(.label){max-width:490px;font-size:1.15rem}.hero small{position:absolute;right:5vw;bottom:1rem}.label{font-size:.73rem;letter-spacing:.16em;text-transform:uppercase;font-weight:750}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.02;margin:.2em 0}h1{font-size:clamp(3.8rem,10vw,9rem);letter-spacing:-.065em}h2{font-size:clamp(2.8rem,7vw,6.8rem);letter-spacing:-.055em}h3{font-size:2rem}.button{display:inline-block;border:1px solid;padding:.7rem 1.05rem;text-decoration:none;margin:.35rem .3rem .35rem 0}.button:hover{background:#ffffff28}.wrap{width:min(1280px,90%);margin:auto;padding:clamp(45px,7vw,105px) 0}.proof{border-bottom:1px solid var(--line);padding-block:34px}.brands{display:flex;justify-content:space-between;gap:10px 28px;flex-wrap:wrap;font:clamp(1.2rem,2.7vw,2.4rem)/1.25 Georgia,serif}.places{margin-bottom:0;color:#575046}.projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;margin-top:35px}.project{appearance:none;border:0;border-bottom:1px solid var(--line);padding:0 0 18px;text-align:left;background:transparent;color:inherit;font:inherit;cursor:pointer}.project img,.gallery-images img{width:100%;height:auto;display:block;background:#d8cabe}.project img{margin-bottom:14px}.project strong{font:clamp(1.4rem,3vw,2.8rem)/1.08 Georgia,serif;display:block;margin:.3rem 0}.project-link{font-size:.85rem}.project:hover strong{text-decoration:underline;text-underline-offset:.16em}.services,footer{background:#211e1a;color:#f6efe6}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px;margin-top:35px}.service-grid article{border-top:1px solid #9c8a79;padding-top:18px}.service-grid span{color:#e29981}.materials>p:not(.label){max-width:55ch}.legal{margin-top:40px;color:#d2c0ad}dialog{border:0;padding:clamp(18px,5vw,55px);width:min(1000px,92vw);max-height:92vh;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#14110ee8}dialog h2{font-size:clamp(2rem,6vw,4.5rem)}#close-gallery{float:right;font-size:1.8rem;border:0;background:none;cursor:pointer}.gallery-images{display:grid;gap:14px}.gallery-images img{max-height:75vh;object-fit:contain}button:focus-visible,a:focus-visible{outline:3px solid #b56648;outline-offset:4px}@media(max-width:780px){.service-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){header{align-items:flex-start}nav{font-size:.85rem;justify-content:flex-end}.projects,.service-grid{grid-template-columns:1fr}.hero{background-position:65% center;min-height:68svh}}
.editor{display:grid;grid-template-columns:minmax(160px,1fr) 3fr;gap:32px;margin-top:25px}.editor form>label{display:block;margin:0 0 16px;font-weight:650}.editor form>label input,.editor textarea{display:block;width:100%;font:inherit;padding:.6rem;border:1px solid var(--line);background:#fffaf2}.editor button{cursor:pointer}.editor-photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.editor-photos img{display:block;width:100%;height:120px;object-fit:contain}.editor-photos label{display:block}@media(max-width:650px){.editor{grid-template-columns:1fr}}


/* Responsive Stonix 2026 navigation and portfolio refinement */
html{scroll-padding-top:112px}
.site-header{position:sticky;top:0;z-index:100;min-height:76px;padding:14px clamp(18px,3.2vw,60px);gap:clamp(12px,2vw,30px);transition:padding .2s ease,min-height .2s ease,box-shadow .2s ease;background:#211e1a}
.site-header.is-scrolled{padding-top:7px;padding-bottom:7px;min-height:56px;box-shadow:0 6px 22px #0003}
.site-header .wordmark{white-space:nowrap;font-size:clamp(1.15rem,1.55vw,1.55rem);transition:font-size .2s ease}
.site-header.is-scrolled .wordmark{font-size:1.12rem}
.site-nav{display:flex;gap:clamp(12px,2.5vw,36px);align-items:center;justify-content:center;margin-left:auto}
.site-nav a{font-size:.88rem;white-space:nowrap;min-height:40px;display:inline-flex;align-items:center}
.header-actions{display:flex;gap:10px;align-items:center;flex-shrink:0}
.whatsapp-link{width:43px;height:43px;border:1px solid #776b5e;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:background .2s}
.whatsapp-link:hover{background:#ffffff24}
.header-cta{min-height:43px;padding:10px 16px;border-radius:2px;background:#f5eee4;color:#211e1a;font-size:.82rem;font-weight:750;white-space:nowrap;display:inline-flex;align-items:center;gap:12px;text-decoration:none}
.header-cta:hover{background:#fff}
.site-header.is-scrolled .whatsapp-link{width:38px;height:38px}
.site-header.is-scrolled .header-cta{min-height:38px;padding:8px 12px}
.hero{min-height:clamp(500px,68svh,820px);padding:clamp(72px,8vw,120px) clamp(22px,6vw,120px)}
.hero>div{max-width:690px}
.hero h1{font-size:clamp(2.9rem,5.5vw,6.3rem);line-height:1.06;letter-spacing:-.055em}
.hero p:not(.label){font-size:clamp(.98rem,1.15vw,1.16rem)}
h2{font-size:clamp(2.1rem,4.3vw,4.9rem);line-height:1.06}
#work h2{font-size:clamp(2rem,3.65vw,4.2rem)}
.wrap{width:min(1800px,calc(100% - clamp(32px,6vw,120px)))}
.projects{grid-template-columns:repeat(6,minmax(0,1fr));column-gap:clamp(12px,1.6vw,26px);row-gap:clamp(26px,3vw,48px);margin-top:clamp(24px,3vw,44px)}
.project{min-width:0;display:block}
.project img{aspect-ratio:4/5;object-fit:cover;border-radius:2px}
.project strong{font-size:clamp(1.1rem,1.4vw,1.75rem);line-height:1.18;overflow-wrap:anywhere}
.project .label{display:block;letter-spacing:.09em;font-size:.66rem}
.project-link{display:inline-block;margin-top:4px}
.button{min-height:44px;display:inline-flex;align-items:center}
@media(max-width:1799px){.projects{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1399px){.projects{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:999px){.projects{grid-template-columns:repeat(3,minmax(0,1fr))}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 .site-header{flex-wrap:wrap;min-height:0;gap:0 12px;padding:10px 16px 7px}
 .site-header.is-scrolled{padding:6px 16px}
 .site-header .wordmark{font-size:1.18rem}
 .site-nav{order:3;width:100%;margin:5px 0 0;gap:22px;justify-content:flex-start;overflow-x:auto;scrollbar-width:none}
 .site-nav::-webkit-scrollbar{display:none}
 .site-nav a{min-height:34px;font-size:.84rem}
 .header-actions{margin-left:auto;gap:7px}
 .whatsapp-link{width:39px;height:39px}
 .header-cta{min-height:39px;padding:8px 10px;font-size:.77rem;gap:5px}
 .hero{min-height:clamp(420px,63svh,630px);padding:56px 6vw;background-position:65% center}
 .hero h1{font-size:clamp(2.65rem,8vw,4.3rem)}
 .hero small{font-size:.65rem}
 .projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 .project strong{font-size:clamp(1.1rem,3.4vw,1.55rem)}
 .service-grid{grid-template-columns:1fr}
 .wrap{width:calc(100% - 34px)}
}
@media(max-width:419px){
 .hero h1{font-size:clamp(2.5rem,10.8vw,3.4rem)}
 .hero p:not(.label){font-size:.96rem}
 .projects{grid-template-columns:1fr;gap:24px}
 .project img{aspect-ratio:5/4}
 .project strong{font-size:1.65rem}
 .header-cta{font-size:.72rem}
 .header-cta span{display:none}
}
@media(prefers-reduced-motion:reduce){.site-header,.site-header .wordmark{transition:none}}

/* Multipage navigation, language selection and category layouts */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#site-language{appearance:auto;border:1px solid #85786b;border-radius:3px;background:#211e1a;color:#fff8ed;padding:9px 7px;font:700 .79rem system-ui,sans-serif;min-width:55px;min-height:42px;cursor:pointer}
#site-language:focus-visible{outline:3px solid #e29981;outline-offset:2px}
.tile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0}
.tile{min-width:0;min-height:220px;padding:clamp(18px,2.3vw,34px);border:1px solid var(--line);color:var(--ink);display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:15px;text-decoration:none;transition:background .2s ease,transform .2s ease;background:#faf6ef}
.tile:hover{background:#f0e6d9;transform:translateY(-3px)}
.tile h2{font-size:clamp(1.6rem,2.4vw,2.9rem);overflow-wrap:anywhere}
.tile h3{font-size:clamp(1.25rem,2vw,2rem);overflow-wrap:anywhere}
.tile p{margin:0;color:#534940;max-width:54ch}
.tile strong{font-size:.85rem;margin-top:auto}
.materials-preview{grid-template-columns:repeat(5,minmax(0,1fr))}
.materials-preview .tile{min-height:125px;padding:18px}
.page-intro{padding-top:clamp(55px,8vw,130px);padding-bottom:clamp(26px,4vw,65px)}
.page-intro h1{font-size:clamp(2.9rem,6vw,6.4rem);letter-spacing:-.055em;line-height:1.04;max-width:1100px}
.lead{max-width:780px;font-size:clamp(1.05rem,1.6vw,1.4rem);line-height:1.6}
.page-section{padding-top:20px}
.page-section>h2{font-size:clamp(2rem,3.8vw,4rem)}
.contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.world-map{height:clamp(340px,55vw,580px);background:#e4e7df;border:1px solid var(--line);border-radius:4px;overflow:hidden;z-index:0}
.world-map .leaflet-container{height:100%}
.map-caption{font-size:.78rem;color:#655e56;margin-bottom:0}
.country-list{line-height:2;color:#534940}
.contact-projects{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}
.contact-projects article{border-top:1px solid var(--line);padding:18px 4px;display:flex;flex-direction:column;gap:8px;min-width:0}
.contact-projects article span{font-size:.83rem;color:#655e56}
@media(max-width:1150px){.materials-preview{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-projects{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-nav{gap:14px}.header-actions{gap:6px}.site-header .header-cta{font-size:.75rem;padding:8px 10px}}
@media(max-width:700px){.site-header{row-gap:4px}.site-nav{order:3}.site-header .header-actions{margin-left:auto}.site-header .whatsapp-link{font-size:0}.site-header .whatsapp-link:after{content:"WA";font-size:.72rem;font-weight:800}.page-intro{padding-top:52px}.tile{min-height:190px}}
@media(max-width:419px){.tile-grid,.materials-preview,.contact-projects{grid-template-columns:1fr}.tile{min-height:155px}.materials-preview .tile{min-height:105px}#site-language{min-width:48px;padding:8px 4px}.site-header .header-cta{font-size:.7rem;padding:7px 8px}}

/* Stonix Portfolio / real catalogue */
.portfolio-intro{padding-bottom:36px}
.portfolio-intro h1{max-width:1100px}
.footprint-section{padding-top:28px}
.portfolio-map-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:stretch;gap:clamp(20px,3vw,50px)}
.country-cloud{min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.country-cloud h2{font-size:clamp(2rem,3vw,3.7rem)}
.country-scatter{width:100%;min-height:315px;display:flex;flex-wrap:wrap;align-content:center;align-items:center;justify-content:center;gap:clamp(8px,1.3vw,22px);padding:25px 0;transform:rotate(-3deg)}
.country-scatter span{display:inline-block;font-family:Georgia,serif;color:#5f554b;font-size:clamp(.92rem,1.2vw,1.5rem);padding:3px 5px}
.country-scatter span:nth-child(3n){font-size:clamp(1.3rem,1.9vw,2.2rem);color:#a05e4d;transform:translateY(9px) rotate(7deg)}
.country-scatter span:nth-child(4n){transform:translateY(-16px) rotate(-5deg)}
.country-scatter span:nth-child(5n){font-weight:bold;color:#2d2925}
.map-side{min-width:0}
.map-side .world-map{height:clamp(370px,42vw,570px)}
.products-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2vw,28px)}
.product-card{background:#fbf7f1;border:1px solid var(--line);padding:14px;min-width:0}
.product-card img{width:100%;aspect-ratio:4/4;object-fit:cover;display:block;background:#e3d8cd}
.product-card h3{font-size:clamp(1.2rem,1.6vw,1.8rem);margin-top:14px;overflow-wrap:anywhere}
.product-card p{font-size:.9rem}
.product-card .button{font-size:.85rem}
.admin-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}
.admin-tabs a{border:1px solid var(--line);padding:8px 12px;text-decoration:none}
.admin-tabs a[aria-current="page"]{background:var(--ink);color:var(--paper)}
.studio label{display:block;margin-bottom:12px}
.studio input,.studio textarea,.studio select{max-width:100%;font:inherit;padding:8px}
.studio input:not([type="file"]),.studio textarea{width:100%}
@media(max-width:1150px){.products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.portfolio-map-split{grid-template-columns:1fr}.country-scatter{min-height:190px}.products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.map-side .world-map{height:400px}}
@media(max-width:419px){.products-grid{grid-template-columns:1fr}.country-scatter{min-height:160px;gap:8px}.map-side .world-map{height:330px}}


/* Responsive design system 2026-11: shared by ALL public pages */
:root{--content-width:1760px;--gutter:clamp(18px,4vw,74px);--touch:44px}
html{scroll-padding-top:90px}
body{min-width:280px;overflow-x:clip}
img,svg,video{max-width:100%}
h1,h2,h3,p{overflow-wrap:break-word}
.wrap{width:min(var(--content-width),calc(100% - var(--gutter) - var(--gutter)));margin-inline:auto}
.site-header{display:flex;flex-wrap:nowrap;align-items:center;width:100%;min-height:72px;gap:clamp(12px,2vw,28px);padding:10px var(--gutter);z-index:1000}
.site-header .site-nav{order:0;width:auto;min-width:0;overflow:visible;display:flex;align-items:center;gap:clamp(14px,2vw,32px);margin-left:auto}
.site-header .site-nav a{font-size:clamp(.82rem,.88vw,.95rem);min-height:var(--touch)}
.site-header .site-nav a[aria-current="page"]{box-shadow:inset 0 -2px #dba88f}
.site-header .header-actions{order:0;display:flex;align-items:center;gap:8px;min-width:0;margin-left:0}
.site-header .whatsapp-link{flex:0 0 42px;width:42px;height:42px}
.site-header .whatsapp-link:after{content:none}
.site-header .whatsapp-link svg{display:block;width:23px;height:23px;flex:0 0 23px}
.site-header .header-cta{font-size:.8rem;padding:10px 13px}
.site-header.is-scrolled{min-height:55px;padding-block:6px}
.menu-toggle{display:none;align-items:center;justify-content:center;gap:8px;min-width:var(--touch);min-height:var(--touch);border:1px solid #796d63;background:transparent;color:#fff9f1;border-radius:3px;cursor:pointer;font:600 .82rem system-ui,sans-serif}
.menu-bars{display:grid;gap:4px;width:18px}
.menu-bars i{display:block;height:2px;width:18px;background:currentColor;transition:transform .2s ease,opacity .2s ease}
.hero-slideshow{isolation:isolate;overflow:hidden;background:#281e1a;min-height:clamp(520px,72svh,850px);padding-block:clamp(70px,8vw,130px)}
.hero-slides,.hero-overlay{position:absolute;inset:0;z-index:-2;pointer-events:none}
.hero-slides{z-index:-3}
.hero-slide{position:absolute;inset:0;opacity:0;background-size:cover;background-position:50% 48%;transform:scale(1.025);transition:opacity 1.4s ease,transform 7s ease;will-change:opacity}
.hero-slide.is-active{opacity:1;transform:scale(1)}
.hero-overlay{z-index:-2;background:linear-gradient(90deg,rgba(10,8,7,.85),rgba(10,8,7,.45) 52%,rgba(10,8,7,.16) 100%),linear-gradient(0deg,rgba(10,8,7,.3),transparent 36%)}
.hero-slideshow .hero-content{position:relative;max-width:740px;z-index:1}
.hero-slideshow h1{font-size:clamp(3rem,5.2vw,6rem);max-width:13ch;line-height:1.05;letter-spacing:-.06em}
.hero-slideshow .hero-content>p:not(.label){max-width:560px;line-height:1.65}
.hero-slideshow .button{background:#f5eee4;color:#211e1a;border-color:#f5eee4;font-weight:700}
.hero-slideshow .button:hover{background:#fff}
.hero-caption{position:absolute;bottom:clamp(20px,3vw,46px);left:var(--gutter);display:flex;flex-wrap:wrap;gap:9px;align-items:center;font-size:clamp(.75rem,1vw,.95rem);letter-spacing:.04em;opacity:0;transform:translateY(9px);transition:opacity .7s ease,transform .7s ease;max-width:calc(100% - 180px)}
.hero-caption.is-visible{opacity:1;transform:translateY(0)}
.hero-caption-number{opacity:.72;font-size:.76em;letter-spacing:.1em}
.hero-pause{position:absolute;right:var(--gutter);bottom:clamp(16px,2.7vw,42px);min-height:var(--touch);min-width:64px;padding:8px;border:1px solid #fff7;border-radius:2px;color:white;background:#211e1a77;cursor:pointer}
.hero-pause:hover{background:#211e1acc}
.brands{justify-content:flex-start;column-gap:clamp(16px,3vw,48px)}
.proof .places{line-height:1.8}
.service-grid article{min-width:0}
.tile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.materials .tile-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.tile{min-height:170px}
.page-intro h1{font-size:clamp(2.7rem,5.2vw,5.6rem)}
.world-map{max-width:100%}
dialog{max-width:calc(100vw - 24px)}
button,a,select{touch-action:manipulation}
.mobile-actionbar{display:none}
@media(max-width:1200px){
 .materials .tile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .site-header .header-cta{padding-inline:10px}
}
@media(max-width:900px){
 .site-header,.site-header.is-scrolled{position:sticky;top:0;display:flex;flex-wrap:nowrap;align-items:center;min-height:62px;padding:8px var(--gutter);gap:10px}
 .site-header .wordmark{font-size:1.19rem;flex:0 0 auto}
 .site-header .header-actions{order:2;margin-left:auto;gap:7px}
 .site-header .site-nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;width:100%;margin:0;padding:12px var(--gutter) 22px;overflow:visible;background:#211e1a;box-shadow:0 15px 24px #0004;border-top:1px solid #66554a;gap:0}
 .site-header.menu-open .site-nav{display:flex}
 .site-header .site-nav a{display:flex;align-items:center;min-height:50px;padding:10px 6px;border-bottom:1px solid #ffffff22;font-size:1.02rem}
 .site-header .site-nav a[aria-current="page"]{box-shadow:none;color:#edc5ae}
 .menu-toggle{display:inline-flex;order:2;font-size:0;padding:10px}
 .site-header.menu-open .menu-bars i:first-child{transform:translateY(6px) rotate(45deg)}
 .site-header.menu-open .menu-bars i:nth-child(2){opacity:0}
 .site-header.menu-open .menu-bars i:last-child{transform:translateY(-6px) rotate(-45deg)}
 .site-header .whatsapp-link{width:42px;height:42px;flex-basis:42px}
 .site-header .whatsapp-link:after{content:none}
 .site-header .header-cta{min-height:42px}
 .hero-slideshow{min-height:clamp(520px,65svh,780px)}
 .hero-slideshow h1{font-size:clamp(2.8rem,7.5vw,5.1rem)}
 .portfolio-map-split{grid-template-columns:1fr}
 .country-scatter{min-height:160px}
}
@media(max-width:650px){
 :root{--gutter:20px}
 .site-header,.site-header.is-scrolled{min-height:58px;padding:7px var(--gutter)}
 .site-header .wordmark,.site-header.is-scrolled .wordmark{font-size:1.08rem}
 .site-header .header-cta{display:none}
 .site-header #site-language{min-width:51px;min-height:42px;padding:7px 4px}
 .site-header .whatsapp-link{width:42px;height:42px}
 .hero-slideshow{min-height:clamp(570px,81svh,740px);padding:85px var(--gutter) 118px;background-position:center}
 .hero-slide{background-position:58% 50%}
 .hero-overlay{background:linear-gradient(90deg,#090807cf,#0908077d 70%,#0908073d),linear-gradient(0deg,#0908079c,transparent 65%)}
 .hero-slideshow .hero-content{max-width:100%}
 .hero-slideshow h1{font-size:clamp(2.65rem,10vw,4.05rem);max-width:12ch;line-height:1.07}
 .hero-slideshow .hero-content>p:not(.label){font-size:1rem;line-height:1.55}
 .hero-caption{bottom:80px;max-width:calc(100% - 40px);font-size:.8rem}
 .hero-pause{bottom:76px}
 .proof .wrap{padding:0}
 .brands{gap:14px 20px;font-size:clamp(1.22rem,4.6vw,1.7rem)}
 .service-grid,.tile-grid,.materials .tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .tile{min-height:150px;padding:16px}
 .tile h3{font-size:clamp(1.28rem,4.2vw,1.7rem)}
 .tile h2{font-size:clamp(1.35rem,4.3vw,2rem)}
 .page-intro{padding-block:50px 24px}
 .page-intro h1{font-size:clamp(2.35rem,9vw,3.75rem)}
 .wrap{padding-block:clamp(38px,9vw,64px)}
 .contact-projects{grid-template-columns:repeat(2,minmax(0,1fr))}
 .products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .country-scatter{padding:5px 0;min-height:140px}
 .map-side .world-map{height:330px}
 .mobile-actionbar{position:fixed;bottom:0;left:0;right:0;z-index:1200;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));background:#211e1af7;box-shadow:0 -10px 35px #0003}
 .mobile-actionbar a{display:flex;min-height:46px;align-items:center;justify-content:center;border:1px solid #ffffff66;color:#fff;text-decoration:none;font-weight:750;border-radius:3px;font-size:.88rem}
 .mobile-actionbar a:first-child{background:#f5eee4;color:#211e1a;border-color:#f5eee4}
 body{padding-bottom:calc(68px + env(safe-area-inset-bottom))}
 .contact-actions .button{flex:1 1 180px;justify-content:center}
}
@media(max-width:419px){
 :root{--gutter:15px}
 .site-header .header-actions{gap:5px}
 .site-header .wordmark{letter-spacing:.08em;font-size:1rem}
 .menu-toggle{padding:8px;min-width:39px;min-height:40px}
 .site-header #site-language{min-width:48px;min-height:40px}
 .site-header .whatsapp-link{width:40px;height:40px;flex-basis:40px}
 .hero-slideshow{padding-inline:var(--gutter)}
 .hero-slideshow h1{font-size:clamp(2.45rem,11vw,3.4rem)}
 .hero-pause{right:var(--gutter)}
 .brands{font-size:1.15rem}
 .projects,.service-grid,.tile-grid,.materials .tile-grid,.products-grid,.contact-projects{grid-template-columns:1fr}
 .tile{min-height:125px}
 .project img{aspect-ratio:5/4}
 .country-cloud h2{font-size:2rem}
}
@media(min-width:420px) and (max-width:700px){.projects{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:701px) and (max-width:999px){.projects{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1000px) and (max-width:1399px){.projects{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:1400px) and (max-width:1799px){.projects{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(min-width:1800px){.projects{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}
 .hero-slide{transform:none!important}
 .hero-caption{opacity:1;transform:none}
}

/* 2026-11-14 FIX: legacy .hero>div max-width must never constrain fullscreen slides */
.hero.hero-slideshow > .hero-slides,
.hero.hero-slideshow > .hero-overlay{
  position:absolute;
  inset:0;
  width:100%;
  max-width:none;
  min-width:100%;
  height:100%;
  padding:0;
  margin:0;
  display:block;
}
.hero.hero-slideshow > .hero-slides{z-index:-3}
.hero.hero-slideshow > .hero-overlay{z-index:-2}
.hero.hero-slideshow > .hero-content{max-width:min(740px,100%);width:100%;margin:0}
.hero.hero-slideshow .hero-slide{position:absolute;inset:0;width:100%;height:100%;max-width:none;background-repeat:no-repeat;background-size:cover;background-position:center}
.hero.hero-slideshow .hero-slide.is-active{opacity:1}
.site-header .brand-logo{display:block;width:auto;height:34px;max-width:min(180px,34vw);object-fit:contain;object-position:left center}
.site-header.is-scrolled .brand-logo{height:27px}
.site-header .wordmark.has-brand-logo{display:inline-flex;align-items:center;min-height:36px}
.site-header .wordmark.has-brand-logo .brand-wordmark-fallback{display:none}
@media(max-width:900px){.site-header .brand-logo{height:29px;max-width:130px}.site-header.is-scrolled .brand-logo{height:26px}}
@media(max-width:419px){.site-header .brand-logo{height:25px;max-width:108px}}

/* Original WordPress photography: keep portrait work whole while the slide fills the viewport */
.hero.hero-slideshow .hero-slide-portrait{
  background-position:center;
  overflow:hidden;
}
.hero.hero-slideshow .hero-slide-portrait::before{
  content:"";
  position:absolute;
  inset:-4%;
  background:inherit;
  background-position:center;
  background-size:cover;
  filter:blur(19px) brightness(.73);
  transform:scale(1.08);
}
.hero.hero-slideshow .hero-slide-portrait-image{
  position:absolute;
  z-index:1;
  right:4%;
  top:0;
  height:100%;
  width:47%;
  max-width:none;
  object-fit:contain;
  object-position:center;
  filter:drop-shadow(0 10px 25px #0004);
}
@media(max-width:900px){
  .hero.hero-slideshow .hero-slide-portrait-image{right:0;width:55%}
}
@media(max-width:650px){
  .hero.hero-slideshow .hero-slide-portrait-image{right:0;left:0;width:100%;height:100%;opacity:.72;object-fit:cover;object-position:center}
  .hero.hero-slideshow .hero-slide-portrait::before{filter:blur(22px) brightness(.58)}
}

/* CANONICAL GLOBAL STONIX LIGHT THEME — all pages use this single CSS file */
/* Stonix — calm, high-trust visual system. This file overrides legacy style.css.
   Warm ivory + near-white stone, charcoal ink, restrained copper accent. */
:root{--ink:#222928;--paper:#fcfcfa;--accent:#815745;--line:#dddeda;--stone:#f3f5f3;--subtle:#65716e;--serif:'Manrope',Arial,sans-serif}
body{background:var(--paper);color:var(--ink);font:400 16px/1.68 'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased}
h1,h2,h3,.brands,.project strong,.country-scatter span{font-family:'Manrope','Inter',system-ui,sans-serif}
h1,h2,h3{font-weight:600;letter-spacing:-.045em;line-height:1.13}
h1{letter-spacing:-.055em}h2{font-size:clamp(2rem,3.7vw,3.9rem)}h3{font-size:clamp(1.25rem,1.7vw,1.85rem)}
p{max-width:75ch}.label{font:650 .72rem/1.6 'Inter',sans-serif;letter-spacing:.12em;color:var(--accent)}
.wrap{padding-block:clamp(50px,7vw,100px)}
.lead{color:#4b5754;line-height:1.7;font-weight:400}
.site-header,.site-header.is-scrolled{
 background:rgba(255,255,255,.97);color:#222928;
 border-bottom:1px solid #e5e8e4;box-shadow:0 2px 18px rgba(32,43,41,.035);
 backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
}
.site-header.is-scrolled{box-shadow:0 7px 23px rgba(32,43,41,.07)}
.site-header .wordmark{color:#24302d;font-weight:800;letter-spacing:.12em}
.site-header .wordmark span{color:var(--accent)}
.site-header .site-nav a{color:#36433f;font-weight:550}
.site-header .site-nav a:hover{color:#754a37}
.site-header .site-nav a[aria-current="page"]{box-shadow:inset 0 -2px #87614d}
.site-header .whatsapp-link,.site-header.is-scrolled .whatsapp-link{color:#24302d;border:1px solid #d9dfdb;background:#fff}
.site-header .whatsapp-link:hover{background:#edf3ee}
.site-header .header-cta{background:#273a35;color:#fff;border-radius:4px;font-weight:650}
.site-header .header-cta:hover{background:#3b544b;color:#fff}
.site-header #site-language{background:transparent;color:#34413d;border:1px solid #dde2de;border-radius:4px;font-weight:650}
.site-header .menu-toggle{color:#273a35;border-color:#d9dfdb;background:#fff}
.site-header .menu-bars i{background:currentColor}
.site-header .site-nav a:focus-visible,.site-header .header-cta:focus-visible{outline:2px solid #8e614b;outline-offset:3px}
.hero.hero-slideshow{background:#23302e;color:#fff;min-height:clamp(510px,72svh,800px)}
.hero.hero-slideshow .hero-content{max-width:750px}
.hero.hero-slideshow h1{font-size:clamp(2.9rem,5.2vw,5.55rem);font-weight:650;line-height:1.06;letter-spacing:-.06em;max-width:15ch;color:#fff}
.hero.hero-slideshow .label{color:#f0e4d9}
.hero.hero-slideshow .hero-content>p:not(.label){font-size:clamp(1rem,1.2vw,1.15rem);line-height:1.64;max-width:49ch;color:#fbfbf8}
.hero.hero-slideshow .hero-overlay{background:linear-gradient(90deg,rgba(19,29,27,.83),rgba(19,29,27,.49) 57%,rgba(19,29,27,.14)),linear-gradient(0deg,rgba(18,27,25,.35),transparent 43%)}
.hero.hero-slideshow .button{background:#fff;color:#273a35;border-color:#fff;box-shadow:0 3px 16px #0002}
.hero.hero-slideshow .button:hover{background:#f0f4ef}
.hero-caption{font-weight:500;color:#f8faf7}
.button{border-radius:4px;padding:.72rem 1.1rem;text-decoration:none;font-weight:600;letter-spacing:-.012em;transition:background .18s,border-color .18s,color .18s}
main:not(:has(.hero)) .button, .materials .button, .portfolio-teaser .button{background:#273a35;color:#fff;border:1px solid #273a35}
main:not(:has(.hero)) .button:hover,.materials .button:hover,.portfolio-teaser .button:hover{background:#3b544b}
.proof{border-bottom:1px solid #e4e7e3}
.proof .brands{font-weight:600;font-size:clamp(1.06rem,2vw,1.8rem);line-height:1.4;color:#293632}
.proof .places{font-size:.86rem;color:#63716b;line-height:1.8}
.portfolio-teaser .lead{max-width:52ch}
.services{background:#f4f6f3;color:#24302d}
.service-grid{gap:clamp(14px,2.2vw,35px)}
.service-grid article{padding-top:21px;border-top:1px solid #cbd4cf}
.service-grid span{color:#885f4b;font-weight:700}
.service-grid h3{color:#23352e;font-size:clamp(1.35rem,1.8vw,1.95rem);font-weight:650}
.service-grid p{color:#4b5954;line-height:1.7}
.services .label{color:#815745}
.services .button{background:#273a35;color:white;border-color:#273a35}
.services .button:hover{background:#3d554c}
.tile,.product-card{border:1px solid #e1e5e0;background:#fff;border-radius:5px}
.tile:hover{background:#f8f9f7;border-color:#b8c4bb;transform:translateY(-2px)}
.tile h2,.tile h3{font-weight:650;letter-spacing:-.04em}
.tile p,.product-card p{color:#53615a}
.project{border-bottom-color:#e0e5e0}
.project strong{font-weight:650;letter-spacing:-.035em}
footer{background:#f1f4f2;color:#24312d;border-top:1px solid #e4eae5}
footer .wrap{padding-block:clamp(52px,7vw,92px)}
footer .label{color:#815745}
footer h2{font-size:clamp(2.1rem,4.2vw,4.25rem);max-width:18ch}
footer p{color:#56645e;max-width:55ch}
footer .button{background:#273a35;color:#fff;border:1px solid #273a35}
footer .button:hover{background:#3e574d}
footer .button[href*="wa.me"]{background:transparent;color:#273a35;border-color:#acb9b0}
footer .button[href*="wa.me"]:hover{background:#e5ebe5}
footer .legal{color:#748078;border-top:1px solid #dbe3db;padding-top:21px}
.country-cloud .country-scatter span{color:#50635a;font-weight:550}
.country-cloud .country-scatter span:nth-child(3n){color:#815745}
.country-list,.map-caption{color:#67746d}
.world-map{border-color:#d6dfd8}
@media(max-width:900px){
 .site-header .site-nav{background:#fff;border-top-color:#e5eae5;box-shadow:0 15px 26px rgba(36,49,43,.10)}
 .site-header .site-nav a{color:#273a35;border-bottom-color:#edf1ed}
 .site-header .site-nav a[aria-current="page"]{color:#815745}
}
@media(max-width:650px){
 .hero.hero-slideshow h1{font-size:clamp(2.55rem,9.5vw,3.8rem)}
 .hero.hero-slideshow .hero-overlay{background:linear-gradient(90deg,rgba(19,29,27,.85),rgba(19,29,27,.49) 87%),linear-gradient(0deg,#131d1b88,transparent)}
 .mobile-actionbar{background:#fffdf9f7;border-top:1px solid #e0e7e0;box-shadow:0 -8px 26px #1a2c2517}
 .mobile-actionbar a{border:1px solid #bbc8bc;color:#273a35}
 .mobile-actionbar a:first-child{background:#273a35;color:#fff;border-color:#273a35}
}
@media(prefers-reduced-motion:reduce){.tile:hover{transform:none}}

/* Original WordPress logo stays legible on the new white header, including light/white variants. */
.site-header .brand-logo{filter:brightness(0) saturate(100%);opacity:.94}


/* STONIX GLOBAL TYPE SYSTEM — editorial luxury × technical precision
 * DM Serif Display: hero / section titles / featured project names
 * DM Sans: paragraphs / UI / service headings / material specs
 */
:root{
  --font-display:"DM Serif Display", Georgia, "Times New Roman", serif;
  --font-text:"DM Sans", Arial, system-ui, sans-serif;
}
body{font-family:var(--font-text);font-weight:400;font-size:16px;line-height:1.67;letter-spacing:-.006em}
h1,h2{font-family:var(--font-display);font-weight:400;letter-spacing:-.024em;line-height:1.06;overflow-wrap:normal;word-break:normal;text-wrap:balance}
h3,.service-grid h3,.tile h3,.product-card h3{font-family:var(--font-text);font-weight:600;letter-spacing:-.035em;line-height:1.25;text-wrap:balance}
p,.lead{font-family:var(--font-text);line-height:1.7;max-width:68ch}
.lead{font-size:clamp(1.05rem,1.3vw,1.24rem)}
.site-header .site-nav a,.site-header #site-language,.site-header .header-cta,.button,.label,.legal,.map-caption,.menu-toggle,.project .label{
  font-family:var(--font-text);
}
.label{font-size:.72rem;font-weight:700;letter-spacing:.11em;line-height:1.5}
.hero.hero-slideshow h1{
  font-family:var(--font-display);
  font-weight:400;
  font-size:clamp(3.45rem,6.1vw,6.6rem);
  letter-spacing:-.025em;
  line-height:1.02;
  max-width:13ch;
  text-wrap:balance;
}
.page-intro h1{font-family:var(--font-display);font-weight:400;letter-spacing:-.025em;line-height:1.05;font-size:clamp(3rem,5.8vw,6.4rem)}
#work h2,.page-section>h2,.country-cloud h2,.services h2,.materials h2,footer h2{font-family:var(--font-display);font-weight:400;letter-spacing:-.02em;line-height:1.08}
.project strong{font-family:var(--font-display);font-weight:400;letter-spacing:-.012em;line-height:1.17;font-size:clamp(1.4rem,1.65vw,2.1rem)}
.tile h2{font-family:var(--font-display);font-weight:400;letter-spacing:-.02em;line-height:1.12}
.brands,.proof .brands{font-family:var(--font-text);font-weight:600;letter-spacing:-.03em}
.country-cloud .country-scatter span{font-family:var(--font-display);font-weight:400;letter-spacing:-.02em}
.hero.hero-slideshow .hero-content>p:not(.label){font-family:var(--font-text);font-size:clamp(1rem,1.2vw,1.13rem);line-height:1.65;max-width:48ch}
@media(max-width:900px){
 .hero.hero-slideshow h1{font-size:clamp(3.25rem,7.8vw,5.2rem);line-height:1.04}
}
@media(max-width:650px){
 .hero.hero-slideshow h1{font-size:clamp(2.85rem,10vw,4.15rem);max-width:12ch;line-height:1.035}
 .page-intro h1{font-size:clamp(2.75rem,9.5vw,4rem)}
 h2{font-size:clamp(2.1rem,7.5vw,3.1rem)}
 .project strong{font-size:clamp(1.5rem,5vw,1.95rem)}
 .hero.hero-slideshow .hero-content>p:not(.label){font-size:1rem;line-height:1.62}
}
@media(max-width:419px){
 .hero.hero-slideshow h1{font-size:clamp(2.65rem,10.7vw,3.4rem)}
 .project strong{font-size:1.65rem}
}
