:root{--wine:#7a273d;--paper:#f5f1e9;--ink:#27231f;--muted:#706960;--gold:#cdb28a;--line:#dcd5c9;--dark:#211b18}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.7 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover}figure,p{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;margin:0}h2{font-size:clamp(34px,3.6vw,56px);line-height:1.16;letter-spacing:-1.5px}h3{font-size:27px;line-height:1.3}em{font-weight:400;color:var(--wine)}.skip{position:fixed;top:-100px;z-index:100;background:white;color:black;padding:12px}.skip:focus{top:10px}header{height:103px;position:absolute;top:0;left:0;width:100%;z-index:20;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:30px;color:var(--paper);border-bottom:1px solid #ffffff28;transition:background .25s}header.scrolled{position:fixed;height:85px;background:var(--dark);box-shadow:0 3px 20px #0002}.brand{display:inline-flex;flex-direction:column;text-align:center;flex-shrink:0}.brand>span{font:italic 46px/1 Georgia,serif;letter-spacing:-2px}.brand small{font-size:8px;line-height:1.4;letter-spacing:2.8px;margin-top:8px}nav{display:flex;gap:27px;font-size:12px}nav a:hover{color:var(--gold)}.button{display:inline-flex;justify-content:center;align-items:center;padding:16px 22px;color:var(--paper);background:var(--wine);font-size:12px;font-weight:600;border:1px solid var(--wine);transition:background .2s,transform .2s}.button:hover{background:#591b2c;transform:translateY(-2px)}.button.outline{border:1px solid #ffffff80;background:transparent}.button.outline:hover{background:#ffffff15}.header-cta{font-size:11px;padding:12px 18px}.menu-toggle{display:none}.hero{height:780px;min-height:650px;position:relative;background:var(--dark);color:var(--paper);overflow:hidden}.hero-image{position:absolute;right:0;top:0;width:72%;height:100%;background:url('assets/prato-aleixo-v2.jpg') center 50%/cover no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#211b18 2%,#211b18ef 22%,#211b18a6 43%,#211b1815 75%),linear-gradient(0deg,#211b18bf,transparent 25%,transparent 75%,#211b1880)}.hero-content{position:relative;padding:190px 8% 120px}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:600;color:var(--wine);margin-bottom:24px}.hero .eyebrow{color:var(--gold)}h1{font-size:clamp(58px,5.8vw,90px);line-height:1.03;letter-spacing:-3px;max-width:750px}h1 em{color:var(--gold)}.hero-description{color:#e4ded3;font-size:15px;line-height:1.8;margin-top:25px}.hero-actions{display:flex;gap:14px;margin-top:30px}.hero-bottom{position:absolute;bottom:30px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:2px}.hero-bottom a{font-size:11px;letter-spacing:.5px}.quick-info{display:flex;justify-content:space-between;align-items:center;padding:26px 8%;border-bottom:1px solid var(--line);gap:30px}.quick-info>div{display:flex;align-items:center;gap:17px}.quick-info small{display:block;font-size:8px;letter-spacing:1.5px;color:var(--muted);margin-bottom:4px}.quick-info p{font-size:12px}.info-icon{font-size:28px;color:var(--wine)}.quick-info>a{font-size:12px;color:var(--wine);white-space:nowrap}.section{padding:105px 8%}.casa{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:10%;padding-bottom:125px}.casa-images{height:550px;position:relative}.casa-main{width:75%;height:455px;overflow:hidden}.casa-main img{object-position:center 48%;height:125%;margin-top:-5%}.casa-detail{position:absolute;right:0;bottom:20px;width:48%;height:320px;border:10px solid var(--paper);overflow:hidden}.casa-detail img{object-position:center 50%}.image-caption{position:absolute;left:0;bottom:0;font-size:10px;color:var(--muted);letter-spacing:1px}.casa-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted);margin-top:22px}.text-link{display:inline-flex;align-items:center;border-bottom:1px solid var(--wine);color:var(--wine);font-size:12px;padding-bottom:7px}.casa .text-link{margin-top:28px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:45px}.heading-note{max-width:290px}.heading-note p{color:var(--muted);font-size:13px;margin-bottom:20px}.gastronomy{background:#ebe5da}.filters{display:flex;gap:30px;border-bottom:1px solid #d1c8b9;margin-bottom:30px}.filters button{background:none;border:0;border-bottom:2px solid transparent;padding:12px 0;font-size:11px;color:var(--muted);margin-bottom:-1px}.filters button.active{color:var(--wine);border-color:var(--wine)}.dish-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.dish-grid article{background:var(--paper)}[hidden]{display:none!important}.dish-photo{height:290px;overflow:hidden}.dish-photo img{object-position:center 50%;transition:transform .5s}.dish-photo:hover img{transform:scale(1.04)}.feijoada img{object-position:center 64%}.chope img{height:225%;object-position:center top;margin-top:-5%}.dish-content{padding:24px}.dish-content small{font-size:8px;letter-spacing:2px;color:var(--wine);display:block;margin-bottom:10px}.dish-content p{color:var(--muted);font-size:12px;line-height:1.8;margin-top:12px}.menu-note{font-size:10px;color:var(--muted);margin-top:25px}.quote-band{background:#591b2c;color:var(--paper);padding:65px 8%;display:flex;align-items:center;justify-content:space-between;gap:30px}.quote-band p{font:32px/1.6 Georgia,serif}.quote-band p span{color:var(--gold);margin:0 12px}.quote-sign{font:italic 62px Georgia,serif;color:var(--gold)}.gallery-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:20px}.gallery-item{position:relative;height:390px;overflow:hidden;background:var(--dark);padding:0;border:0;color:white;text-align:left}.gallery-item img{object-position:center 53%;transition:transform .6s}.gallery-item:hover img{transform:scale(1.04)}.gallery-item:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#000a)}.gallery-item>span{position:absolute;bottom:25px;left:22px;right:22px;z-index:1;font:20px Georgia,serif;display:flex;justify-content:space-between}.gallery-item b{font:16px Arial,sans-serif}.gallery-item.seafood img{height:190%;margin-top:-67%;object-position:center 70%}.gallery-credit{margin-top:17px;font-size:9px;color:var(--muted)}.events{display:grid;grid-template-columns:1fr 1fr;background:var(--dark);color:var(--paper)}.events-image{height:590px;overflow:hidden}.events-image img{object-position:center 18%;height:160%;margin-top:-5%}.events-content{padding:80px 14% 75px 12%;align-self:center}.events .eyebrow{color:var(--gold)}.events em{color:var(--gold)}.events h2{font-size:clamp(34px,3vw,46px)}.events p:not(.eyebrow){font-size:13px;color:#bdb5ab;line-height:1.9;margin-top:23px}.events .button{margin-top:30px}.visit{display:grid;grid-template-columns:1fr 1fr;gap:12%}.visit-title>p:not(.eyebrow){font-size:14px;color:var(--muted);margin:25px 0}.detail-row{display:flex;gap:25px;border-top:1px solid var(--line);padding:25px 0}.detail-row:last-child{border-bottom:1px solid var(--line)}.detail-row>span{font-size:10px;color:var(--wine);padding-top:7px}.detail-row h3{font-size:23px}.detail-row p{font-size:13px;color:var(--muted);margin:12px 0}.detail-row strong{font-weight:400;color:var(--ink)}.detail-row .text-link{font-size:11px}.faq{padding-top:0}.faq h2{font-size:35px}.faq-list{margin-top:30px}.faq details{border-bottom:1px solid var(--line)}.faq summary{padding:23px 0;display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;font-size:13px}.faq summary::-webkit-details-marker{display:none}.faq summary>span{color:var(--wine);font-size:21px}.faq details[open] summary>span{transform:rotate(45deg)}.faq details p{max-width:700px;font-size:13px;color:var(--muted);padding-bottom:25px}.faq details a{text-decoration:underline;color:var(--wine)}footer{background:var(--dark);color:var(--paper);padding:60px 8% 25px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:40px}.footer-top>p{font-size:12px;color:#bdb5ab}.footer-top>div{display:flex;flex-direction:column;font-size:12px;gap:10px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff20;padding-top:22px;color:#a49b91;font-size:9px}.mobile-contact{display:none}dialog{border:0;background:var(--dark);color:var(--paper);padding:15px;max-width:90vw;max-height:94vh}dialog::backdrop{background:#000c}dialog img{width:auto;max-width:85vw;height:auto;max-height:78vh;object-fit:contain}dialog p{font-size:13px;padding:12px 8px 0}.dialog-close{position:absolute;right:23px;top:23px;background:var(--paper);color:var(--ink);width:38px;height:38px;border:0;font-size:17px}@media(max-width:1050px){header{gap:20px}nav{gap:18px;font-size:11px}.header-cta{font-size:10px}.hero{height:740px}.quick-info{padding-left:5%;padding-right:5%;gap:15px}.quick-info p{font-size:10px}.section{padding-left:6%;padding-right:6%}.casa{gap:7%}.casa-images{height:480px}.casa-main{height:400px}.casa-detail{height:260px}.dish-photo{height:240px}.quote-band p{font-size:27px}.quote-sign{font-size:45px}.gallery-item{height:320px}.events-content{padding:60px 10%}.events-image{height:600px}}@media(max-width:760px){html{scroll-padding-top:85px}header,header.scrolled{height:80px;padding:0 6%}.brand>span{font-size:38px}.brand small{font-size:6px}.header-cta{margin-left:auto;padding:10px 12px;font-size:9px}.menu-toggle{display:flex;background:none;border:0;width:28px;height:28px;padding:5px 0;flex-direction:column;justify-content:space-around}.menu-toggle span{display:block;height:1px;background:var(--paper);width:24px}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-5px) rotate(-45deg)}nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--dark);padding:25px 6% 35px;flex-direction:column;gap:20px;font-size:14px}nav.open{display:flex}.hero{height:760px;min-height:0}.hero-image{width:100%;opacity:.75;background-position:center 47%}.hero-shade{background:linear-gradient(90deg,#211b18da,#211b1855),linear-gradient(0deg,#211b18d9,transparent 50%,#211b1870)}.hero-content{padding:165px 7% 120px}h1{font-size:clamp(52px,8.8vw,69px);letter-spacing:-2px}.hero .eyebrow{font-size:8px;letter-spacing:2px}.hero-description{font-size:13px;margin-top:24px}.hero-actions{flex-wrap:wrap;gap:10px;max-width:420px}.hero-actions .button{padding:14px 17px;font-size:10px}.hero-bottom{left:7%;right:7%;bottom:26px;font-size:7px;letter-spacing:1px}.hero-bottom>a{display:none}.quick-info{padding:24px 7%;flex-wrap:wrap;gap:20px}.quick-info>div{width:100%;gap:18px}.quick-info p{font-size:12px}.quick-info small{font-size:8px}.quick-info>a{margin-left:45px;font-size:11px}.section{padding:65px 7%}.casa{grid-template-columns:1fr;gap:48px}.casa-images{height:440px;max-width:500px}.casa-main{height:365px}.casa-detail{height:265px;width:48%;bottom:15px}.eyebrow{margin-bottom:18px;font-size:8px}h2{font-size:40px;letter-spacing:-1px}.casa-copy>p:not(.eyebrow){font-size:13px}.section-heading{display:block;margin-bottom:28px}.heading-note{margin-top:25px}.heading-note p{font-size:12px}.filters{gap:22px}.filters button{font-size:10px}.dish-grid{grid-template-columns:1fr;gap:24px}.dish-photo{height:285px}.dish-content{padding:24px}.dish-content h3{font-size:28px}.dish-content p{font-size:13px}.quote-band{display:block;padding:40px 7%}.quote-band p{font-size:26px;line-height:1.5}.quote-band p span{display:block;margin:0}.quote-sign{display:block;margin-top:20px;font-size:43px}.gallery .section-heading>.text-link{margin-top:25px}.gallery-grid{grid-template-columns:1fr 1fr;gap:12px}.gallery-item{height:230px}.gallery-item.tall{grid-column:1/-1;height:360px}.gallery-item>span{font-size:15px;left:14px;right:14px;bottom:16px}.events{grid-template-columns:1fr}.events-image{height:300px}.events-image img{height:280%;margin-top:-8%}.events-content{padding:50px 7% 60px}.events h2{font-size:37px}.visit{grid-template-columns:1fr;gap:40px}.detail-row{gap:20px}.faq{padding-top:0}.faq h2{font-size:31px}.faq summary{font-size:12px;gap:20px}.faq summary span{flex-shrink:0}footer{padding:45px 7% 95px}.footer-top{align-items:flex-start;flex-wrap:wrap;gap:30px}.footer-top .brand{width:40%;text-align:left}.footer-top>p{font-size:11px;align-self:center}.footer-top>div{flex-direction:row;gap:30px}.footer-bottom{font-size:8px}.mobile-contact{display:grid;grid-template-columns:1.25fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:25;background:var(--paper);box-shadow:0 -2px 15px #0002;padding-bottom:env(safe-area-inset-bottom)}.mobile-contact a{padding:17px 18px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--wine)}.mobile-contact a:first-child{background:var(--wine);color:white}dialog{padding:8px}.dialog-close{top:16px;right:16px}}@media(max-width:380px){.header-cta{font-size:8px;padding:9px}header{gap:15px}h1{font-size:51px}.hero-content{padding-top:155px}.hero{height:730px}.casa-images{height:390px}.casa-main{height:330px}.casa-detail{height:230px}.filters{gap:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media(max-width:760px){.hero-image{background-size:auto 150%;background-position:center 25%}}
.brand .brand-logo{width:82px;height:82px;object-fit:contain;border-radius:50%}header.scrolled .brand-logo{width:68px;height:68px}.footer-top .brand-logo{width:110px;height:110px}@media(max-width:760px){.brand .brand-logo,header.scrolled .brand-logo{width:64px;height:64px}.footer-top .brand-logo{width:95px;height:95px}}

img.admin-photo{height:100%!important;margin-top:0!important;object-position:center!important}.hero-image.admin-photo{background-size:cover!important;background-position:center!important}
.location-map{grid-column:1/-1;width:100%;margin-top:30px;border:1px solid var(--line);overflow:hidden;background:#e7e2d9}.location-map iframe{display:block;width:100%;height:420px;border:0}@media(max-width:760px){.location-map{margin-top:20px}.location-map iframe{height:320px}}

.visit{row-gap:36px}.location-map{margin-top:0}

.social-icon{display:inline-block;width:19px;height:19px;vertical-align:middle;flex-shrink:0;margin-right:7px}.social-floating{position:fixed;right:22px;bottom:24px;display:flex;flex-direction:column;gap:10px;z-index:30}.social-floating a{display:flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:50%;color:white;box-shadow:0 4px 16px #0002;transition:transform .2s}.social-floating a:hover{transform:translateY(-3px)}.floating-whatsapp{background:#168744}.floating-instagram{background:#7a273d}.social-floating .social-icon{width:26px;height:26px;margin:0}@media(max-width:760px){.social-floating{right:14px;bottom:86px}.social-floating a{width:44px;height:44px}}

.hero-image{background-position:center center}.dish-grid img,.gallery-item img,.casa-images img,.events-image img,.admin-photo{object-position:center center!important}

/* Nome completo junto à identidade do restaurante */
header .brand,.menu-header .logo{display:inline-flex;flex-direction:row;align-items:center;gap:15px;width:auto;text-align:left;flex-shrink:0}.brand-name{display:flex;flex-direction:column;white-space:nowrap;text-align:left}.brand-title{font:400 35px/1.1 Georgia,'Times New Roman',serif;letter-spacing:-.8px}.brand-subtitle{font:500 9px/1.7 Arial,sans-serif;letter-spacing:2px;text-transform:uppercase;margin-top:5px}header .brand-name{color:var(--paper)}.menu-header .brand-name{color:var(--wine)}@media(max-width:1100px){header .brand, .menu-header .logo{gap:10px}.brand-title{font-size:29px}.brand-subtitle{font-size:8px;letter-spacing:1.2px}}@media(max-width:760px){header .brand,.menu-header .logo{gap:9px}.brand-title{font-size:27px}.brand-subtitle{font-size:7px;letter-spacing:1px}.menu-header{flex-wrap:wrap;height:auto;min-height:90px;padding-top:10px;padding-bottom:10px}.menu-header .back{margin-left:auto}}
/* Nome do restaurante com mais destaque */
header .brand-title,.menu-header .brand-title{font-size:42px}header .brand-subtitle,.menu-header .brand-subtitle{font-size:10px;letter-spacing:2px}@media(max-width:1100px){header .brand-title,.menu-header .brand-title{font-size:34px}header .brand-subtitle,.menu-header .brand-subtitle{font-size:9px;letter-spacing:1.2px}}@media(max-width:760px){header .brand-title,.menu-header .brand-title{font-size:31px}header .brand-subtitle,.menu-header .brand-subtitle{font-size:8px;letter-spacing:1px}}
/* Destaque da marca no cabeçalho */
header .brand-title,.menu-header .brand-title{font-size:50px;font-weight:700;letter-spacing:-1.2px}header .brand-title{color:var(--gold);text-shadow:0 2px 12px #0005}header .brand-subtitle,.menu-header .brand-subtitle{font-size:11px;font-weight:600;letter-spacing:2.2px;margin-top:7px}header .brand, .menu-header .logo{gap:18px}@media(max-width:1100px){header .brand-title,.menu-header .brand-title{font-size:40px}header .brand-subtitle,.menu-header .brand-subtitle{font-size:9px;letter-spacing:1.4px}header .brand,.menu-header .logo{gap:12px}}@media(max-width:760px){header .brand-title,.menu-header .brand-title{font-size:35px}header .brand-subtitle,.menu-header .brand-subtitle{font-size:8px;letter-spacing:1px;margin-top:5px}header .brand,.menu-header .logo{gap:10px}}
/* Posição da marca no cabeçalho */
header .brand,.menu-header .logo{margin-left:28px}@media(max-width:1100px){header .brand,.menu-header .logo{margin-left:16px}}@media(max-width:760px){header .brand,.menu-header .logo{margin-left:8px}}
/* Cor original da marca */
header .brand-title{color:var(--paper);text-shadow:none}
/* Identidade centralizada no cabeçalho */
header#header{display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:auto auto;align-items:center;column-gap:24px;row-gap:12px;padding-top:12px;padding-bottom:12px}header#header>.brand{display:contents}header#header .brand-logo{grid-column:1;grid-row:1;justify-self:start}header#header .brand-name{grid-column:2;grid-row:1;text-align:center;align-items:center}header#header .header-cta{grid-column:3;grid-row:1;justify-self:end}header#header nav{grid-column:1/-1;grid-row:2;justify-self:center}header#header .menu-toggle{grid-column:3;grid-row:1;justify-self:end}.menu-header{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;height:auto;min-height:100px}.menu-header .logo{display:contents}.menu-header .logo>img{grid-column:1;grid-row:1}.menu-header .brand-name{grid-column:2;grid-row:1;align-items:center;text-align:center}.menu-header .back{grid-column:1/-1;grid-row:2;justify-self:center;margin:0}.menu-header .contact{grid-column:3;grid-row:1;justify-self:end}@media(max-width:760px){header#header{grid-template-columns:64px minmax(0,1fr) 32px;column-gap:10px;grid-template-rows:auto}header#header .brand-name{white-space:normal}header#header .brand-title{font-size:32px}header#header .brand-subtitle{font-size:7px;letter-spacing:.8px}header#header nav{justify-self:stretch}.menu-header{grid-template-columns:54px minmax(0,1fr);gap:10px}.menu-header .logo>img{width:54px;height:54px}.menu-header .brand-title{font-size:32px}.menu-header .contact{grid-column:2;grid-row:2;justify-self:end}.menu-header .back{grid-column:1;grid-row:2;white-space:nowrap}.menu-header .brand-subtitle{font-size:8px}}

/* Opções de composição da marca */
header#header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:18px;padding-bottom:18px}header#header>.brand{display:inline-flex;flex-direction:row;align-items:center;gap:16px;margin-left:0}header#header .brand-name{align-items:flex-start;text-align:left}header#header nav{margin:0}header#header .brand-title{font-size:40px}header#header .brand-subtitle{font-size:9px;letter-spacing:1.4px}


@media(max-width:1100px){header#header{gap:15px}header#header .brand-title{font-size:32px}header#header .brand-subtitle{font-size:8px;letter-spacing:.9px}}
@media(max-width:760px){header#header{padding-top:12px;padding-bottom:12px}header#header .brand-title{font-size:30px}header#header .brand-name{white-space:nowrap}header#header>.brand{gap:10px}header#header .brand-subtitle{font-size:7px}}

.brand-logo,.menu-header .logo>img{clip-path:circle(49% at 50% 50%);object-fit:cover}
