/* Touch-first corrections: scalable type, vector icons, responsive media. */
img{max-width:100%;height:auto}.ui-icon{display:inline-block;width:20px;height:20px;flex:none;vertical-align:-.18em;overflow:visible}.ui-icon path{vector-effect:non-scaling-stroke}.button .ui-icon{width:19px;height:19px}.text-link .ui-icon,.header-cta .ui-icon,.external-links .ui-icon,.contact-socials .ui-icon,.video-foot .ui-icon{width:16px;height:16px;margin-left:5px}.text-link{line-height:1.65}.collection-arrow .ui-icon{width:22px;height:22px}#menu .icon-close{display:none}#menu[aria-expanded=true] .icon-menu{display:none}#menu[aria-expanded=true] .icon-close{display:block}.mobile-filter,.mobile-dock{display:none}.review-stars{display:flex;gap:4px}.review-stars .ui-icon{width:17px;height:17px}.review-stars .filled{fill:currentColor}.collection-card .pic:after{content:'VER COLECCIÓN'}.collection-card img{display:block}.contact-socials a,.external-links a{display:inline-flex;align-items:center}.hero-bottom>span{display:block}.hero-pagination button span{display:block!important}.back-to-top .ui-icon{width:19px;height:19px}.back-to-top{align-items:center;justify-content:center}.back-to-top.visible{display:flex}.summary-icon,.collection-arrow{flex:none}summary .ui-icon{margin-left:14px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.form-status a{text-decoration:underline;text-underline-offset:3px}.video-wrap iframe{display:block}.project-photo{touch-action:pan-y}dialog{overscroll-behavior:contain}.lightbox-close,.lightbox-prev,.lightbox-next{width:48px;height:48px;display:grid;place-items:center}.lightbox-prev{left:10px}.lightbox-next{right:10px}.lightbox-close{top:10px;right:10px}dialog figure{touch-action:pan-y}
@media(max-width:1000px){
 :root{--mobile-header:68px}html{scroll-padding-top:calc(var(--mobile-header) + 18px);scroll-padding-bottom:90px}html,body{width:100%;max-width:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{font-size:15px;line-height:1.7}body.menu-open{overflow:hidden;overscroll-behavior:none}main,section,article,.section>div,.line-text,.intro-copy,.costa-manifesto{min-width:0}.intro{grid-template-columns:minmax(0,1fr)}.origin-bar{height:28px;padding-inline:24px;letter-spacing:1px;font-size:8px}.origin-bar>span:nth-child(2),.origin-bar>a{display:none}.origin-bar .cr-flag{width:22px;height:13px}header,header.scrolled{height:var(--mobile-header);padding:0 20px;gap:12px;transition:none}.brand{display:flex;align-items:center;min-height:48px}.brand img{width:132px;height:auto}.header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-size:12px;gap:6px;margin:0 0 0 auto;padding:8px 0;white-space:nowrap}.header-cta .ui-icon{margin:0;width:16px;height:16px}#menu{display:grid;place-items:center;border:1px solid #c5c9b8;background:none;width:44px;height:44px;min-width:44px;margin:0;border-radius:2px;color:var(--green);padding:0}#menu .ui-icon{width:23px;height:23px}header nav,header.scrolled nav{display:none;position:fixed;top:var(--nav-top,var(--mobile-header));bottom:0;left:0;right:0;margin:0;max-height:none;height:auto;padding:18px 24px calc(30px + env(safe-area-inset-bottom));background:var(--cream);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;grid-template-columns:1fr 1fr;align-content:start;gap:0 20px;border-top:1px solid #d9dacc;z-index:30}header nav.open{display:grid}header nav>a{min-height:52px;display:flex;align-items:center;font-size:15px;border-bottom:1px solid #d5dac9}nav>a:after{display:none}.nav-more{padding:0;margin:16px 0 0;grid-column:1/-1;border:0}.nav-more summary{display:none}.nav-more>div{position:static;display:grid;grid-template-columns:1fr 1fr;gap:0 20px;padding:0;margin:0;width:100%;border:0;box-shadow:none}.nav-more a{font-size:14px;min-height:52px;display:flex;align-items:center;padding:8px 0;line-height:1.4;border-bottom:1px solid #d5dac9}.mobile-dock{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;padding:8px 16px calc(8px + env(safe-area-inset-bottom));gap:10px;background:var(--cream);border-top:1px solid #d5d5c4;box-shadow:0 -5px 25px #16392c08;z-index:22}.mobile-dock a{display:flex;align-items:center;justify-content:center;gap:9px;min-height:48px;font-size:13px;line-height:1.3;border:1px solid #bbc5af;color:var(--green);padding:9px 10px}.mobile-dock a:last-child{background:var(--green);color:var(--cream);border-color:var(--green)}.mobile-dock a svg{width:21px;height:21px}.mobile-dock a:first-child .ui-icon{width:16px;height:16px}.whatsapp,.back-to-top,.back-to-top.visible{display:none}.menu-open .mobile-dock,.contact-visible .mobile-dock,.keyboard-open .mobile-dock,body:has(dialog[open]) .mobile-dock{display:none}footer{padding-bottom:calc(106px + env(safe-area-inset-bottom))}.section{padding:72px 32px}.section-head{align-items:start}.section-head>p{font-size:14px}.intro-copy p,.line-text p,.service-grid p,.steps p,.inusitta p,.costa-manifesto>p,.materials>div>p,details p,.palette-panel p{font-size:15px;line-height:1.75}.button{min-height:48px;font-size:14px;padding:13px 20px;gap:18px;line-height:1.5;white-space:normal}.text-link{font-size:14px;min-height:44px;padding:11px 0;max-width:100%}.eyebrow{font-size:10px;letter-spacing:1.8px;line-height:1.7;margin-bottom:18px}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px}.collection-card{display:block;min-width:0}.collection-card .pic{aspect-ratio:4/3}.collection-card img{width:100%;height:100%;object-fit:cover;object-position:center}.collection-card h3{font-size:30px;line-height:1.2;min-height:44px;align-items:center;margin:10px 0 3px;gap:14px}.collection-card small{font-size:10px;letter-spacing:1px;line-height:1.6}.collection-card .pic:after{display:none}.filters button{min-height:44px;font-size:13px}.caption,.gallery-footer,.video-foot,.review-note,.palette-panel small{font-size:12px;line-height:1.65}.hero-pagination button{min-width:44px;min-height:44px;justify-content:center;font-size:12px}.hero-pagination span{width:12px}.hero-pagination .active span{width:28px}.hero-pagination{gap:8px}.hero-bottom>span:first-child{font-size:8px;letter-spacing:1px}.render-tabs{gap:8px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:28px}.render-tabs button{min-height:52px;font-size:13px;line-height:1.5;padding:10px 8px;text-align:left}.swatches{display:flex;justify-content:space-between;gap:12px}.swatches button{min-width:48px;min-height:74px;font-size:12px;padding:5px}.swatches button>span{width:42px;height:42px;margin-bottom:12px}.review-controls button{width:48px;height:48px}.review-controls{gap:18px}#review-page{font-size:12px;min-width:65px}.review-card cite{font-size:14px}.review-card small{font-size:12px;letter-spacing:.3px}.review-note a{display:inline-flex;align-items:center;min-height:44px;margin:8px 0 0}.history-detail summary,.material-list summary,.faq summary{font-size:16px;line-height:1.5;min-height:48px;gap:16px;align-items:center}.history-detail{padding:12px 0}details{padding:12px 0}.external-links{gap:10px 18px}.external-links a{min-height:44px;font-size:13px}.contact-socials{flex-wrap:wrap;gap:6px 18px}.contact-socials a{min-height:44px;font-size:14px}.contact>div>a{font-size:17px;min-height:48px;display:flex;align-items:center;gap:10px;margin:0;overflow-wrap:anywhere;line-height:1.5}.contact>div>a .ui-icon{width:17px;height:17px}.contact .location{font-size:10px;line-height:1.7;letter-spacing:1.3px;margin-top:22px}.contact form{min-width:0}form label{font-size:14px;margin-bottom:24px}input,select,textarea{font-size:16px;min-height:52px;padding:13px 0;line-height:1.5}textarea{min-height:120px}select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d6dfcc' stroke-width='1.6'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 3px center;background-size:20px;padding-right:32px;max-width:100%;text-overflow:ellipsis}form small,.form-status{font-size:12px;line-height:1.7}.email-alternative{font-size:14px;min-height:48px;margin-top:10px}.social-links a{min-height:110px}.social-links span{font-size:10px;letter-spacing:1px}.social-links strong{font-size:27px;margin-top:18px}.social-links b .ui-icon{width:21px;height:21px}.catalog-links a{min-height:108px;padding:22px 0;font-size:10px;letter-spacing:1px;gap:16px}.catalog-links a>span{min-width:0}.catalog-links strong{font-size:32px;line-height:1.1;margin:10px 0}.catalog-links small{font-size:13px;line-height:1.6}.catalog-links b{display:flex;align-items:center}.catalog-links b .ui-icon{width:24px;height:24px}.legal{font-size:11px;line-height:1.7}.footer-origin{font-size:9px;letter-spacing:.8px;line-height:1.6}footer>p{font-size:13px;line-height:1.8}footer>p a{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere}footer .footer-map{font-size:13px!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 18px!important}footer .footer-map a{display:flex;min-height:44px;align-items:center}.video-foot .text-link{font-size:13px}.contact .eyebrow,.testimonials .eyebrow,.inusitta .eyebrow{font-size:10px}
}
@media(max-width:760px){
 :root{--mobile-header:64px}.origin-bar{padding-inline:20px;font-size:8px}.section{padding:56px 20px}.section-head{display:block;margin-bottom:28px}.section-head>p,.section-head>.text-link{margin-top:18px}.section-head>p{font-size:14px;line-height:1.7}h2,.intro h2,.line-text h2,.costa-manifesto h2,.inusitta h2,.contact h2{font-size:clamp(34px,9.4vw,44px);line-height:1.08;letter-spacing:-.8px}h3{line-height:1.3}.hero{height:auto;min-height:min(640px,calc(100svh - 92px));max-height:none;display:flex;flex-direction:column;justify-content:space-between}.hero>img{height:100%;object-position:57% 60%}.hero-shade{background:linear-gradient(90deg,#071b13bf,#071b1359),linear-gradient(0deg,#0b241ba6,transparent 60%)}.hero-content{padding:48px 20px 28px;max-width:100%}.hero .eyebrow{font-size:9px;letter-spacing:1.7px;margin-bottom:24px}h1{font-size:clamp(43px,12.2vw,58px);line-height:1.04;letter-spacing:-1.4px}.hero p{font-size:15px;line-height:1.65;margin:24px 0 28px;max-width:440px}.hero-actions{gap:12px;align-items:stretch;max-width:360px;flex-direction:column}.hero-actions .button{width:100%}.hero-secondary{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:13px;padding:9px 0;width:max-content;max-width:100%}.hero-bottom{position:static;display:flex;justify-content:space-between;align-items:center;margin:0 20px 14px;gap:8px;flex-wrap:wrap}.hero-bottom>span:first-child{font-size:8px;letter-spacing:.9px}.hero-bottom>span:last-child{display:none}.hero-pagination{gap:4px}.hero-pagination button{gap:5px;font-size:11px;min-width:43px;min-height:44px}.hero-pagination span{width:8px!important}.hero-pagination .active span{width:18px!important}.intro{grid-template-columns:minmax(0,1fr);gap:14px;padding-bottom:48px}.intro>.eyebrow{padding:0;margin:0}.intro-copy{grid-template-columns:minmax(0,1fr);gap:18px;margin-top:24px}.history-body{grid-template-columns:minmax(0,1fr);gap:0}.history-body p:last-child{grid-column:auto}.lines{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:24px}.line-image{height:auto;aspect-ratio:4/3}.line-image img{height:100%;object-fit:cover}.line-image>span{left:16px;bottom:16px;font-size:8px;letter-spacing:1px}.line-text h2{margin-bottom:25px}.line-text .eyebrow{font-size:10px}.line-text article{padding:22px 0;gap:13px}.line-text article>span{font-size:12px}.line-text h3{font-size:18px;margin-bottom:12px}.service-grid{grid-template-columns:minmax(0,1fr);gap:24px;margin:32px 0 16px}.service-grid article{padding-top:20px}.service-grid article>span{font-size:11px}.service-grid h3{font-size:29px;margin:12px 0}.service-grid p{max-width:none;font-size:15px}.environments .section-head{margin-bottom:28px}.filters{display:none}.mobile-filter{display:block;font-size:13px;line-height:1.6;margin:26px 0;color:var(--ink)}.mobile-filter select{color:var(--green);border:1px solid #c4cbb9;border-radius:2px;padding:12px 40px 12px 14px;margin-top:8px;font-size:16px;background-color:var(--cream);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23153b32' stroke-width='1.6'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.collection-grid{gap:30px 16px}.collection-card h3{font-size:28px}.collection-card small{font-size:10px;letter-spacing:.9px}.caption{margin-top:25px;font-size:12px}.costa-rica{grid-template-columns:minmax(0,1fr);min-height:0}.costa-landscape{height:auto;aspect-ratio:4/3}.landscape-caption{left:20px;right:20px;bottom:20px;font-size:8px;letter-spacing:1px}.costa-manifesto{padding:48px 20px}.national-seal{font-size:9px;letter-spacing:1px;line-height:1.5;padding:12px;margin-bottom:28px;max-width:100%;gap:10px}.national-seal .cr-flag{width:25px;height:15px}.costa-manifesto .eyebrow{font-size:9px}.costa-manifesto>p{margin-top:24px}.costa-manifesto blockquote{font-size:25px;line-height:1.4;margin:28px 0 20px;padding-left:18px}.manifesto-signature{margin-left:18px}.manifesto-signature small{font-size:9px;letter-spacing:1px}.costa-manifesto>.text-link{font-size:14px;margin-top:28px}.inusitta{grid-template-columns:minmax(0,1fr)}.inusitta-image{min-height:0;height:auto;aspect-ratio:16/10}.inusitta-image>img{height:100%;object-position:center}.inusitta-copy{padding:48px 20px}.inusitta-logo{width:170px;height:65px;margin-bottom:25px}.inusitta p{margin:24px 0 28px}.external-links{margin-top:24px}.materials{grid-template-columns:minmax(0,1fr);gap:28px}.materials>div>p{max-width:none;margin:24px 0}.material-list{padding:0}.palette-experience{grid-template-columns:minmax(0,1fr);min-height:0;margin-top:8px}.palette-image{height:auto;aspect-ratio:4/3}.palette-image>span{font-size:9px;letter-spacing:1px;left:16px;bottom:18px}.palette-panel{padding:28px 20px}.palette-panel .eyebrow{font-size:9px;letter-spacing:1px}.palette-panel h3{font-size:35px}.palette-panel p{min-height:0;margin-top:18px}.palette-panel small{font-size:12px}.swatches{margin:25px 0 14px;gap:8px}.projects{padding-top:28px}.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;gap:12px}.project-photo{aspect-ratio:3/4;width:100%;height:auto}.photo-0,.photo-7{grid-column:auto;grid-row:auto}.project-photo img{height:100%;object-fit:cover}.project-photo>span{opacity:1;font-size:8px;letter-spacing:1px;left:10px;right:10px;bottom:10px}.project-photo b{display:grid;place-items:center;width:30px;height:30px;background:#153b32ad;border-radius:50%}.project-photo b .ui-icon{width:16px;height:16px}.gallery-footer{display:flex;flex-direction:column;align-items:start;font-size:12px;gap:8px}.gallery-footer .text-link{font-size:14px}.steps{grid-template-columns:minmax(0,1fr);margin-top:30px;gap:26px!important}.steps span{font-size:11px}.steps h3{font-size:29px;margin:16px 0 12px}.catalogs{grid-template-columns:minmax(0,1fr);gap:28px}.catalogs>div>p{font-size:15px;line-height:1.75;margin-top:22px}.catalog-links strong{font-size:30px}.render-tabs{grid-template-columns:minmax(0,1fr);gap:0;margin:22px 0}.render-tabs button{min-height:48px;font-size:14px;padding:11px 12px;border-bottom:1px solid #c9cebe}.render-tabs button.active{border-left:3px solid var(--green);border-bottom:1px solid #c9cebe;background:#dce1d0}.video-foot{gap:12px;flex-direction:column;margin-top:16px;font-size:12px}.video-wrap{width:100%;aspect-ratio:16/9}.videos .section-head{margin-bottom:28px}.review-grid{grid-template-columns:minmax(0,1fr);gap:22px;margin-top:30px;min-height:0}.review-card{padding-top:20px}.review-card>p{font-size:29px;min-height:0;margin:18px 0}.review-note{font-size:12px;line-height:1.75;margin-top:28px}.review-controls{margin-top:24px}.faq h2{margin-bottom:24px}.faq summary{font-size:16px}.faq details p{font-size:15px}.social-links{grid-template-columns:minmax(0,1fr);gap:18px}.social-links a{min-height:94px;padding:20px 0 10px}.social-links span{font-size:10px}.social-links strong{font-size:30px;margin-top:10px}.social-links b{top:22px}.contact{grid-template-columns:minmax(0,1fr);gap:32px}.contact>div>p{font-size:15px;line-height:1.7;margin:24px 0}.contact>div>a{font-size:16px}.contact h2{font-size:clamp(35px,9.5vw,44px)}.contact form{margin:0}.contact .button{font-size:14px}.contact .eyebrow{font-size:10px;letter-spacing:1.3px}.contact-socials{gap:0 18px;margin-top:14px}.contact .location{margin-top:14px}.form-status a{display:inline-flex;align-items:center;min-height:44px}footer{grid-template-columns:minmax(0,1fr);gap:25px;padding:40px 20px calc(105px + env(safe-area-inset-bottom))}footer>div:not(.legal){display:block;grid-column:auto}footer .footer-map{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px!important;font-size:14px!important}footer .footer-map a{min-height:48px}.footer-origin{font-size:9px;margin-top:20px;gap:9px}.footer-brand{font-size:42px}.footer-brand span{font-size:11px}.legal{grid-column:auto;gap:15px;font-size:11px}.legal span{max-width:none;text-align:left}dialog{width:calc(100vw - 20px);max-width:calc(100vw - 20px);height:calc(100dvh - 32px);max-height:calc(100dvh - 32px);padding:65px 12px 78px;overflow:hidden}dialog figure{height:100%;gap:12px}dialog img{height:calc(100% - 42px);object-fit:contain}dialog figcaption{font-size:11px;line-height:1.5}.lightbox-close{top:10px;right:10px}.lightbox-prev{top:auto;bottom:14px;left:calc(50% - 60px)}.lightbox-next{top:auto;bottom:14px;right:calc(50% - 60px)}.will-reveal{opacity:1;transform:none;transition:none}
}
@media(max-width:600px){.collection-grid{grid-template-columns:minmax(0,1fr)}.collection-card .pic{aspect-ratio:4/3}.collection-card h3{font-size:30px}.collection-card small{font-size:11px}.collection-card .collection-arrow .ui-icon{width:21px;height:21px}}
@media(max-width:360px){.brand img{width:112px}header,header.scrolled{gap:8px;padding-inline:16px}.header-cta{font-size:11px}.header-cta .ui-icon{display:none}.section{padding-inline:18px}.hero-content{padding-inline:18px}.hero h1{font-size:42px}.hero-pagination{gap:0}.hero-bottom{margin-inline:18px}.hero-bottom>span:first-child{font-size:7px}.national-seal{font-size:8px;letter-spacing:.5px}.contact>div>a{font-size:15px}.mobile-dock{padding-inline:12px}.mobile-dock a{font-size:12px;gap:6px}.swatches button{min-width:44px}.swatches button>span{width:36px;height:36px}.catalog-links strong{font-size:27px}}
@media(hover:none){.collection-card:hover img,.project-photo:hover img{transform:none;filter:none}.catalog-links a:hover{padding-left:0}.button:hover{background:var(--cream);color:var(--green)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.will-reveal{opacity:1;transform:none}}
@media(max-width:1000px){.mobile-dock{top:auto;height:auto;min-height:0;max-height:none;margin:0;align-content:normal}}
