:root{--wine:#7a3045;--wine-hover:#612538;--clay:#a85634;--cream:#faf5f0;--sand:#f2e5da;--ink:#2a1e1a;--text:#5c4035;--line:#eae0d6;--muted:#756052;--width:1120px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{display:flex;flex-direction:column;min-height:100vh;min-height:100svh;margin:0;background:var(--cream);color:var(--text);font-family:'DM Sans',Arial,sans-serif;font-size:17px;line-height:1.75;-webkit-font-smoothing:antialiased}a{color:var(--wine);text-underline-offset:.2em}a:hover{color:var(--wine-hover)}img{max-width:100%;height:auto}svg{max-width:100%}button,summary{font:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--clay);outline-offset:5px}h1,h2,h3,h4,h5{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;line-height:1.15;color:var(--ink);margin:0 0 .7em}h1{font-size:clamp(2.7rem,5vw,4.8rem)}h2{font-size:clamp(2rem,3.2vw,3rem)}h3{font-size:1.65rem}h4{font-size:1.35rem}p{margin:0 0 1.25em}p:empty{display:none}ul,ol{padding-left:1.4em}blockquote{border-left:2px solid var(--clay);padding:1rem 0 1rem 1.5rem;margin:1.5rem 0;color:var(--ink);font-family:'Cormorant Garamond',Georgia,serif;font-size:1.5rem;line-height:1.45}blockquote p:last-child{margin:0}table{border-collapse:collapse;max-width:100%;width:100%}td,th{padding:.8rem;border:1px solid var(--line);text-align:left}figure{margin:0 0 1.5rem}.skip-link{position:absolute;top:8px;left:8px;transform:translateY(-160%);background:#fff;z-index:100;padding:.6rem 1rem}.skip-link:focus{transform:none}.topbar{background:var(--sand);border-bottom:1px solid var(--line);font-size:12px;letter-spacing:.03em}.topbar>div{max-width:var(--width);margin:auto;display:flex;gap:28px;justify-content:space-between;padding:10px 24px}.topbar a{text-decoration:none;color:var(--text)}.site-header{background:var(--cream);border-bottom:1px solid var(--line)}.header-inner{max-width:calc(var(--width) + 48px);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:18px 24px}.brand{text-decoration:none;color:var(--ink);display:flex;flex-direction:column;align-items:center;flex-shrink:0}.brand img{width:205px;height:58px;object-fit:contain}.brand>span{font-size:11px;letter-spacing:.15em;text-transform:uppercase;margin-top:-4px}.site-header nav{display:flex;align-items:center;gap:26px;font-size:13px}.site-header nav>a,.site-header summary{color:var(--text);text-decoration:none;white-space:nowrap}.site-header a[aria-current]{color:var(--wine);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:9px}.site-header details{position:relative}.site-header summary{list-style:none}.site-header summary::-webkit-details-marker{display:none}.site-header summary:after{content:'⌄';margin-left:7px}.submenu{position:absolute;top:calc(100% + 18px);left:-20px;min-width:260px;background:var(--cream);border:1px solid var(--line);padding:12px;box-shadow:0 15px 25px #2a1e1a0b;z-index:20}.submenu a{display:block;text-decoration:none;padding:9px 12px;white-space:normal}.submenu a:hover{background:var(--sand)}.menu-toggle{display:none;border:1px solid var(--line);background:transparent;padding:8px 12px;color:var(--wine);border-radius:4px}.button,.cmsmasters_button,.jp-hero__cta a{display:inline-block;background:var(--wine);color:var(--cream);border:1px solid var(--wine);padding:13px 24px;border-radius:4px;font-family:'DM Sans',Arial,sans-serif;font-size:13px;letter-spacing:.06em;text-decoration:none;line-height:1.6;font-weight:500}.button:hover,.cmsmasters_button:hover,.jp-hero__cta a:hover{background:var(--wine-hover);color:#fff}.eyebrow{font-family:'DM Sans',Arial,sans-serif;font-size:11px;letter-spacing:.17em;text-transform:uppercase;color:var(--clay)}.small{font-size:14px}.page-intro,.headline{padding:64px 24px 48px;text-align:center;background:var(--sand)}.headline h1{max-width:1000px;margin:0 auto .35em}.headline_aligner,.headline_color,.cmsmasters_breadcrumbs_aligner{display:none}.cmsmasters_breadcrumbs{font-size:12px;line-height:1.5}.headline:has(.headline_text):not(:has(h1)),.headline:not(:has(.headline_text)){display:none}.middle_inner>.content_wrap,.cmsmasters_row_inner,.services-grid,.legal-copy,.empty-blog{max-width:var(--width);margin-inline:auto;padding-inline:24px}.middle_inner>.content_wrap:has(.portfolio),.middle_inner>.content_wrap:has(.middle_content:not(:empty)){padding-block:64px}.cmsmasters_row{padding-block:48px}.cmsmasters_row:has(.jp-hero){padding:0}.cmsmasters_row:has(.jp-hero) .cmsmasters_row_inner{max-width:none;padding:0}.cmsmasters_row_margin{display:flex;gap:48px;align-items:flex-start}.cmsmasters_column{flex:1;min-width:0}.cmsmasters_column.one_first{width:100%}.cmsmasters_row:nth-of-type(even){background:var(--sand)}.cmsmasters_text>img,.cmsmasters_img img{display:block;border-radius:3px}.cmsmasters_img{margin-bottom:24px}.cmsmasters_heading{margin-bottom:1rem}.cmsmasters_heading_wrap{max-width:900px;margin-inline:auto}.cmsmasters_row:has(.cmsmasters_column.one_fourth){padding-block:40px;background:var(--sand)}.cmsmasters_row:has(.cmsmasters_column.one_fourth) h2{font-size:1.6rem}.cmsmasters_row:has(.cmsmasters_column.one_fourth) .cmsmasters_column:first-child:has(img){display:none}.cmsmasters_row:has(.cmsmasters_column.one_fourth) .cmsmasters_img{max-width:120px}.cmsmasters_simple_icon,.cmsmasters_icon_wrap,.cmsmasters_divider{display:none}.button_wrap{margin-block:24px 8px}.cmsmasters_icon_box h2{font-size:2.2rem}.aligncenter{text-align:center}.alignright{float:right;margin:0 0 24px 32px;max-width:45%}.alignleft{float:left;margin:0 32px 24px 0;max-width:45%}.cmsmasters_text:after,.entry-content:after{content:'';display:table;clear:both}.jp-hero{position:relative;isolation:isolate;min-height:510px;display:flex;align-items:center;background:var(--sand);overflow:hidden}.jp-hero__bg{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.65)}.jp-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#2a1e1ad9 0%,#2a1e1a8f 50%,#2a1e1a05 100%)}.jp-hero__inner{width:var(--width);max-width:100%;margin:auto;padding:72px 24px}.jp-hero__t1{color:var(--cream);font-size:clamp(2.8rem,5vw,4.7rem);font-weight:500;margin:0 0 18px}.jp-hero__t2{color:#fff;font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(2rem,3vw,3.1rem);line-height:1.2;margin:0 0 24px}.jp-hero__lema{max-width:600px;color:#fff;font-size:18px}.jp-hero__cta{margin:28px 0 0}.jp-hero__cta a{background:var(--cream);border-color:var(--cream);color:var(--ink)}.jp-hero__cta a:hover{background:var(--sand);color:var(--ink)}.cmsmasters_open_project>.cmsmasters_project_header{margin-bottom:40px}.project_content.with_sidebar{width:calc(100% - 320px);float:left;padding-right:48px}.project_sidebar{width:320px;float:right}.cmsmasters_open_project:after{content:'';display:table;clear:both}.project_content>.cmsmasters_img_wrap{margin-bottom:36px}.project_content>.cmsmasters_img_wrap img{width:100%;max-height:420px;object-fit:cover}.contact-panel{background:var(--sand);padding:32px 26px;border:1px solid var(--line);border-radius:6px;font-size:15px}.contact-panel h2{font-size:2.1rem}.contact-panel p:last-child{margin-bottom:0}.contact-panel a[href^=mailto]{overflow-wrap:anywhere}.cmsmasters_wrap_pagination{display:flex;gap:20px;justify-content:center;padding-top:32px}.portfolio.puzzle,.portfolio.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.portfolio.puzzle article,.portfolio.grid article{background:#fff;border:1px solid var(--line);padding:24px}.portfolio.puzzle article h2,.portfolio.grid article h2{font-size:2rem}.cmsmasters_project_category,.cmsmasters_project_cont_info{font-size:12px;color:var(--muted)}.cmsmasters_project_cont_info{margin-bottom:12px}.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);padding:0;margin:56px auto;border:1px solid var(--line);max-width:calc(var(--width) - 48px)}.services-grid article{padding:32px;background:var(--cream)}.services-grid h2{font-size:2rem}.services-grid h2 a{text-decoration:none;color:var(--ink)}.text-link{font-size:13px;font-weight:500}.legal-copy{padding-block:56px;max-width:800px}.empty-blog{padding-block:64px;min-height:220px}.gallery,.cmsmasters_gallery,.cmsmasters_gallery ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;list-style:none;padding:0}.gallery img,.cmsmasters_gallery img{display:block}.attachment .entry-content{max-width:900px;margin:auto}.cmsmasters_project_footer,.cmsmasters_post_footer,.cmsmasters_post_meta_info,.cmsmasters_post_date,.cmsmasters_post_user_name,.cmsmasters_post_tags{display:none}body>.topbar,body>.site-header,body>.site-footer{flex-shrink:0}body>main{flex:1 0 auto;width:100%}.site-footer{padding:56px 24px 24px;background:var(--sand);border-top:1px solid var(--line);margin-top:0}.footer-inner{max-width:calc(var(--width) - 48px);margin:auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:56px;font-size:14px}.footer-inner h2{font-size:1.8rem}.footer-inner a{display:block;margin-bottom:10px;text-decoration:none}.footer-bottom{max-width:calc(var(--width) - 48px);margin:32px auto 0;padding-top:22px;border-top:1px solid #d5c2b1;display:flex;gap:24px;justify-content:space-between;font-size:11px}.footer-bottom a{color:var(--text)}
@media(min-width:900px){.cmsmasters_row:has(.cmsmasters_column.one_half){padding-block:64px}.cmsmasters_row:has(.cmsmasters_icon_box) .cmsmasters_img img{max-height:250px;width:100%;object-fit:cover}.cmsmasters_row:has(.cmsmasters_column.one_first) .cmsmasters_text{max-width:900px;margin-inline:auto}}
@media(max-width:1000px){.header-inner{gap:20px}.site-header nav{gap:17px;font-size:12px}.brand img{width:175px}.brand>span{font-size:10px}.project_content.with_sidebar{padding-right:30px;width:calc(100% - 280px)}.project_sidebar{width:280px}.contact-panel{padding:24px 20px}.topbar>div{gap:12px}}
@media(max-width:767px){body{font-size:16px}.topbar>div{justify-content:center;font-size:11px;padding:8px 16px}.topbar span,.topbar a:first-child{display:none}.header-inner{padding:12px 20px;position:relative}.brand img{width:170px;height:49px}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--cream);padding:20px;z-index:30;border-bottom:1px solid var(--line);box-shadow:0 10px 15px #2a1e1a12;font-size:15px}.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:16px}.site-header nav>a,.site-header summary{padding-block:5px}.submenu{position:static;box-shadow:none;margin-top:12px;min-width:0;padding:8px}.site-header a[aria-current]{text-underline-offset:5px}.page-intro,.headline{padding:42px 20px 32px}.jp-hero{min-height:470px}.jp-hero:after{background:#2a1e1a99}.jp-hero__inner{padding:56px 24px}.jp-hero__t1{font-size:3.1rem}.jp-hero__lema{font-size:16px;max-width:330px}.cmsmasters_row{padding-block:36px}.cmsmasters_row_margin{flex-direction:column;gap:32px}.cmsmasters_column{width:100%}.cmsmasters_row_inner,.middle_inner>.content_wrap{padding-inline:20px}.cmsmasters_img img{max-height:none;margin:auto}.cmsmasters_row:has(.cmsmasters_column.one_fourth) .cmsmasters_row_margin{gap:18px}.cmsmasters_row:has(.cmsmasters_column.one_fourth) .cmsmasters_column{flex-basis:auto}.project_content.with_sidebar,.project_sidebar{width:100%;float:none;padding:0}.project_sidebar{margin-top:40px}.project_content>.cmsmasters_img_wrap img{max-height:300px}.portfolio.puzzle,.portfolio.grid{grid-template-columns:1fr}.services-grid{grid-template-columns:1fr;max-width:calc(100% - 40px);margin-block:32px}.services-grid article{padding:26px}.alignright,.alignleft{float:none;max-width:100%;margin:0 0 24px;width:100%}.gallery,.cmsmasters_gallery,.cmsmasters_gallery ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.footer-inner{grid-template-columns:1fr;gap:24px}.footer-bottom{flex-direction:column;gap:12px}.site-footer{padding-top:40px}.middle_inner>.content_wrap:has(.portfolio),.middle_inner>.content_wrap:has(.middle_content:not(:empty)){padding-block:40px}blockquote{font-size:1.4rem;padding-left:1rem}table{font-size:13px}td,th{padding:.45rem;overflow-wrap:anywhere}.cmsmasters_breadcrumbs{font-size:11px}}
#contenido a{overflow-wrap:anywhere}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

.contact-page #contenido{display:flex;align-items:center;justify-content:center}
.contact-layout{width:min(100%,1010px);margin-inline:auto;padding:64px 24px 80px}
.contact-intro{text-align:center;margin-bottom:40px}.contact-intro .eyebrow{margin-bottom:14px}.contact-intro h1{margin-bottom:12px}.contact-intro>p:last-child{margin-bottom:0}
.contact-card{display:grid;grid-template-columns:1.2fr 1fr;background:var(--sand);border:1px solid var(--line);border-radius:8px;overflow:hidden}
.contact-card__details{padding:42px 44px}.contact-card__location{padding:42px 40px;border-left:1px solid #d5c2b1;background:var(--cream)}
.contact-card h2{font-size:2.1rem;margin-bottom:24px}.contact-phone{display:block;font-size:clamp(1.6rem,3vw,2rem);line-height:1.3;text-decoration:none;margin-bottom:12px;color:var(--wine)}
.contact-email{display:block;font-size:15px;overflow-wrap:anywhere}.contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.button-outline{background:transparent;color:var(--wine)}.button-outline:hover{background:var(--wine);color:var(--cream)}
.contact-card address{font-style:normal;font-size:17px;line-height:1.8}.contact-note{margin:24px 0 0;padding-top:20px;border-top:1px solid var(--line);font-size:14px}
@media(max-width:767px){.contact-layout{padding:40px 20px 48px}.contact-intro{margin-bottom:28px}.contact-card{grid-template-columns:1fr}.contact-card__details,.contact-card__location{padding:28px 24px}.contact-card__location{border-left:0;border-top:1px solid #d5c2b1}.contact-card h2{font-size:1.9rem}.contact-actions{gap:10px}.contact-actions .button{padding:12px 18px}}
