:root{--paper:#f4f0e7;--ink:#302b23;--olive:#424d3b;--leather:#946342;--line:#d4cbbd}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,sans-serif}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #af713d;outline-offset:5px}button{cursor:pointer}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.09}h1{font-size:clamp(46px,5.2vw,82px);letter-spacing:-3px}h2{font-size:clamp(37px,4vw,58px);letter-spacing:-1.7px}h3{font-size:29px}em{color:var(--leather);font-weight:400}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;margin-bottom:26px}.demo{padding:7px 4%;background:var(--olive);color:white;font-size:10px;letter-spacing:1.3px;display:flex;justify-content:space-between;gap:16px}header{display:flex;align-items:center;justify-content:space-between;padding:25px 4%;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:5}.brand{font-family:Georgia,serif;font-size:36px;line-height:1;text-decoration:none;white-space:nowrap}.brand span{display:block;font:9px Arial,sans-serif;letter-spacing:2px;margin-top:11px}nav{display:flex;gap:30px;align-items:center}nav a{font-size:13px;text-decoration:none}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--olive);color:#fff;padding:17px 23px;text-decoration:none;border:1px solid var(--olive);font-size:13px}.button:hover{background:#293525}.small{padding:12px 18px}.text-link{display:inline-block;font-size:13px;margin-top:22px}#menu{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:680px}.hero-copy{padding:70px 8% 32px}.hero-copy>p:not(.eyebrow){margin:28px 0;max-width:420px;color:#645c51}.hero-copy>.text-link{display:block;width:max-content}.hero-foot{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;margin-top:45px;padding-top:20px;font-size:11px;letter-spacing:1px}.hero-image{position:relative;overflow:hidden;min-height:640px}.hero-image>img{height:100%;width:100%;object-fit:cover;object-position:39% center}.hero-image figcaption{position:absolute;bottom:0;left:0;right:0;padding:10px 20px;background:#302b23b5;color:white;font-size:10px}.stamp{position:absolute;top:33px;right:30px;border:1px dashed #eee0bc;border-radius:50%;background:#424d3be8;color:#f6ebd6;height:132px;width:132px;display:flex;flex-direction:column;justify-content:center;text-align:center;font-size:12px;letter-spacing:1px;transform:rotate(10deg);line-height:1.3}.stamp i{font:18px Georgia,serif}.ribbon{display:flex;justify-content:space-around;align-items:center;background:#e7dfd1;padding:22px 4%;font:18px Georgia,serif;gap:20px}.ribbon b{color:var(--leather);font-size:20px}.section{padding:95px 6%}.services,.gallery{display:grid;grid-template-columns:.9fr 1.3fr;gap:9%}.section-head>p:last-child{margin-top:28px;max-width:345px;color:#655d52;font-size:15px}.service-list article{display:flex;gap:25px;border-top:1px solid var(--line);padding:24px 0}.service-list article>span{font-size:11px;color:var(--leather)}.service-list h3{font-size:26px}.service-list p{font-size:14px;color:#655d52;margin-top:12px}.service-list article>a{margin-left:auto;text-decoration:none;font-size:28px;align-self:center;padding:10px}.story{background:var(--olive);color:var(--paper);display:grid;grid-template-columns:.5fr 1.5fr .65fr;gap:6%}.story p:not(.eyebrow){max-width:600px;margin-top:25px;color:#e0dfd2}.large{font-size:20px}.year{font:75px Georgia,serif;align-self:center;color:#d3bc98}.year span{display:block;font:9px Arial,sans-serif;letter-spacing:1.5px;margin-top:15px}.photos{display:grid;grid-template-columns:1fr 1fr;gap:22px}.photos figure:nth-child(2){padding-top:55px}.photos img{width:100%;height:330px;object-fit:cover}.photos figcaption{font-size:11px;margin-top:12px;color:#655d52}.steps{padding-top:45px;border-top:1px solid var(--line)}.steps>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8%}.steps article>span{font:45px Georgia;color:var(--leather)}.steps h3{font-size:25px;margin:15px 0}.steps p{font-size:14px;color:#655d52}.contact{background:#e8e0d3;display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact address{font-style:normal;margin:35px 0 20px}.phone{font:32px Georgia,serif;text-decoration:none}.contact p{margin:15px 0;overflow-wrap:anywhere}.contact details{border-top:1px solid #c6baa9;padding:18px 0;font-size:14px}.contact details:first-of-type{margin-top:40px}summary{cursor:pointer}.form-panel{background:#f9f6ef;padding:36px}.form-panel h3{font-size:37px}.note{font-size:12px;color:#645c51}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:block;font-size:12px;margin:18px 0 0}input:not([type=file]),select,textarea{display:block;width:100%;border:1px solid #c8bda9;background:transparent;border-radius:0;padding:12px;color:var(--ink);margin-top:7px;font-size:15px}textarea{resize:vertical}.upload{border:1px dashed #9e907b;padding:14px}.upload input{display:block;font-size:12px;max-width:100%;margin:12px 0}.upload span{font-size:10px;color:#655d52}form>.button{width:100%;margin-top:23px}#file-error{color:#92371f}#photo-preview{max-height:150px;max-width:100%;display:block}#remove-photo,#download{border:0;border-bottom:1px solid currentColor;background:transparent;padding:6px 0;color:var(--olive)}#result{padding:20px;background:#e1e7da;margin-top:24px}#summary{white-space:pre-line}footer{padding:45px 6% 18px}footer>div{display:flex;justify-content:space-between;align-items:center}footer a:not(.brand),footer p{font-size:11px}footer p{margin-top:30px;color:#655d52}footer small{display:block;text-align:right;font-size:11px;margin-top:25px}.skip{position:fixed;top:-100px;z-index:20;background:white;padding:12px}.skip:focus{top:0}[hidden]{display:none!important}@media(max-width:1050px){nav{gap:17px}.hero-copy{padding-top:50px}.hero{min-height:600px}.hero-image{min-height:600px}.story{grid-template-columns:1fr 2fr}.year{grid-column:2}.services,.gallery{gap:5%}.contact{gap:5%}}@media(max-width:760px){html{scroll-padding-top:95px}.demo{font-size:8px;letter-spacing:.4px}.demo a{white-space:nowrap}header{padding:20px 6%}.brand{font-size:30px}#menu{display:block;background:none;border:1px solid var(--line);padding:8px 12px;font-size:12px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:25px 6%;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column;align-items:stretch}nav a{padding:8px}.hero{display:flex;flex-direction:column}.hero-copy{padding:42px 6% 30px}h1{font-size:53px;letter-spacing:-2px}.hero-copy>p:not(.eyebrow){font-size:15px}.hero-foot{margin-top:32px}.hero-image{min-height:0;height:400px}.ribbon{flex-wrap:wrap;gap:10px 18px;font-size:14px;padding:20px}.ribbon b{font-size:12px}.ribbon b:last-of-type{display:none}.section{padding:60px 6%}.services,.gallery,.contact,.story{grid-template-columns:1fr;gap:35px}.year{grid-column:auto;font-size:60px}.story>.eyebrow{margin-bottom:0}.photos{gap:15px}.photos img{height:245px}.photos figure:nth-child(2){padding-top:35px}.steps>div{grid-template-columns:1fr;gap:28px}.steps article{display:grid;grid-template-columns:45px 1fr;gap:0 18px}.steps article p{grid-column:2}.steps h3{margin:10px 0}.form-panel{padding:25px 20px}.fields{grid-template-columns:1fr;gap:0}footer>div{align-items:flex-start;gap:30px;flex-direction:column}.eyebrow{font-size:9px;letter-spacing:1.5px}.contact .phone{font-size:30px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Identitat compartida: calçat i serralleria */
:root{--paper:#f3f0e9;--ink:#252c30;--olive:#29373e;--leather:#a6542e;--line:#d2cec5}h1,h2,h3{font-family:Arial,sans-serif;font-weight:650;letter-spacing:-1.5px}h1 em,h2 em{font-style:normal}.brand{font-family:Arial,sans-serif;font-weight:800;letter-spacing:-1.8px}.brand span{letter-spacing:1.1px;font-size:8px}.duo-hero{min-height:620px;grid-template-columns:1.08fr 1fr;background:#f3f0e9}.duo-hero h1{font-size:clamp(45px,4.7vw,72px);line-height:1.04}.duo-hero .hero-copy{padding:60px 7% 35px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-actions .button{gap:16px;padding:16px}.outline{background:transparent;color:var(--ink)}.outline:hover{background:#e1d9cb}.hero-foot{gap:20px}.hero-foot a{font-weight:bold;white-space:nowrap}.dual-visual{display:grid;grid-template-rows:1fr 1fr;min-width:0}.shoe-panel{position:relative;min-height:300px;overflow:hidden}.shoe-panel img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center 55%}.shoe-panel:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#10191ddd,transparent 80%)}.shoe-panel figcaption{position:absolute;bottom:26px;left:30px;z-index:1;color:white;display:grid;gap:6px}.shoe-panel figcaption span,.shoe-panel small{font-size:10px;letter-spacing:1px}.shoe-panel strong,.lock-panel strong{font-size:31px;line-height:1.12;letter-spacing:-1px}.lock-panel{background:#29373e;color:#efd3a2;text-decoration:none;position:relative;display:flex;flex-direction:column;padding:28px 30px;justify-content:space-between;min-height:290px;overflow:hidden}.lock-panel .eyebrow{margin:0}.lock-panel svg{position:absolute;right:-12px;top:40px;width:65%;opacity:.7;transform:rotate(-25deg)}.lock-panel strong{color:#fff;z-index:1;max-width:260px;margin-top:35px}.lock-panel>span:last-child{font-size:12px;margin-top:15px}.ribbon{font:600 14px Arial,sans-serif;background:#ddd3c2}.lock-feature{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;background:#29373e;color:white;border-top:1px solid #596168}.lock-feature h2{font-size:clamp(33px,3.3vw,50px)}.lock-feature h2 em{color:#edb773}.lock-feature p{color:#d4d9dc;margin:23px 0;max-width:470px}.lock-feature .button{background:#edb773;color:#252c30;border-color:#edb773;font-weight:bold}.lock-feature .text-link{display:block;width:max-content}.lock-services article{border-top:1px solid #647077;padding:22px 0}.lock-services article>span{font-size:10px;color:#edb773}.lock-services h3{font-size:25px;margin-top:8px;letter-spacing:-.5px}.lock-services p{font-size:14px;margin:12px 0 0}.story{background:#35444b}.year{color:#edb773}.button:hover{filter:brightness(1.1)}@media(max-width:760px){.duo-hero .hero-copy{padding:40px 6%}.duo-hero h1{font-size:48px}.hero-actions{flex-direction:column;align-items:stretch}.hero-foot{font-size:9px;align-items:flex-start}.dual-visual{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.shoe-panel,.lock-panel{min-height:295px}.shoe-panel figcaption{left:18px;bottom:20px;right:12px}.shoe-panel strong,.lock-panel strong{font-size:25px}.lock-panel{padding:22px 18px}.lock-panel svg{width:100%;top:58px;right:-25px}.lock-panel .eyebrow{font-size:8px}.lock-feature{grid-template-columns:1fr;gap:38px}.lock-feature h2{font-size:34px}.ribbon{font-size:12px}.story h2{font-size:36px}}
/* Poliment de llegibilitat i galeria */
.photos figure:nth-child(2){padding-top:0}.photos img{height:auto;aspect-ratio:1/1;object-fit:cover}.photos figcaption{font-size:12px;line-height:1.6}.photos figcaption a{display:inline-block;margin-top:12px;font-weight:600;min-height:44px;padding:10px 0;color:var(--ink)}.service-list article>a{min-width:44px;min-height:44px;text-align:center}.service-list article>div{min-width:0}label{font-size:14px}input:not([type=file]),select,textarea{font-size:16px}.note{font-size:13px}.upload span{font-size:12px}.upload input{font-size:13px}.form-panel h3{font-size:clamp(29px,3vw,37px)}#clear-file{background:transparent;border:1px solid #a6542e;color:#813c23;padding:10px;text-align:left;font-size:13px;min-height:44px}#remove-photo,#download{min-height:44px}.lock-feature .button:hover{background:#f2c58d;color:#252c30}.button:not(.outline):hover{background:#354b56}.lock-feature .button:hover{background:#f2c58d}.section-head h2{max-width:540px}@media(min-width:761px) and (max-width:960px){header{padding:22px 3%}nav{gap:12px}nav a{font-size:12px}.brand{font-size:30px}.small{padding:12px}}@media(max-width:760px){.photos{grid-template-columns:1fr;gap:28px}.photos img{aspect-ratio:4/3}.photos figcaption{font-size:13px}.form-panel{padding:28px 20px}.demo{font-size:9px}.hero-foot{flex-wrap:wrap}.lock-panel strong{font-size:23px}}
.contact>div,.form-panel,form,.fields,label{min-width:0}#clear-file{max-width:100%;white-space:normal;overflow-wrap:anywhere}.upload input{width:100%;min-width:0}.contact{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}@media(max-width:760px){.contact{grid-template-columns:minmax(0,1fr)}}
