@font-face{font-family:Cantarell;src:url("assets/fonts/cantarell-400-normal.otf")}@font-face{font-family:Cantarell;src:url("assets/fonts/cantarell-700-normal.otf");font-weight:700}@font-face{font-family:Rasa;src:url("assets/fonts/rasa-500-normal.ttf");font-weight:500}@font-face{font-family:Rasa;src:url("assets/fonts/rasa-700-normal.ttf");font-weight:700}
:root{--ink:#20201d;--cream:#f5f0e7;--orange:#b6492f;--yellow:#f2b62c;--muted:#77716a;--line:#d8d0c4;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Cantarell,Arial,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}em{font-family:Rasa,Georgia,serif;font-weight:500;font-style:italic;color:var(--orange)}
.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,28px);border-bottom:1px solid var(--line);background:var(--cream);position:relative;z-index:2}.brand{display:flex;align-items:center;gap:12px;line-height:1}.brand-mark{width:46px;height:46px;border-radius:50%;object-fit:cover}.brand b{font-size:13px;letter-spacing:.12em}.brand small{display:block;font-size:9px;letter-spacing:.17em;margin-top:7px;color:var(--orange)}.site-nav{display:flex;gap:34px;align-items:center;font-size:14px}.site-nav a:not(.nav-cta){position:relative}.site-nav a:not(.nav-cta):after{content:"";height:1px;width:0;background:var(--orange);position:absolute;bottom:-7px;left:0;transition:.25s}.site-nav a:hover:after{width:100%}.nav-cta,.button{display:inline-flex;align-items:center;gap:16px;padding:13px 20px;border:1px solid var(--orange);color:var(--orange);font-weight:700;font-size:13px;transition:.2s}.nav-cta:hover,.button-primary:hover{background:#8f321f;color:#fff}.nav-cta{padding:10px 18px}.nav-toggle{display:none;background:none;border:0;font:inherit;color:var(--ink)}
.section-shell{max-width:var(--max);margin:auto;padding-left:5vw;padding-right:5vw}.hero{max-width:var(--max);margin:auto;min-height:625px;display:grid;grid-template-columns:47% 53%;align-items:center;padding:58px 5vw 72px}.hero-copy{padding-right:8%;position:relative;z-index:1}.eyebrow{text-transform:uppercase;color:var(--orange);font-size:11px;letter-spacing:.17em;font-weight:700;margin:0 0 18px}.hero h1,.menu-hero h1{font-size:clamp(52px,6.5vw,92px);line-height:.92;letter-spacing:-.055em;margin:0 0 30px;font-weight:700}.hero-intro{max-width:420px;color:#5e5953;font-size:17px}.hero-actions{display:flex;gap:18px;align-items:center;margin:30px 0 22px}.button-primary{background:var(--orange);color:#fff;border-color:var(--orange)}.button-quiet{border-color:transparent;padding-left:0;color:var(--ink)}.hero-note{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.hero-visual{height:510px;position:relative}.hero-image-wrap{height:100%;width:86%;margin-left:auto;overflow:hidden;border-radius:46% 46% 4px 4px;background:#e0d4c2}.hero-image-wrap img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-stamp{position:absolute;left:0;bottom:35px;background:var(--yellow);border-radius:50%;width:120px;height:120px;display:grid;place-content:center;text-align:center;text-transform:uppercase;font-weight:700;font-size:12px;line-height:1.1;transform:rotate(-12deg)}.hero-stamp span{font-family:Rasa;font-style:italic;text-transform:none;font-size:19px;font-weight:500}.hero-caption{position:absolute;right:2%;top:15px;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.14em;font-size:10px;color:var(--muted)}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--orange);margin-bottom:10px}
.intro{border-top:1px solid var(--line);padding-top:92px;padding-bottom:105px;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.intro h2,.feature h2,.section-heading h2,.visit h2,.menu-bottom h2{font-size:clamp(38px,4.3vw,60px);line-height:.96;letter-spacing:-.045em;margin:0}.intro-text{padding-top:45px;max-width:410px;color:#625c55}.text-link{color:var(--orange);font-weight:700;font-size:13px;display:inline-block;margin-top:21px}.text-link span{margin-left:14px}
.feature{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center;padding-bottom:125px}.feature-photo{position:relative;transform:rotate(-2deg)}.feature-photo img{width:100%;aspect-ratio:1.17;object-fit:cover;border-radius:4px}.photo-label{position:absolute;right:-20px;bottom:22px;background:var(--cream);padding:12px 17px;font:italic 18px Rasa;color:var(--orange)}.feature-copy{max-width:410px}.number{font:700 12px Cantarell;color:var(--orange);border-bottom:1px solid var(--orange);padding-bottom:8px;display:inline-block;margin-bottom:37px}.feature-copy h2{margin-bottom:24px}.feature-copy p:not(.eyebrow){color:var(--muted);margin-bottom:30px}.button-dark{background:var(--ink);border-color:var(--ink);color:#fff}
.highlights{background:var(--yellow);padding:100px 0}.highlight-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:20px}.highlight-heading h2{font-size:45px;line-height:.9;letter-spacing:-.04em}.highlight-card{border-left:1px solid #b7821c;padding:8px 20px 10px;min-height:205px}.card-number{color:#8d6512;font-size:11px}.highlight-card h3{font:700 36px/1 Rasa;margin:35px 0 10px}.highlight-card p{font-size:13px;max-width:190px}.highlight-card a{font-size:12px;color:#8d401e;font-weight:700}
.gallery-section{padding-top:125px;padding-bottom:135px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:55px}.section-heading>p{max-width:235px;color:var(--muted);font-size:13px}.gallery-items{display:grid;grid-template-columns:1.25fr .75fr;gap:24px;align-items:start}.gallery-item{margin:0}.gallery-item img{width:100%;object-fit:cover}.gallery-item:first-child img{aspect-ratio:1.28}.gallery-item:nth-child(2){margin-top:90px}.gallery-item:nth-child(2) img{aspect-ratio:1}.gallery-item figcaption{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);padding-top:13px}
.visit{background:var(--ink);color:var(--cream);display:grid;grid-template-columns:1fr 1fr;min-height:540px}.visit-photo{min-height:500px}.visit-photo img{height:100%;width:100%;object-fit:cover;filter:saturate(.85)}.visit-copy{padding:90px 9vw}.visit-copy h2{color:var(--cream);margin-bottom:34px}.visit-copy address{font-style:normal;color:#ddd2c6;font-size:18px;margin-bottom:22px}.hours{border-top:1px solid #514b45;padding-top:20px;color:#ddd2c6}.hours small{color:#a8a097}.visit-actions{margin-top:32px;display:flex;flex-direction:column;align-items:flex-start;gap:3px}.site-footer{display:flex;align-items:center;justify-content:space-between;padding:30px 5vw;background:#171715;color:#bdb5aa;font-size:12px}.footer-brand{color:var(--cream);font-weight:700;letter-spacing:.12em}.footer-brand span{color:var(--orange);margin:0 9px}.site-footer a{color:var(--yellow)}
.menu-hero{max-width:var(--max);margin:auto;padding:105px 5vw 90px;display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line)}.menu-hero h1{margin:0}.menu-hero>p{width:270px;color:var(--muted);font-size:13px}.menu-layout{max-width:var(--max);margin:auto;padding:75px 5vw 120px}.tmo-menu-list{min-width:0}.tmo-menu-category{scroll-margin-top:30px;margin-bottom:68px}.tmo-menu-category-title{display:flex;align-items:baseline;gap:15px;border-bottom:2px solid var(--ink);padding-bottom:13px;margin-bottom:4px;font:700 42px/1 Rasa}.tmo-menu-item{display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);padding:19px 0}.tmo-menu-item-name{font:700 17px/1.25 Cantarell;margin:0 0 4px}.tmo-menu-item-description{font-size:12px;color:var(--muted);margin:0}.tmo-menu-item-price{white-space:nowrap;color:var(--orange);font-weight:700}.tmo-menu-filter{appearance:none;background:transparent;border:1px solid var(--line);color:var(--muted);cursor:pointer;font:inherit;padding:9px 14px}.tmo-menu-filter:hover,.tmo-menu-filter:focus-visible,.tmo-menu-filter.is-active{border-color:var(--orange);color:var(--orange)}.tmo-menu-view-all{display:inline-flex;align-items:center;border:1px solid var(--orange);color:var(--orange);font-weight:700;padding:13px 20px}.tmo-menu-view-all:hover,.tmo-menu-view-all:focus-visible{background:var(--orange);color:#fff}.menu-loading{color:var(--muted)}.menu-bottom{background:var(--yellow);padding:80px max(5vw,28px);display:flex;justify-content:space-between;align-items:center}.menu-bottom h2{font-size:55px}[hidden]{display:none!important}

/* Menu dinamico: gerarchia, ritmo e stati interattivi */
[data-tmo-menu]{width:100%;color:var(--ink)}
[data-tmo-menu] .tmo-menu-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 42px;padding:0}
[data-tmo-menu] .tmo-menu-filter{min-height:38px;border-radius:999px;padding:8px 16px;background:rgba(255,255,255,.18);font-size:12px;line-height:1.2;transition:background .2s,border-color .2s,color .2s,transform .2s}
[data-tmo-menu] .tmo-menu-filter:hover{background:#fff;color:var(--orange);transform:translateY(-1px)}
[data-tmo-menu] .tmo-menu-filter:focus-visible,.tmo-menu-view-all:focus-visible{outline:3px solid rgba(242,182,44,.7);outline-offset:3px}
[data-tmo-menu] .tmo-menu-filter.is-active{background:var(--orange);border-color:var(--orange);color:#fff}
[data-tmo-menu] .tmo-menu-category{margin-bottom:64px}
[data-tmo-menu] .tmo-menu-category-title{position:relative;gap:12px;margin:0 0 8px;padding:0 0 14px;border-bottom:1px solid var(--ink);font-size:42px;letter-spacing:-.025em}
[data-tmo-menu] .tmo-menu-category-title:before{content:"";width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:var(--orange);display:inline-block;margin-bottom:5px}
[data-tmo-menu] .tmo-menu-item{position:relative;align-items:flex-start;gap:30px;padding:19px 14px 18px 0;border-bottom:1px solid var(--line);transition:background .2s,padding .2s}
[data-tmo-menu] .tmo-menu-item:hover{padding-left:14px;background:rgba(255,255,255,.42)}
[data-tmo-menu] .tmo-menu-item:focus-within{padding-left:14px;background:rgba(255,255,255,.55);outline:1px solid var(--orange);outline-offset:-1px}
[data-tmo-menu] .tmo-menu-item-name{font-size:16px;letter-spacing:-.01em}
[data-tmo-menu] .tmo-menu-item-description{max-width:620px;color:var(--muted);font-size:13px;line-height:1.45}
[data-tmo-menu] .tmo-menu-item-price{padding-top:1px;font-size:14px;letter-spacing:.01em}
[data-tmo-menu] .tmo-menu-item-price:after{content:"";display:inline-block;width:5px;height:5px;margin:0 0 3px 9px;border-radius:50%;background:var(--yellow)}
[data-tmo-menu] .tmo-menu-view-all{border-radius:0;transition:background .2s,color .2s}
[data-tmo-menu] img{border-radius:4px;object-fit:cover}
@media(min-width:761px){
 [data-tmo-menu] .tmo-menu-list{max-width:850px}
 [data-tmo-menu] .tmo-menu-category:not(:last-child){padding-bottom:2px}
}
@media(max-width:760px){
 .menu-hero{padding-top:70px;padding-bottom:52px}
 .menu-hero>p{font-size:14px;line-height:1.5}
 .menu-layout{padding-top:42px}
 [data-tmo-menu] .tmo-menu-filters{gap:8px;margin-bottom:42px}
 [data-tmo-menu] .tmo-menu-filter{min-height:42px;padding:9px 15px;font-size:13px}
 [data-tmo-menu] .tmo-menu-category{margin-bottom:53px}
 [data-tmo-menu] .tmo-menu-category-title{font-size:36px;line-height:1.05;padding-bottom:12px}
 [data-tmo-menu] .tmo-menu-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:17px 0}
 [data-tmo-menu] .tmo-menu-item:hover,[data-tmo-menu] .tmo-menu-item:focus-within{padding-left:10px;padding-right:10px}
 [data-tmo-menu] .tmo-menu-item-name{font-size:15px;line-height:1.3}
 [data-tmo-menu] .tmo-menu-item-description{font-size:12px;line-height:1.45;margin-top:5px}
 [data-tmo-menu] .tmo-menu-item-price{font-size:13px;padding-top:1px}
 [data-tmo-menu] .tmo-menu-item-price:after{display:none}
}
@media(max-width:370px){
 [data-tmo-menu] .tmo-menu-category-title{font-size:33px}
 [data-tmo-menu] .tmo-menu-item-name{font-size:14px}
 [data-tmo-menu] .tmo-menu-item{gap:9px}
}

@media(max-width:760px){.site-header{height:72px;padding:0 22px}.brand-mark{width:38px;height:38px}.brand b{font-size:11px}.brand small{font-size:7px;margin-top:5px}.nav-toggle{display:block;cursor:pointer;font-size:13px}.nav-toggle span{font-size:17px;margin-left:5px}.site-nav{display:none;position:absolute;top:72px;left:0;right:0;padding:20px 22px 25px;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:18px}.site-nav.is-open{display:flex}.hero{display:block;padding:58px 22px 65px;min-height:0}.hero h1{font-size:57px}.hero-copy{padding:0}.hero-intro{font-size:15px}.hero-visual{height:360px;margin-top:45px}.hero-image-wrap{width:90%;height:100%}.hero-stamp{width:93px;height:93px;font-size:10px;bottom:20px}.hero-stamp span{font-size:16px}.hero-caption{right:0}.hero-actions{gap:8px;flex-wrap:wrap}.button{padding:12px 15px}.intro,.feature{display:block;padding:70px 22px}.intro-text{padding-top:27px}.feature{padding-top:0}.feature-photo{margin:0 13px 60px 0}.highlights{padding:70px 0}.highlight-grid{display:grid;grid-template-columns:1fr 1fr;padding:0 22px;gap:15px}.highlight-heading{grid-column:1/-1;margin-bottom:25px}.highlight-heading h2{font-size:42px}.highlight-card{padding:8px 12px;min-height:190px}.highlight-card h3{font-size:30px;margin-top:28px}.gallery-section{padding:75px 22px 85px}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:22px}.gallery-items{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gallery-item:first-child{grid-column:1/-1}.gallery-item:nth-child(2){margin-top:35px}.gallery-item img{aspect-ratio:1!important}.gallery-item:first-child img{aspect-ratio:1.25!important}.visit{display:block}.visit-photo{height:320px;min-height:0}.visit-copy{padding:65px 22px 80px}.site-footer{display:block;padding:28px 22px}.site-footer p{margin:12px 0}.menu-hero{display:block;padding:70px 22px 55px}.menu-hero h1{font-size:58px}.menu-hero>p{width:auto;margin-top:30px}.menu-layout{display:block;padding:50px 22px 75px}.tmo-menu-category{margin-bottom:55px}.tmo-menu-category-title{font-size:37px}.tmo-menu-item{padding:17px 0}.tmo-menu-item-name{font-size:14px}.menu-bottom{display:block;padding:65px 22px}.menu-bottom h2{font-size:48px;margin-bottom:28px}}
@media(max-width:370px){.hero h1,.menu-hero h1{font-size:50px}.gallery-items{gap:8px}.highlight-grid{gap:10px;padding:0 15px}.section-shell{padding-left:18px;padding-right:18px}}