@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;450;500;600;700&display=swap');
:root{--paper:#faf8f3;--white:#fffefa;--ink:#342f28;--muted:#605a50;--gold:#856329;--line:#ded8ca;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:155px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;font-weight:450;line-height:1.7}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}img{display:block;max-width:100%}svg{width:24px;height:24px}button{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:5px}[hidden]{display:none!important}.svg-defs{position:absolute;width:0;height:0}.skip-link{position:fixed;top:-80px;left:15px;background:white;padding:12px;z-index:100}.skip-link:focus{top:15px}.announcement{text-align:center;background:#efeadf;font-size:13px;letter-spacing:1.5px;padding:8px 20px;text-transform:uppercase}.announcement span{margin-left:30px}.site-header{position:sticky;top:0;z-index:30;background:var(--paper);box-shadow:0 5px 18px #342f2808;max-width:none;margin:auto;padding:15px max(6%, calc((100% - 1267px) / 2));display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line)}.brand{width:300px;flex:0 1 300px;min-width:0}.brand img{width:100%;height:auto}nav{display:flex;flex-shrink:0;white-space:nowrap;gap:30px;align-items:center;font-size:15px}nav a:hover,.text-link:hover{color:var(--gold)}.nav-contact{border-bottom:1px solid var(--gold);padding:10px 0}.nav-contact span{margin-left:20px}.menu-toggle{display:none}.section-wrap{padding:90px 6%;max-width:1440px;margin:auto}.hero{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding-top:55px;padding-bottom:65px;align-items:center}.eyebrow{font-size:13px;font-weight:600;letter-spacing:2px;color:var(--gold);margin:0 0 25px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.12}h1{font-size:clamp(65px,7.3vw,108px);letter-spacing:-3px;margin-bottom:26px}h1 em,h2 em,.closing em{font-weight:500;color:var(--gold)}.intro{font-size:17px;line-height:1.95;color:var(--muted);max-width:360px;margin-bottom:28px}.button{display:inline-flex;justify-content:center;align-items:center;gap:32px;background:var(--ink);color:white;border:1px solid var(--ink);padding:15px 25px;font-size:15px;font-weight:600;transition:background .2s}.button:hover{background:var(--gold);border-color:var(--gold)}.button span{font-size:19px;line-height:1}.text-link{display:inline-flex;gap:24px;border-bottom:1px solid var(--gold);padding-bottom:7px;font-size:15px}.hero-link{display:table;margin-top:20px}.handmade-note{display:flex;align-items:center;gap:15px;margin-top:42px;font-size:13px;line-height:1.8;color:var(--muted)}.handmade-note strong{font-weight:400}.thread-mark{font-size:38px;color:var(--gold)}.hero-art{position:relative;padding-left:15px}.hero-image{height:560px;position:relative;border-radius:48% 48% 0 0;overflow:hidden;background:#e9e2d2}.hero-image img{height:100%;width:100%;object-fit:cover;object-position:53% center}.photo-label{position:absolute;bottom:22px;left:0;right:0;text-align:center;color:white;font-size:12px;letter-spacing:3px;text-shadow:0 1px 5px black}.round-stamp{font-weight:600;position:absolute;top:35px;left:-37px;width:110px;height:110px;border-radius:50%;background:var(--paper);border:1px solid var(--gold);outline:5px solid var(--paper);text-align:center;padding-top:18px;font-size:8px;letter-spacing:1.2px;color:var(--gold);line-height:1.1;transform:rotate(-14deg)}.round-stamp span{font-size:34px;line-height:1.4}.image-caption{display:flex;justify-content:space-between;font-size:12px;margin:13px 0 0;color:var(--muted)}.values-strip{border-block:1px solid var(--line);display:flex;justify-content:center;gap:40px;padding:19px 3%;font-size:13px;letter-spacing:1px}.values-strip i{color:var(--gold);font-style:normal}h2{font-size:clamp(38px,4vw,57px);letter-spacing:-1.2px;margin-bottom:25px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:38px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:285px;color:var(--muted);font-size:15px;margin-bottom:5px}.editorial-grid{display:grid;grid-template-columns:1.15fr .85fr 1fr;gap:30px;align-items:start}.category-photo{height:330px;overflow:hidden;background:#eae5db}.category-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.category:hover img{transform:scale(1.035)}.category-tall .category-photo{height:410px}.category-offset{margin-top:70px}.category-offset img{object-position:50% 35%}.category-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:17px 0}.category-title small{font-size:12px;letter-spacing:1.5px;color:var(--muted)}.category-title h3{font-size:28px;margin:9px 0 0}.category-title>span{font-size:24px;color:var(--gold)}.atelier{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%;border-block:1px solid var(--line);background:#f0ece3}.atelier-photo{position:relative;padding:0 25px 25px 0}.atelier-photo:after{content:'';position:absolute;inset:25px 0 0 25px;border:1px solid #c9b994;z-index:0}.atelier-photo>img{width:100%;height:450px;object-fit:cover;position:relative;z-index:1}.atelier-tag{position:absolute;z-index:2;background:var(--white);right:0;bottom:0;padding:16px 24px;font-family:var(--serif);font-size:24px;font-style:italic}.atelier-copy>p:not(.eyebrow){font-size:16px;color:var(--muted)}.signature{width:175px;margin-top:30px}.gallery-toolbar{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:30px;display:flex;justify-content:space-between;align-items:center;gap:15px}.filters{display:flex;flex-wrap:wrap;gap:10px}.filters button{background:transparent;border:1px solid transparent;padding:8px 17px;font-size:14px;border-radius:30px}.filters button.active{border-color:var(--gold);color:var(--gold);background:#f0eade}#gallery-count{font-size:13px;color:var(--muted);white-space:nowrap}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 22px}.gallery-item{background:none;border:0;padding:0;text-align:left;min-width:0}.gallery-item .gallery-photo{height:290px;overflow:hidden;display:block;background:#e9e3d9;position:relative}.gallery-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.gallery-item:hover img{transform:scale(1.04)}.gallery-photo:after{content:'Ver de perto ↗';position:absolute;bottom:12px;right:12px;background:var(--paper);padding:5px 12px;font-size:13px;opacity:0;transition:opacity .2s}.gallery-item:hover .gallery-photo:after,.gallery-item:focus-visible .gallery-photo:after{opacity:1}.gallery-item small{display:block;color:var(--gold);font-size:12px;letter-spacing:1.3px;text-transform:uppercase;margin-top:12px}.gallery-item h3{font-size:23px;margin:5px 0}.gallery-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:35px}.gallery-bottom p{max-width:440px;font-size:14px;color:var(--muted);margin:0}.button-outline{background:transparent;color:var(--ink)}.button-outline:hover{color:white}.process{border-top:1px solid var(--line);text-align:center;padding-top:65px;padding-bottom:65px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:60px;margin-top:45px;text-align:left}.steps>div{border-top:1px solid var(--line);padding-top:20px}.steps span{font-family:var(--serif);color:var(--gold);font-size:27px}.steps h3{font-size:30px;margin:15px 0}.steps p{font-size:15px;color:var(--muted);max-width:280px}.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;background:#eee8dc;border-block:1px solid var(--line)}.contact-copy>p:not(.eyebrow){font-size:16px;color:var(--muted);max-width:335px}.direct-contact{display:flex;gap:15px;align-items:center;margin:35px 0}.direct-contact svg{color:#247c4a;width:30px;height:30px}.direct-contact span{font-size:14px}.direct-contact strong{display:block;font-size:16px;font-weight:500}.contact-copy .contact-note{font-size:13px!important;max-width:290px!important}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:14px;margin-bottom:20px}label>span{color:var(--gold)}input,select,textarea{display:block;border:0;border-bottom:1px solid #bfb5a3;border-radius:0;background:transparent;width:100%;padding:12px 0;color:var(--ink);font-size:15px}input::placeholder,textarea::placeholder{color:#756e62}textarea{resize:vertical;min-height:95px}.submit-button{width:100%;gap:15px}.submit-button span{margin-left:auto}.submit-button svg{width:20px;height:20px}.form-note{font-size:13px;color:var(--muted);margin:12px 0 0}#form-status{font-size:15px}.closing{text-align:center;padding:65px 20px}.closing>span{color:var(--gold);font-size:32px}.closing>p{font-family:var(--serif);font-size:46px;line-height:1.15;margin:15px 0 25px}.closing>a{font-size:13px;color:var(--muted)}footer.section-wrap{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:30px;padding-bottom:35px}footer>img{width:100px;height:110px;object-fit:contain}footer p{font-size:15px;margin-bottom:5px}footer small{font-size:12px;color:var(--muted)}.footer-links{display:grid;gap:8px;font-size:14px;padding-right:60px}.footer-links button{background:none;border:0;text-align:left;padding:0;font-size:13px;color:var(--muted)}.whatsapp-float{position:fixed;right:25px;bottom:25px;width:57px;height:57px;background:#178b4c;color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:20;box-shadow:0 4px 22px #0002;border:2px solid #fff}.whatsapp-float svg{width:29px;height:29px}.whatsapp-float span{position:absolute;right:65px;white-space:nowrap;background:white;color:var(--ink);padding:7px 12px;font-size:14px;border:1px solid var(--line);opacity:0;pointer-events:none}.whatsapp-float:hover span,.whatsapp-float:focus-visible span{opacity:1}dialog{border:0;background:var(--paper);padding:0;color:var(--ink);max-width:950px;width:90%;max-height:90dvh;overscroll-behavior:contain}dialog::backdrop{background:#201d19db}.dialog-close{position:absolute;top:10px;right:10px;border:0;border-radius:50%;background:var(--paper);width:40px;height:40px;font-size:28px;z-index:3}#lightbox[open]{display:grid;grid-template-columns:1.2fr 1fr}.lightbox-image{position:relative;min-height:400px;background:#e6e0d6;display:flex;align-items:center}.lightbox-image>img{width:100%;height:75dvh;object-fit:contain;touch-action:pan-y}.photo-arrow{position:absolute;top:50%;background:var(--paper);border:0;border-radius:50%;width:38px;height:38px;z-index:2}.prev{left:10px}.next{right:10px}.lightbox-details{padding:70px 35px 35px;align-self:center}.lightbox-details h3{font-size:40px}.lightbox-details>p:not(.eyebrow){font-size:16px;color:var(--muted)}.lightbox-details small{display:block;font-size:13px;margin-top:20px;color:var(--muted)}#install-dialog{max-width:600px;padding:55px 35px 30px}#install-dialog p{font-size:16px}#install-dialog h2{font-size:38px}
@media(min-width:1600px){.hero-image{height:620px}}@media(max-width:1000px){nav{gap:18px}.brand{width:240px;flex-basis:240px}.hero{gap:5%}.hero-image{height:480px}.round-stamp{width:95px;height:95px;left:-20px;font-size:7px}.round-stamp span{font-size:27px}.values-strip{gap:20px;font-size:12px}.gallery-item .gallery-photo{height:230px}.category-title h3{font-size:23px}.atelier{gap:6%}.contact{gap:6%}.steps{gap:30px}}@media(max-width:900px){html{scroll-padding-top:125px}.announcement{font-size:12px;letter-spacing:1px}.announcement span{display:none}.site-header{padding:12px 6%;gap:16px}.brand{width:230px;flex:0 1 230px}.menu-toggle{display:flex;flex-shrink:0;min-height:44px;padding:0;gap:12px;align-items:center;background:none;border:0;font-size:14px}.menu-toggle span{font-size:20px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);z-index:10;padding:20px 6%;box-shadow:0 10px 15px #0001}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:12px}.section-wrap{padding:55px 6%}.hero{grid-template-columns:1fr;gap:35px;padding-top:38px}.hero .eyebrow{font-size:12px;letter-spacing:1.5px;margin-bottom:22px}h1{font-size:72px;letter-spacing:-2px;margin-bottom:20px}.intro{font-size:16px;max-width:330px}.hero-link{font-size:14px}.handmade-note{margin-top:25px}.hero-art{padding-left:22px;margin-right:7px}.hero-image{height:420px;border-radius:48% 48% 0 0}.round-stamp{left:-5px;top:25px}.image-caption{font-size:12px}.values-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px;text-align:center;padding:17px}.values-strip i{display:none}h2{font-size:40px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{max-width:100%;margin:20px 0 0}.eyebrow{font-size:12px;letter-spacing:1.7px;margin-bottom:18px}.editorial-grid{grid-template-columns:1fr 1fr;gap:25px 18px}.category-tall{grid-column:1/-1}.category-tall .category-photo{height:330px}.category-offset{margin-top:0}.category-photo{height:245px}.category-title h3{font-size:23px}.category-title small{font-size:11px;letter-spacing:.7px}.category-title>span{font-size:18px}.atelier{grid-template-columns:1fr;gap:38px}.atelier-photo>img{height:340px}.atelier-tag{font-size:21px;padding:12px 18px}.atelier-copy>p:not(.eyebrow){font-size:16px}.signature{width:150px;margin-top:25px}.gallery-toolbar{display:block}.filters{gap:4px}.filters button{padding:7px 11px;font-size:13px}#gallery-count{display:block;margin-top:12px}.gallery{grid-template-columns:repeat(2,1fr);gap:22px 14px}.gallery-item .gallery-photo{height:225px}.gallery-item h3{font-size:22px}.gallery-item small{font-size:11px}.gallery-bottom{display:block}.gallery-bottom .button{margin-top:22px}.steps{grid-template-columns:1fr;gap:16px;margin-top:30px}.steps>div{position:relative;padding-left:48px}.steps span{position:absolute;left:0;top:20px}.steps h3{margin-top:5px;font-size:29px}.steps p{max-width:none}.process{text-align:left}.contact{grid-template-columns:1fr;gap:25px}.contact-copy>p:not(.eyebrow){max-width:100%}.direct-contact{margin:25px 0}.form-row{gap:17px}.closing{padding:45px 20px}.closing>p{font-size:40px}footer.section-wrap{display:grid;grid-template-columns:85px 1fr;gap:20px;padding-bottom:90px}footer>img{width:85px;height:90px}.footer-links{grid-column:2;padding-right:0}.whatsapp-float{right:17px;bottom:17px;width:54px;height:54px}#lightbox[open]{grid-template-columns:1fr}.lightbox-image{min-height:0}.lightbox-image>img{height:49dvh}.lightbox-details{padding:22px}.lightbox-details h3{font-size:30px;margin-bottom:12px}.lightbox-details .eyebrow{margin-bottom:12px}.lightbox-details .button{width:100%}.lightbox-details small{margin-top:10px}#install-dialog{padding:50px 25px 25px}}@media(max-width:370px){h1{font-size:62px}.hero-image{height:360px}.gallery-item .gallery-photo{height:190px}.category-photo{height:210px}.form-row{grid-template-columns:1fr;gap:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Readable controls and geometrically centered modal close icon. */
nav,.text-link,.filters button,label{font-weight:600}
input,select,textarea{font-size:16px;line-height:1.6}
.dialog-close{display:grid;place-items:center;padding:0;width:44px;height:44px;line-height:1}
.dialog-close svg{display:block;width:20px;height:20px;pointer-events:none}
.image-caption{gap:16px;flex-wrap:wrap}
.category-title{gap:8px}.category-title>div{min-width:0}.category-title>span{flex-shrink:0}
.gallery-item h3{line-height:1.2}
.round-stamp{line-height:1.1}
@media(max-width:900px){nav{white-space:normal}.menu-toggle{font-weight:600}.hero .eyebrow{line-height:1.7}.form-row{grid-template-columns:1fr;gap:0}.submit-button{padding-inline:16px;gap:10px}.values-strip{letter-spacing:.3px}.category-title small{letter-spacing:.5px}}

.hero-mobile-logo{display:none}
@media(max-width:700px){.hero-mobile-logo{display:block;width:min(85%, 340px);height:auto;aspect-ratio:1 / 1;object-fit:contain;align-self:center;justify-self:center;max-width:100%}.hero{padding-top:24px;row-gap:28px}}
