/* Ensaladera: an editorial direction built around gathering. */
:root{--paper:#f5f2e8;--cream:#eee9d9;--ink:#292e22;--taupe:#64644f}body{max-width:none;overflow-x:clip}.announcement{display:none}html{scroll-padding-top:35px}header{padding:29px 4.5%;position:relative;z-index:20;background:var(--paper)}body:has(#menu-detail[hidden]) header{position:absolute;inset:0 0 auto;color:var(--cream);background:transparent;border-color:#f1ecdc38}.brand{font-size:39px}header .brand span{font-size:8px;letter-spacing:2.6px}header nav{gap:35px;font-size:13px}body:has(#menu-detail[hidden]) .languages button{color:var(--cream)}body:has(#menu-detail[hidden]) .languages button[aria-pressed=true]{color:white}body:has(#menu-detail[hidden]) header .button{background:transparent;border:1px solid #e8e4d18c;color:var(--cream)}body:has(#menu-detail[hidden]) header .button:hover{background:var(--cream);color:var(--ink)}.button{border-radius:0;min-height:55px;font-size:13px;letter-spacing:.3px;padding:17px 28px}.hero{display:block;min-height:850px;min-height:max(790px,100svh);color:var(--cream);background:var(--ink);isolation:isolate}.hero-photo{position:absolute;inset:0;min-height:0;z-index:-1}.hero-photo img{object-position:center 54%;filter:brightness(.78);animation:opening-photo 2s ease-out both}.photo-shade{background:linear-gradient(90deg,#12170ee8 0%,#141a0ec4 28%,#141a0e28 74%),linear-gradient(0deg,#161c12af,transparent 45%);z-index:1}.hero-copy{background:transparent;padding:175px 5% 105px;position:relative;min-height:inherit;display:flex;flex-direction:column;justify-content:center}.hero .eyebrow{font-size:11px;letter-spacing:3px;color:#e2e3d1;margin-bottom:42px}.hero h1{font-size:clamp(90px,10.3vw,164px);line-height:.93;letter-spacing:-5px;max-width:1050px;margin:0 0 35px;animation:opening-type 1s ease-out both}.hero h1 em{color:var(--cream);font-weight:400;font-size:.93em;display:inline-block;padding-left:11vw;line-height:1.2}.hero-description{color:#e3e4d7;font-size:15px;max-width:320px;line-height:1.8;margin:10px 0 0 11vw}.hero-buttons{margin:30px 0 0 11vw;flex-direction:row;align-items:center;gap:30px}.hero-buttons .button{background:var(--cream);color:var(--ink);border-color:var(--cream)}.hero-buttons .button:hover{background:var(--sage);border-color:var(--sage)}.hero-buttons .text-link{font-size:12px;color:var(--cream)}.hero-note{position:absolute;right:5%;bottom:57px;gap:15px;color:var(--cream);margin:0;font-size:11px}.hero-note .line{background:var(--cream)}.photo-caption{display:none}.round-seal{z-index:2;right:6%;top:29%;width:115px;height:115px;background:transparent;border:1px solid #f1ecdca1;color:var(--cream);backdrop-filter:blur(5px);font-size:9px}.round-seal i{font-size:29px}.hero-number{color:var(--cream);left:5%;bottom:57px;font-size:10px;letter-spacing:2px}.ribbon{background:var(--cream);padding:26px 5%;font-size:10px;text-transform:uppercase;letter-spacing:2px;border-bottom:1px solid #b9bca4}.ribbon b{font-size:20px;color:var(--olive)}.intro{max-width:none;padding:125px 7% 115px;position:relative;text-align:center}.intro>.eyebrow{letter-spacing:3px}.intro h2{font-size:clamp(48px,6vw,91px);max-width:1050px;margin:0 auto;line-height:1.2;letter-spacing:-2.5px}.intro h2 em{color:var(--olive)}.intro-bottom{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:60px;max-width:1000px;margin:55px auto 0;text-align:left}.mini-brand{font-size:95px;justify-self:center}.intro-bottom p{font-size:14px;line-height:1.9}.intro-bottom a{align-self:center;justify-self:center;font-size:12px}.menu-section{background:var(--ink);color:var(--cream);padding:100px 5% 80px}.menu-section .section-heading{align-items:start;gap:60px;margin-bottom:70px}.menu-section .eyebrow{color:var(--sage);font-size:10px}.menu-section .section-heading h2{font-size:clamp(65px,7.5vw,112px);line-height:1.02;letter-spacing:-3px}.menu-section h2 em{color:var(--sage)}.menu-section .section-description{color:#c4c9b7;max-width:260px;font-size:14px;margin-top:58px}.menu-cards{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:80px 8%;align-items:start}.menu-card{position:relative}.menu-card:nth-child(even){margin-top:170px}.menu-card:nth-child(odd){margin-bottom:-80px}.menu-card:last-child{margin-bottom:0}.card-visual{aspect-ratio:1.12;overflow:hidden}.menu-card:nth-child(even) .card-visual{aspect-ratio:.89}.card-visual img{transition:transform 1.1s cubic-bezier(.2,.6,.2,1),filter .7s;filter:saturate(.85)}.menu-card:hover .card-visual img{transform:scale(1.055);filter:saturate(1.05)}.card-number{top:18px;left:18px;background:var(--cream);color:var(--ink);border:0;font-size:10px}.card-body{display:grid;grid-template-columns:1fr auto;column-gap:25px;padding-top:23px;border-bottom:1px solid #72795e;padding-bottom:25px}.card-body h3{font-size:clamp(32px,3.1vw,48px);grid-column:1/-1;margin-bottom:16px;letter-spacing:-1px}.card-body p{color:#c9cdbc;font-size:13px;min-height:0;margin:0;max-width:350px;line-height:1.8}.card-link{color:var(--cream);border-bottom-color:var(--sage);align-self:end;font-size:11px;white-space:nowrap}.season-tag{color:var(--ink)}.stock-note{color:#b7bea6;margin:70px 0 0;font-size:11px}.occasions{padding:130px 7%;position:relative}.occasions .section-heading h2{font-size:clamp(55px,6vw,90px);line-height:1.08}.occasions .section-heading{margin-bottom:60px}.occasion-layout{grid-template-columns:1.1fr 1fr;gap:10%;align-items:center}.occasion-photo{height:650px;border-radius:0;transform:rotate(-3deg);box-shadow:18px 18px 0 var(--sand)}.occasion-list article{padding:32px 0}.occasion-list h3{font-size:35px}.occasion-list article>span{font-size:11px}.occasion-list p{font-size:14px;line-height:1.9}.process{background:var(--cream);padding:60px 7% 75px;border:0}.steps{gap:7%}.steps article{position:relative;padding-top:25px}.steps span{font-family:'Italiana',serif;font-size:42px;color:var(--olive)}.steps h3{font-size:32px;margin-top:12px}.contact{padding:115px 7%;background:#bcc4a4;color:var(--ink);gap:10%}.contact h2{font-size:clamp(74px,7.2vw,110px);line-height:1}.contact em{color:#586047}.contact-copy>p:not(.eyebrow){color:#4e5841}.contact .eyebrow{font-size:10px}.contact form{padding-top:10px}.contact input,.contact textarea,.contact select{color:var(--ink);border-color:#7e886d;color-scheme:light}.contact input:focus,.contact select:focus,.contact textarea:focus{outline-color:var(--ink)}.contact select option{background:var(--cream)}.contact .cream{background:var(--ink);color:var(--cream);border-color:var(--ink)}.contact .cream:hover{background:#434d36}.form-note{color:#46523b}.contact #form-result button{color:var(--ink)}footer{background:var(--ink);color:var(--cream);padding:65px 5% 35px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px}footer .brand{font-family:'Italiana',Georgia,serif;grid-column:1/-1;display:block;text-align:center;font-size:16vw;line-height:.85;letter-spacing:-.7vw;padding-bottom:30px;border-bottom:1px solid #72795e}footer .brand span{font-size:10px;letter-spacing:5px;margin-top:30px}footer p{font-size:17px}footer>span{color:#c3c9b6;text-align:center}footer>a:last-child{color:var(--cream);justify-self:end}.detail-top{background:var(--cream)}.detail-hero{background:var(--ink);color:var(--cream)}.detail-description{color:#c6ceba}.detail-intro .button{background:var(--cream);color:var(--ink)}.detail-intro{padding-top:85px;padding-bottom:85px}.detail-intro h1{font-size:clamp(55px,6vw,88px)}.detail-photo-note{color:var(--ink)}.detail-photo{min-height:530px}.detail-ending{background:var(--sage)}.section-heading,.intro h2,.menu-card,.occasion-photo{animation:none}.is-revealed{animation:arrive .8s ease-out both!important}@keyframes opening-type{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes opening-photo{from{transform:scale(1.045)}to{transform:scale(1)}}@keyframes arrive{from{opacity:.45;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1800px){.hero h1{font-size:185px}.section{padding-left:max(7%,calc((100vw - 1600px)/2));padding-right:max(7%,calc((100vw - 1600px)/2))}}
@media(max-width:1100px){header nav{gap:20px}.hero{min-height:850px}.hero-copy{padding-top:170px}.hero h1{font-size:11vw}.hero h1 em{padding-left:6vw}.hero-description,.hero-buttons{margin-left:6vw}.card-body{display:block}.card-link{margin-top:20px}.card-body h3{font-size:35px}.menu-card:nth-child(even){margin-top:130px}.occasion-photo{height:550px}.intro-bottom{gap:35px}}
@media(max-width:760px){header{padding:25px 6%;gap:18px}.brand{font-size:33px}body:has(#menu-detail[hidden]) .menu-toggle{color:var(--cream)}header nav.open{background:var(--ink);color:var(--cream);padding:25px;box-shadow:0 10px 25px #0002}header nav.open a{padding:7px 0}.hero{min-height:820px;min-height:max(760px,100svh)}.hero-copy{padding:155px 6% 110px;justify-content:center}.hero-photo img{object-position:63% center}.photo-shade{background:linear-gradient(90deg,#11180de8,#11180d75),linear-gradient(0deg,#151c0ca1,transparent)}.hero .eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:36px}.hero h1,html[lang=en] .hero h1{font-size:clamp(64px,12.7vw,94px);letter-spacing:-2.5px;line-height:1.02;margin-bottom:20px}.hero h1 em{padding-left:0;white-space:normal;font-size:.94em}.hero-description{font-size:14px;max-width:290px;margin:15px 0 0}.hero-buttons{margin:26px 0 0;gap:22px;flex-direction:row;flex-wrap:wrap}.hero-buttons .button{font-size:12px;padding:15px 20px}.hero-buttons .text-link{font-size:12px}.hero-note{display:none}.hero-number{display:block;font-size:8px;bottom:30px;left:6%;letter-spacing:1.6px}.round-seal{top:auto;bottom:23px;right:6%;height:77px;width:77px;font-size:6px}.round-seal i{font-size:21px}.ribbon{font-size:9px;letter-spacing:1px;padding:22px 5%;gap:12px}.intro{padding:80px 7%}.intro h2{font-size:clamp(38px,7.3vw,58px);letter-spacing:-1.5px;line-height:1.25}.intro-bottom{grid-template-columns:1fr;gap:25px;margin-top:32px;text-align:center}.mini-brand{display:none}.intro-bottom p{max-width:440px;margin:auto;font-size:14px}.intro-bottom a{grid-column:auto}.menu-section{padding:70px 6%}.menu-section .section-heading{margin-bottom:40px}.menu-section .section-heading h2{font-size:clamp(51px,8.8vw,72px);letter-spacing:-2px}.menu-section .section-description{margin-top:25px;max-width:340px}.menu-cards{grid-template-columns:1fr 1fr;gap:40px 20px}.menu-card:nth-child(even){margin-top:80px}.menu-card:nth-child(odd){margin-bottom:-35px}.card-body{padding-top:16px;padding-bottom:20px}.card-body h3{font-size:27px;letter-spacing:-.7px}.card-body p{font-size:12px}.card-link{font-size:10px}.card-number{top:12px;left:12px;width:28px;height:28px}.season-tag{font-size:7px;padding:6px 8px;right:8px;bottom:8px}.stock-note{margin-top:40px}.occasions{padding:80px 7%}.occasions .section-heading h2{font-size:48px;letter-spacing:-1.5px}.occasions .section-heading{margin-bottom:40px}.occasion-layout{grid-template-columns:1fr;gap:35px}.occasion-photo{height:440px;margin:8px 10px 20px;box-shadow:12px 12px 0 var(--sand)}.occasion-list h3{font-size:30px}.occasion-list article{padding:25px 0}.process{padding:55px 7%}.steps{gap:30px}.steps article{grid-template-columns:50px 1fr;padding-top:25px}.steps span{font-size:32px}.steps h3{margin:0 0 10px;font-size:29px}.contact{padding:70px 7%;gap:40px}.contact h2{font-size:clamp(60px,12vw,85px)}footer{padding:50px 6% 30px;grid-template-columns:1fr 1fr;gap:25px}footer .brand{font-size:16.8vw;padding-bottom:25px}footer .brand span{font-size:8px;letter-spacing:2.5px;margin-top:20px}footer p{grid-column:1/-1;text-align:center;font-size:16px}footer>span{font-size:10px;text-align:left}footer>a:last-child{font-size:11px}.detail-intro{padding:50px 7%}.detail-photo{min-height:340px}.detail-intro h1,html[lang=en] .detail-intro h1{font-size:49px}.detail-top{padding:22px 7%}}
@media(max-width:480px){.menu-cards{grid-template-columns:1fr;gap:40px}.menu-card:nth-child(even),.menu-card:nth-child(odd){margin:0}.menu-card:nth-child(even){width:88%;justify-self:end}.card-visual,.menu-card:nth-child(even) .card-visual{aspect-ratio:1.15}.card-body h3{font-size:35px}.card-body p{font-size:13px;max-width:320px}.card-link{font-size:12px;margin-top:15px}.hero{min-height:780px}.hero h1,html[lang=en] .hero h1{font-size:clamp(58px,14vw,68px)}.hero-copy{padding-top:155px}.hero-buttons{gap:20px}.hero-buttons .button{padding:15px 17px}.hero-buttons .text-link{font-size:11px}.occasion-photo{height:390px}}
@media(prefers-reduced-motion:reduce){.hero h1,.hero-photo img,.is-revealed{animation:none!important}.card-visual img{transition:none!important}.menu-card:hover .card-visual img{transform:none}}
/* Official SVG brand assets. Originals remain untouched in assets/brand. */
header .brand{display:block;width:260px;flex:0 0 auto;line-height:0}header .brand-horizontal{width:100%;height:auto;object-fit:contain}body:not(:has(#menu-detail[hidden])) header{background:var(--ink);color:var(--cream);border-color:#72795e}body:not(:has(#menu-detail[hidden])) header .languages button,body:not(:has(#menu-detail[hidden])) header .menu-toggle{color:var(--cream)}body:not(:has(#menu-detail[hidden])) header .button{border-color:var(--sage);color:var(--cream)}footer .brand{width:100%;padding:0 6% 38px;line-height:0}footer .brand-wordmark{width:100%;height:auto;max-height:300px;object-fit:contain}.mini-brand{width:100px;line-height:0}.mini-brand img{width:100%;height:auto}header nav a:hover{color:var(--sage)}@media(max-width:1100px){header .brand{width:225px}header nav{gap:18px}}@media(max-width:760px){header .brand{width:215px;max-width:65%}footer .brand{padding:0 0 25px}.header-actions{gap:12px}}@media(max-width:380px){header .brand{width:180px}.header-actions{gap:8px}}
