@font-face{font-family:Manrope;src:url("assets/fonts/manrope-regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url("assets/fonts/manrope-bold.woff2") format("woff2");font-weight:700 900;font-style:normal;font-display:swap}
@font-face{font-family:Roboto;src:url("assets/fonts/roboto-regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Roboto;src:url("assets/fonts/roboto-medium.woff2") format("woff2");font-weight:500 700;font-style:normal;font-display:swap}
:root{color-scheme:light;--ink:#121211;--muted:#60605d;--paper:#f8f6ef;--cream:#eee8d8;--accent:#c8732c;--line:rgba(18,18,17,.14);--serif:Georgia,"Times New Roman",serif;--sans:Manrope,Arial,sans-serif;--texture:url("assets/images/stripe-background.webp")}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--serif);-webkit-font-smoothing:antialiased}
a{color:inherit} img{display:block;max-width:100%} button{font:inherit}
::selection{color:#fff;background:var(--accent)}
.site-header{position:absolute;z-index:10;top:0;left:0;width:100%;padding:28px clamp(24px,6vw,96px);display:flex;align-items:center;gap:34px;color:#10100f}
.brand{width:174px;flex:0 0 auto}.brand img{width:100%;height:auto}
.desktop-nav{display:flex;justify-content:center;gap:clamp(20px,3vw,44px);margin-left:auto}
.desktop-nav a,.language,.mobile-nav a{font:600 12px/1.2 var(--sans);letter-spacing:.08em;text-decoration:none;text-transform:uppercase}
.desktop-nav a{position:relative;padding:9px 0}
.desktop-nav a::after{position:absolute;right:0;bottom:3px;left:0;height:1px;background:currentColor;content:"";transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.desktop-nav a:hover::after{transform:scaleX(1)}
.language{position:relative;flex:0 0 auto;margin-left:10px;letter-spacing:.02em}
.language summary{display:flex;align-items:center;gap:8px;padding:12px 15px;border:1px solid rgba(16,16,15,.3);border-radius:99px;background:rgba(255,255,255,.54);list-style:none;cursor:pointer}
.language summary::-webkit-details-marker{display:none}.language summary>span:first-child{font-size:18px;line-height:0}.chevron{color:#7b766f;font-size:15px}
.language-menu{position:absolute;top:calc(100% + 9px);right:0;min-width:150px;display:grid;gap:2px;padding:7px;border:1px solid var(--line);border-radius:12px;background:#fffdf8;box-shadow:0 15px 36px #17130d1a}
.language-menu a,.language-menu span{padding:10px;border-radius:7px;text-decoration:none;letter-spacing:0;text-transform:none}.language-menu a:hover{background:#eee9dd}.language-menu [aria-current]{color:#807b71}
.menu-toggle,.mobile-nav{display:none}
.hero{position:relative;min-height:840px;height:100svh;overflow:hidden;display:grid;align-items:center;padding:134px 24px 84px;isolation:isolate;background:#b9b3a4}
.hero::before{position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(250,247,230,.62) 0%,rgba(249,246,232,.34) 31%,rgba(19,18,15,.12) 73%,rgba(19,18,15,.28) 100%);content:""}
.hero-content{width:min(100%,1050px);margin:0 auto;text-align:center}
.eyebrow{margin:0 0 14px;color:var(--accent);font:700 10px/1.4 var(--sans);letter-spacing:.22em;text-transform:uppercase}
.hero .eyebrow{margin-bottom:13px;color:#363229}
h1,h2,h3,p,figure{margin-top:0} h1,h2{font-family:var(--serif);font-weight:700}
.hero h1{max-width:920px;margin:0 auto;font-size:clamp(42px,5.6vw,76px);line-height:.99;letter-spacing:-.045em;text-wrap:balance}.hero h1 span{display:block}
.hero-note{margin:19px auto 0;font:500 13px/1.6 var(--sans);letter-spacing:.03em}
.hero-grid{width:min(860px,100%);margin:clamp(54px,8vh,90px) auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.hero-tile{min-height:112px;display:flex;align-items:center;gap:20px;position:relative;padding:19px 48px 19px 23px;border:1px solid rgba(255,255,255,.66);border-radius:18px;background:rgba(255,255,255,.76);backdrop-filter:blur(9px);text-align:left;text-decoration:none;font:700 clamp(14px,1.3vw,18px)/1.25 var(--sans);transition:transform .22s ease,background .22s ease,box-shadow .22s ease}
.hero-tile:hover{transform:translateY(-3px);background:rgba(255,255,255,.92);box-shadow:0 18px 36px #17130d19}.hero-tile img{width:46px;height:46px;object-fit:contain;flex:0 0 auto}.hero-tile i{position:absolute;top:15px;right:17px;color:#8b5c30;font:normal 17px/1 var(--sans);opacity:0;transition:opacity .2s ease}.hero-tile:hover i{opacity:1}
.scroll-cue{position:absolute;bottom:29px;left:50%;width:26px;height:40px;transform:translateX(-50%)}.scroll-cue::before{position:absolute;inset:0;border:1px solid #fff9;border-radius:16px;content:""}.scroll-cue span{position:absolute;top:9px;left:12px;width:2px;height:7px;border-radius:2px;background:#fff;animation:scroll 1.6s infinite}
@keyframes scroll{0%{transform:translateY(0);opacity:0}25%{opacity:1}100%{transform:translateY(12px);opacity:0}}
.section-wrap{padding:clamp(76px,9vw,132px) max(24px,calc((100vw - 1160px)/2))}
.about{position:relative;overflow:hidden;background-color:#faf9f4;background-image:linear-gradient(90deg,rgba(250,249,244,.78),rgba(250,249,244,.86)),var(--texture);background-position:center,10% 20%;background-size:cover,800px auto}
.section-heading{margin:0 auto 48px;text-align:center}.section-heading h2{margin:0;font-size:clamp(38px,5.2vw,65px);line-height:.98;letter-spacing:-.04em}
.section-intro{max-width:560px;margin:20px auto 0;color:#5d5a53;font:400 15px/1.75 var(--sans)}
.about-grid{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:clamp(40px,7vw,88px)}
.about-photo{position:relative;margin:0}.about-photo>img{width:100%;aspect-ratio:1.2/1;object-fit:cover;border-radius:7px;box-shadow:0 22px 55px #25231e20}
.about-photo figcaption{position:absolute;right:-22px;bottom:-20px;display:flex;align-items:center;gap:12px;padding:16px 22px;border-radius:4px;background:#171716;color:#fff;font:500 11px/1.35 var(--sans);letter-spacing:.04em}
.about-photo figcaption strong{font:700 32px/1 var(--serif);color:#e5a663}.about-copy{max-width:570px}
.about-copy p{color:#32312e;font-size:16px;line-height:1.8}.about-copy strong{color:#111}
.text-link{display:inline-flex;align-items:center;gap:13px;margin-top:7px;padding-bottom:7px;border-bottom:1px solid #b76c36;color:#9f5a2a;font:700 12px/1.3 var(--sans);letter-spacing:.05em;text-decoration:none;text-transform:uppercase}.text-link span{font-size:17px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:90px;border-top:1px solid var(--line)}.stats div{padding:27px 16px 0 0;display:grid;gap:8px}.stats div+div{padding-left:clamp(18px,4vw,58px);border-left:1px solid var(--line)}
.stats strong{font:700 33px/1 var(--serif)}.stats span{color:var(--muted);font:500 10px/1.5 var(--sans);letter-spacing:.12em;text-transform:uppercase}
.directions{position:relative;overflow:hidden;background-color:#f0f0ee;background-image:linear-gradient(90deg,rgba(240,240,238,.8),rgba(245,244,240,.84)),var(--texture);background-size:cover,900px auto}
.directions.section-wrap{padding-right:clamp(24px,5vw,80px);padding-left:clamp(24px,5vw,80px)}
.section-heading--light{margin-bottom:68px}.section-heading--light .eyebrow{color:#a26737}.section-heading--light h2{text-transform:uppercase}.section-heading--light .section-intro{margin-top:17px}
.directions-grid{display:grid;grid-template-columns:1fr}
.direction-card{position:relative;min-width:0;min-height:min(48vh,520px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto auto;align-content:center;align-items:center;column-gap:clamp(28px,4vw,64px);padding:clamp(38px,4vw,60px) 0;border:0;border-bottom:1px solid rgba(28,27,24,.18);background:transparent}
.direction-card:last-child{border-bottom:0}
.direction-meta{display:flex;align-items:center;gap:11px;margin-bottom:17px;color:#807c72;font:700 9px/1.2 var(--sans);letter-spacing:.17em;text-transform:uppercase}.direction-meta span:first-child{display:inline-grid;place-items:center;width:25px;height:25px;border:1px solid #b8a994;border-radius:50%;color:#8d5b30;letter-spacing:0}
.direction-card h3{grid-column:1;min-height:0;margin:0 0 19px;padding-bottom:20px;border-bottom:1px solid #97958d;font-size:clamp(31px,3.5vw,48px);line-height:.99;letter-spacing:-.035em}
.direction-card ul{grid-column:1;min-height:0;display:grid;gap:11px;margin:0;padding:0;list-style:none;font:400 14px/1.5 var(--sans);color:#42413e}.direction-card li::before{margin-right:9px;color:#b17646;content:"—"}
.direction-card .direction-meta{grid-column:1;margin-bottom:20px}
.direction-card .image-pair{grid-column:2;grid-row:1/span 3;min-height:min(38vh,420px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-self:stretch;gap:clamp(14px,1.7vw,24px)}
.image-pair img{width:100%;height:100%;min-height:0;aspect-ratio:auto;border-radius:4px;object-fit:cover}
.direction-card:nth-child(even){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.direction-card:nth-child(even) .direction-meta,.direction-card:nth-child(even) h3,.direction-card:nth-child(even) ul{grid-column:2}
.direction-card:nth-child(even) .image-pair{grid-column:1}
.opportunities{background-color:#faf9f4;background-image:linear-gradient(90deg,rgba(250,249,244,.76),rgba(250,249,244,.84)),var(--texture);background-position:center;background-size:cover,800px auto}
.opportunities .section-heading{margin-bottom:49px}.opportunities-grid{display:grid;grid-template-columns:.96fr 1.04fr;align-items:stretch;gap:42px}
.package-photo{position:relative;min-height:100%;margin:0}.package-photo>img{width:100%;height:100%;min-height:400px;object-fit:cover;border-radius:5px}
.package-photo figcaption{position:absolute;right:16px;bottom:16px;left:16px;display:flex;justify-content:space-between;padding:14px 16px;background:rgba(18,18,17,.82);color:#fff;font:500 10px/1.2 var(--sans);letter-spacing:.15em;text-transform:uppercase}
.capability-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.capability{min-height:116px;display:flex;align-items:flex-start;gap:15px;padding:18px 16px;border:1px solid rgba(18,18,17,.09);background:rgba(241,241,239,.78)}
.capability img{width:27px;height:27px;flex:0 0 auto;object-fit:contain;opacity:.82}.capability h3{margin:2px 0 7px;font:700 12px/1.3 var(--sans)}.capability p{margin:0;color:#74716a;font:400 11px/1.55 var(--sans)}
.footer{padding:70px max(24px,calc((100vw - 1160px)/2)) 22px;background:#111;color:#fff}.footer-inner{max-width:1160px;margin:0 auto}
.footer-main{display:flex;justify-content:space-between;align-items:flex-end;gap:38px;padding-bottom:64px}.footer .eyebrow{color:#d19059}.footer h2{margin:0;font-size:clamp(36px,5vw,58px);line-height:.98;letter-spacing:-.04em}
.footer-contact{display:grid;justify-items:start;gap:10px;font:400 12px/1.4 var(--sans)}.footer-contact a{text-decoration:none}.footer-contact a:hover{color:#e6ab74}.footer-contact .phone{margin-bottom:3px;font:700 22px/1.2 var(--sans);letter-spacing:-.03em}.footer-contact p{margin:0;color:#a6a6a1}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:17px;border-top:1px solid #ffffff2a;color:#a4a49d;font:400 9px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase}
.footer-bottom>span{font-size:clamp(14px,1.2vw,18px);letter-spacing:.06em}
.footer-brand{width:118px;padding:7px 9px;border-radius:3px;background:#fff}.footer-brand img{width:100%}.back-top{color:#ddd;text-decoration:none}
@media(min-width:1400px){.hero{min-height:900px}.hero-content{transform:translateY(14px)}.hero-grid{gap:17px}.hero-tile{min-height:128px}}
@media(max-width:900px){.site-header{padding:23px 25px}.brand{width:148px}.desktop-nav{gap:18px}.desktop-nav a{font-size:10px}.section-wrap{padding-right:38px;padding-left:38px}.about-grid{gap:48px}.direction-card{min-height:min(46vh,440px);grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:30px;padding:38px 0}.direction-card:nth-child(even){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.direction-card .image-pair{min-height:min(38vh,340px);gap:14px}.direction-card h3{font-size:clamp(29px,4vw,38px)}.direction-card ul{font-size:12px}.opportunities-grid{gap:24px}.capability-list{grid-template-columns:1fr}.capability{min-height:85px}}
@media(max-width:680px){
.site-header{padding:19px 20px;gap:12px}.brand{width:137px}.desktop-nav{display:none}.language{margin-left:auto}.language summary{padding:10px 12px}
.menu-toggle{width:42px;height:42px;display:grid;align-content:center;justify-items:center;gap:6px;border:1px solid #17171540;border-radius:50%;background:#ffffff8c;cursor:pointer}.menu-toggle span{display:block;width:15px;height:1px;background:#171715;transition:transform .2s ease}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.mobile-nav{position:absolute;z-index:9;top:72px;right:18px;width:min(280px,calc(100vw - 36px));padding:10px;border:1px solid #201e1930;border-radius:14px;background:#fffdf8;box-shadow:0 20px 45px #1e1a1424}.mobile-nav.is-open{display:grid}.mobile-nav a{padding:15px 13px;border-radius:9px;font-size:11px}.mobile-nav a:hover{background:#eee9dd}
.hero{height:100svh;min-height:770px;padding:125px 18px 70px}.hero::before{background:linear-gradient(180deg,rgba(250,247,230,.62),rgba(249,246,232,.34) 37%,rgba(19,18,15,.12) 70%,rgba(19,18,15,.32))}.hero .eyebrow{font-size:9px}.hero h1{max-width:570px;font-size:clamp(38px,10.6vw,60px);line-height:.98}.hero h1 span{display:inline}.hero-note{max-width:340px;margin-top:14px;font-size:11px}.hero-grid{gap:9px;margin-top:45px}.hero-tile{min-height:114px;display:grid;justify-items:center;align-content:center;gap:9px;padding:15px 8px;border-radius:17px;text-align:center;font-size:clamp(11px,3.15vw,14px)}.hero-tile img{width:34px;height:34px}.hero-tile i{top:9px;right:10px;font-size:14px}.scroll-cue{bottom:20px;transform:translateX(-50%) scale(.85)}
.section-wrap{padding:72px 22px}.directions.section-wrap{padding-right:22px;padding-left:22px}.section-heading{margin-bottom:34px}.section-heading h2{font-size:clamp(34px,9vw,48px)}.section-heading .eyebrow{margin-bottom:10px}.section-intro{margin-top:14px;font-size:13px;line-height:1.65}.desktop-break{display:none}
.about-grid{grid-template-columns:1fr;gap:35px}.about-photo>img{aspect-ratio:1.12/1}.about-photo figcaption{right:10px;bottom:-16px;padding:12px 16px}.about-photo figcaption strong{font-size:27px}.about-copy p{font-size:14px;line-height:1.75}
.stats{margin-top:56px}.stats div{padding-top:20px}.stats div+div{padding-left:12px}.stats strong{font-size:25px}.stats span{font-size:8px;letter-spacing:.06em}
.section-heading--light{margin-bottom:38px}.directions-grid{grid-template-columns:1fr;gap:0}.direction-card,.direction-card:nth-child(even){min-height:0;grid-template-columns:1fr;grid-template-rows:auto;gap:0;padding:34px 0}.direction-card .direction-meta,.direction-card:nth-child(even) .direction-meta{grid-column:1;grid-row:auto;margin-bottom:16px}.direction-card h3,.direction-card:nth-child(even) h3{grid-column:1;grid-row:auto;margin-bottom:13px;padding-bottom:13px;font-size:clamp(27px,8vw,36px)}.direction-card ul,.direction-card:nth-child(even) ul{grid-column:1;grid-row:auto;margin-bottom:0;gap:7px;font-size:12px}.direction-card .image-pair,.direction-card:nth-child(even) .image-pair{grid-column:1;grid-row:auto;min-height:0;display:grid;margin-top:22px;gap:12px}.image-pair img{height:auto;aspect-ratio:1.08/1}
.opportunities .section-heading{margin-bottom:32px}.opportunities-grid{grid-template-columns:1fr;gap:16px}.package-photo>img{min-height:270px;max-height:390px}.capability-list{grid-template-columns:1fr;gap:8px}.capability{min-height:73px;gap:12px;padding:13px}.capability img{width:24px;height:24px}.capability h3{font-size:11px}.capability p{font-size:10px}
.footer{padding:56px 22px 18px}.footer-main{display:grid;gap:35px;padding-bottom:40px}.footer h2{font-size:40px}.footer-contact .phone{font-size:20px}.footer-bottom{flex-wrap:wrap;gap:13px;font-size:8px}.footer-brand{width:100px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Original-style fade-up reveals */
.has-motion .motion-reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity .85s cubic-bezier(.2,.72,.25,1), transform .85s cubic-bezier(.2,.72,.25,1);
  transition-delay: var(--motion-delay, 0ms);
  will-change: opacity, transform;
}
.has-motion .motion-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.direction-card .image-pair img {
  transition: transform .6s cubic-bezier(.2,.72,.25,1), opacity .45s ease;
}
@media (hover: hover) and (min-width: 681px) {
  .direction-card:hover .image-pair img { transform: scale(1.035); }
}
@media (max-width: 680px) {
  .image-pair.is-carousel {
    position: relative;
    display: block;
    aspect-ratio: 1.08 / 1;
    overflow: hidden;
  }
  .image-pair.is-carousel img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    opacity: 0;
    transform: translateX(14px) scale(.995);
    transition: opacity .45s ease, transform .55s cubic-bezier(.2,.72,.25,1);
  }
  .image-pair.is-carousel img.is-active {
    z-index: 1;
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}
@media (prefers-reduced-motion: reduce) {
  .has-motion .motion-reveal,
  .has-motion .motion-reveal.is-visible {
    opacity: 1;
    transform: none;
    transition: none;
    will-change: auto;
  }
  .direction-card .image-pair img { transition: none; }
}

/* Full-screen, locally stored cooking footage behind the hero content. */
.hero-video {
  position: absolute;
  z-index: -2;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  background: #211b16;
}
@media (max-width: 680px) {
  .hero-video { object-position: 54% center; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-video { animation: none; }
}
