@font-face{font-family:'Italiana';src:url('/assets/mesaviva/fonts/italiana.woff2?v=2') format('woff2');font-display:swap}@font-face{font-family:'DM Sans';src:url('/assets/mesaviva/fonts/dm-sans.woff2?v=2') format('woff2');font-weight:100 900;font-display:swap}
:root{--paper:#f4f1e9;--ink:#242b22;--muted:#66695f;--line:#d4d5c9;--accent:#3d513a;--display:'Italiana',Georgia,serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.6}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #a54d27;outline-offset:5px}button{min-height:44px}img{display:block;width:100%;height:100%;object-fit:cover}.skip{position:fixed;left:20px;top:-80px;background:white;padding:15px;z-index:10}.skip:focus{top:10px}.header{height:103px;max-width:1500px;margin:auto;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:28px}.logo{font-size:32px;font-weight:700;letter-spacing:-1.8px;white-space:nowrap}.logo span{font-weight:400}.logo sup{font-size:8px;letter-spacing:1px;margin-left:7px;vertical-align:top;position:relative;top:11px}.header nav{display:flex;gap:32px;font-size:12px}.header nav a{padding:10px 0}.header nav a:hover{text-decoration:underline}.header nav span{margin-left:8px}.by{font-size:10px;display:flex;flex-direction:column;letter-spacing:1px}.by b{font-size:11px;letter-spacing:1.5px}.hero{max-width:1500px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;padding:54px 5% 50px;gap:50px;align-items:center}.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.7px}.dot{display:inline-block;width:7px;height:7px;background:var(--accent);border-radius:50%;margin-right:9px}.hero h1{font-family:var(--display);font-size:clamp(56px,6.3vw,94px);font-weight:400;letter-spacing:-3px;line-height:1.03;margin:32px 0 26px}em{font-family:Georgia,serif;font-weight:400;color:var(--accent)}.intro{font-size:14px;color:var(--muted);line-height:1.9}.button{display:flex;justify-content:space-between;align-items:center;gap:38px;min-height:51px;padding:12px 22px;border:1px solid var(--ink);background:transparent;font-size:12px}.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.button:hover{background:#283b25;color:#fff}.hero .button{display:inline-flex;margin-top:21px;min-width:221px}.hero-foot{display:flex;gap:26px;font-size:8px;letter-spacing:1.2px;margin-top:44px;color:var(--muted)}.hero-image{height:490px;position:relative;background:#342c21;overflow:hidden;border-radius:160px 160px 4px 4px}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0005,transparent 40%,#000a)}.hero-image img{transition:transform 1s}.hero-image:hover img{transform:scale(1.025)}.image-top,.image-caption{position:absolute;color:white;z-index:1;left:30px;right:30px;display:flex;align-items:center;justify-content:space-between}.image-top{top:55px;font-size:8px;letter-spacing:1.8px}.image-top>span:last-child{font-size:24px}.image-caption{bottom:25px;gap:15px;font-size:14px}.image-caption small{display:block;font-size:10px;opacity:.85;margin-top:3px}.outline-icon{font-size:35px}.image-tag{margin-left:auto;border:1px solid #fff9;padding:7px 11px;font-size:9px;white-space:nowrap}.ribbon{border-block:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding:19px 5%;font-size:9px;letter-spacing:1px}.ribbon span:first-child{font-weight:700}.section{max-width:1500px;margin:auto;padding:80px 5%}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}h2{font-family:var(--display);font-size:clamp(38px,4.1vw,58px);font-weight:400;line-height:1.12;letter-spacing:-1px;margin:15px 0 0}.section-heading>p{color:var(--muted);font-size:12px;margin:0 0 4px}.tabs{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);margin-bottom:35px}.tabs button{border:0;border-right:1px solid var(--line);background:transparent;padding:23px 25px;display:flex;align-items:center;gap:20px;text-align:left}.tabs button:last-child{border-right:0}.tabs button[aria-selected=true]{background:var(--ink);color:#fff}.tabs small{font-size:10px;opacity:.7}.tabs span{font-size:19px;letter-spacing:3px}.tabs em{display:block;font-family:var(--body);font-size:10px;letter-spacing:.5px;font-style:normal;color:inherit;opacity:.8;margin-top:3px}.tabs b{margin-left:auto;font-size:20px;font-weight:400}.menu-toolbar{display:flex;justify-content:space-between;gap:25px;align-items:center}h3{font-weight:500}.menu-toolbar h3{font-family:var(--display);font-size:32px;margin:5px 0 0}.search{border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px;min-width:270px}.search span{font-size:24px}.search input{background:transparent;border:0;padding:12px 0;min-width:220px;font-size:12px;color:var(--ink)}.filter-row{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:25px 0}.filters{display:flex;gap:8px}.filters button{background:transparent;border:1px solid var(--line);border-radius:30px;padding:8px 16px;font-size:11px}.filters .active{background:var(--accent);color:white;border-color:var(--accent)}.demo-label{font-size:8px;letter-spacing:1px;color:var(--muted)}.dish-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.dish{min-width:0}.dish-photo{position:relative;height:255px;background:#dcd9cf;overflow:hidden}.dish-photo img{transition:transform .5s}.dish:hover img{transform:scale(1.04)}.dish-tag{position:absolute;left:14px;top:14px;background:var(--paper);font-size:8px;letter-spacing:1px;padding:6px 10px}.dish-head{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-top:16px}.dish h4{font-size:17px;font-weight:500;margin:0}.dish .cost{font-size:14px;white-space:nowrap}.dish p{font-size:12px;color:var(--muted);margin:8px 0 13px;min-height:39px}.dish .details-btn{border:0;border-top:1px solid var(--line);width:100%;background:transparent;text-align:left;display:flex;justify-content:space-between;align-items:center;padding:12px 0;font-size:11px}.details-btn:hover{color:var(--accent);text-decoration:underline}.menu-note,.commercial-note{font-size:10px;color:var(--muted);margin-top:27px}.empty{grid-column:1/-1;border:1px solid var(--line);padding:45px;text-align:center}.how{background:#e7e9df;display:grid;grid-template-columns:1fr 1fr;gap:100px;max-width:none;padding-inline:max(5%,calc((100vw - 1350px)/2))}.how>div>p:not(.eyebrow){max-width:370px;font-size:13px;color:var(--muted);margin:25px 0}.status{font-size:8px;letter-spacing:1px}.how ol{list-style:none;padding:0;margin:0}.how li{display:flex;gap:25px;padding:25px 0;border-bottom:1px solid #c7cbbd}.how li:first-child{padding-top:0}.how li>span{font-size:11px;color:var(--muted);padding-top:5px}.how h3{font-size:18px;margin:0 0 8px}.how li p{font-size:12px;color:var(--muted);margin:0;max-width:380px}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.plan{padding:30px;border:1px solid var(--line);display:flex;flex-direction:column}.plan.featured{border:1px solid var(--accent);background:#e9ecdf}.plan h3{font-family:var(--display);font-size:27px;line-height:1.2;margin:25px 0}.price{font-size:47px;letter-spacing:-2px}.price small{font-size:9px;letter-spacing:.5px}.plan p{font-size:12px;color:var(--muted);min-height:40px}.plan ul{list-style:none;padding:0;margin:13px 0 30px;font-size:12px;min-height:88px}.plan li{padding:5px 0}.plan li:before{content:'↗';margin-right:10px}.plan .button{margin-top:auto;width:100%}.faq{padding-top:15px;padding-bottom:85px}.faq h2{margin-bottom:35px}.faq details{border-top:1px solid var(--line);padding:19px 0}.faq summary{display:flex;justify-content:space-between;font-size:14px;cursor:pointer;min-height:30px;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq details p{max-width:780px;font-size:12px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:35px 5%;display:flex;justify-content:space-between;align-items:center;gap:25px}footer p{font-family:var(--display);font-size:24px}footer>span{font-size:9px;letter-spacing:1px}footer small{display:block;font-size:8px;letter-spacing:0;color:var(--muted);margin-top:6px}dialog{border:0;background:var(--paper);color:var(--ink);padding:0;width:min(850px,92vw);max-height:90vh;overflow:auto}dialog::backdrop{background:#172019b8;backdrop-filter:blur(5px)}.close{position:absolute;right:12px;top:12px;border:0;background:var(--paper);border-radius:50%;width:44px;height:44px;font-size:26px;z-index:2}.modal-layout{display:grid;grid-template-columns:1fr 1fr}.modal-photo{min-height:440px}.modal-copy{padding:55px 30px 30px}.modal-copy h2{font-size:38px;margin-bottom:20px}.modal-copy p{font-size:13px;color:var(--muted)}.modal-copy .price{font-size:32px}.ar-pending{background:#e4e7dc;padding:16px;margin:24px 0;font-size:12px}.ar-pending strong{display:block;margin-bottom:6px}.modal-plan{padding:55px;max-width:650px}.modal-plan h2{margin-bottom:25px}.modal-plan p{font-size:14px}.modal-plan .button{margin-top:25px}.muted{color:var(--muted);font-size:11px!important}@media(min-width:1600px){.hero h1{font-size:94px}}@media(max-width:1000px){.header nav{gap:18px}.by{display:none}.hero{gap:25px}.hero-image{height:450px}.hero h1{font-size:64px}.hero-foot{gap:13px}.tabs button{padding:18px;gap:12px}.dish-photo{height:210px}.how{gap:45px}.plan{padding:23px}.plan h3{font-size:25px}.price{font-size:40px}}@media(max-width:700px){.header{height:80px;padding:0 6%}.logo{font-size:27px}.header nav{gap:17px;font-size:10px}.header nav a:last-child{display:none}.hero{grid-template-columns:1fr;padding:35px 6%;gap:30px}.hero .eyebrow{font-size:8px}.hero h1{font-size:65px;margin-top:24px}.intro{font-size:13px}.hero-foot{margin-top:28px;justify-content:space-between}.hero-image{height:380px;border-radius:130px 130px 3px 3px}.ribbon{padding:15px 6%;font-size:8px;justify-content:center}.ribbon span:not(:first-child){display:none}.section{padding:48px 6%}.section-heading{display:block;margin-bottom:25px}.section-heading>p{margin-top:18px}.tabs{margin-bottom:27px}.tabs button{padding:16px 10px;gap:0;justify-content:center}.tabs small,.tabs b{display:none}.tabs span{font-size:15px;letter-spacing:1.5px}.tabs em{font-size:8px;letter-spacing:0}.menu-toolbar{align-items:stretch;flex-direction:column;gap:15px}.menu-toolbar h3{font-size:30px}.search{min-width:0}.search input{width:100%}.filter-row{align-items:start;flex-direction:column;margin:18px 0}.filters{gap:5px}.filters button{font-size:10px;padding:8px 12px}.dish-grid{grid-template-columns:1fr;gap:28px}.dish-photo{height:300px}.dish p{min-height:0}.dish h4{font-size:19px}.dish .details-btn{font-size:12px}.how{grid-template-columns:1fr;gap:35px}.how>div>p:not(.eyebrow){max-width:none}.plan-grid{grid-template-columns:1fr}.plan{padding:28px}.plan ul{min-height:0}.plan p{min-height:0}.price{font-size:48px}.faq{padding-top:0}.faq summary{font-size:13px;gap:20px}footer{flex-wrap:wrap;padding:30px 6%}footer p{font-size:20px}footer>span{width:100%}.modal-layout{grid-template-columns:1fr}.modal-photo{height:220px;min-height:0}.modal-copy{padding:25px}.modal-plan{padding:55px 25px 30px}.modal-copy h2{font-size:34px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.demo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.demo-card{border:1px solid var(--line);min-width:0;background:#f9f6ee}.demo-cover{height:280px;display:block;position:relative;overflow:hidden}.demo-cover img{height:100%;width:100%;transition:transform .4s}.demo-cover:hover img{transform:scale(1.04)}.demo-cover>span{position:absolute;left:18px;bottom:18px;background:var(--paper);padding:8px 12px;font-size:8px;letter-spacing:1px}.demo-card-copy{padding:24px}.demo-card h3{font:400 34px var(--display);letter-spacing:3px;margin:10px 0}.demo-card-copy>p:not(.eyebrow){font-size:13px;min-height:45px;color:var(--muted)}.demo-card .button{margin-top:22px;font-size:13px}.demo-brasa{background:#222820;color:#f5f0e5;--muted:#c2c6b9;--line:#59634f}.demo-brasa .button{border-color:#c2c6b9;color:#f5f0e5}.demo-grano{background:#e6eadb}.hero .eyebrow{max-width:420px;line-height:1.9}.header nav a:last-child{color:var(--accent);font-weight:600}.commercial-note a{text-decoration:underline}.mobile-quote{display:none}.faq details a{text-decoration:underline}.hero-image{height:490px}.section-heading h2{max-width:650px}.by a{display:flex;flex-direction:column}.hero h1{font-size:clamp(65px,6.6vw,100px)}@media(max-width:900px){.demo-gallery{gap:15px}.demo-cover{height:230px}.demo-card-copy{padding:18px}.demo-card h3{font-size:29px}.demo-card .button{padding:12px;font-size:11px}}@media(max-width:700px){.demo-gallery{grid-template-columns:1fr;gap:26px}.demo-cover{height:auto;aspect-ratio:1.45}.demo-card-copy{padding:25px}.demo-card h3{font-size:38px}.demo-card-copy>p:not(.eyebrow){min-height:0;font-size:14px}.demo-card .button{font-size:13px;padding:14px 20px}.hero h1{font-size:74px}.hero .eyebrow{font-size:9px}.header nav a:last-child{display:block}.header nav a:nth-child(2){display:none}.header nav{gap:16px}.hero-image{height:360px}.by{display:none}.mobile-quote{display:block;position:fixed;bottom:0;left:0;right:0;padding:12px 5% max(12px,env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);z-index:20}.mobile-quote a{display:flex;justify-content:space-between;background:var(--accent);color:white;padding:16px 20px;font-size:13px;min-height:52px}body{padding-bottom:85px}footer{padding-bottom:35px}.section-heading h2{font-size:42px}}@media(max-width:370px){.hero h1{font-size:65px}.header nav{font-size:9px;gap:10px}.hero-foot{font-size:7px}}
.demo-cover>span{color:#242b22}
.implementation-label{font-size:9px!important;letter-spacing:1.5px;margin:0 0 18px!important;min-height:0!important}.recurring-note{font-size:11px!important;min-height:0!important;border-top:1px solid var(--line);padding-top:16px}.hosting-explainer{margin-top:30px;padding:28px;border:1px solid var(--line)}.hosting-explainer h3{font-family:var(--display);font-size:29px}.hosting-explainer p{font-size:13px;line-height:1.8;max-width:1000px}.plan p{min-height:0}.plan li{line-height:1.7}