/* The homepage palette is isolated from the administrative and menu pages. */
.th-people-assistant .th-people-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1000px){.th-people-assistant .th-people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.th-people-manager .th-person-photo{padding-top:clamp(32px,5vw,64px);background:var(--ivory)}
.th-people-manager .th-person-photo img{object-position:center top;transform-origin:center top}
.th-people{border-top:1px solid #dedfd2}.th-people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.th-person{margin:0;min-width:0}.th-person-photo{position:relative;overflow:hidden;background:#e9e5d9;border-radius:140px 140px 4px 4px}.th-person-photo img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;transition:transform 1.2s ease}.th-person:hover img{transform:scale(1.035)}.th-person figcaption{font-family:Georgia,'Times New Roman',serif;font-size:25px;margin-top:20px;overflow-wrap:anywhere}.th-staff-gallery{gap:20px;align-items:start}.th-staff-gallery .th-person-photo{border-radius:5px}.th-staff-gallery .th-person:nth-child(3n+2){padding-top:35px}.th-staff-gallery .th-person-photo img{aspect-ratio:4/3}.th-staff-gallery figcaption{font-family:inherit;font-size:13px;margin-top:12px;color:var(--muted)}.th-star-badge{position:absolute;bottom:20px;right:20px;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--ivory);color:var(--gold);font-size:28px;box-shadow:0 0 0 5px #f6f3eb40}.th-team-month{color:var(--gold);letter-spacing:.06em;margin:-12px 0 30px}.th-person.th-reveal-pending{opacity:0;transform:translateY(18px)}.th-person.th-reveal-active{opacity:1;transform:translateY(0);transition:opacity .9s ease,transform .9s ease}
@media(max-width:768px){.th-people-grid{gap:18px}.th-person-photo{border-radius:85px 85px 4px 4px}.th-person figcaption{font-size:20px}.th-staff-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.th-staff-gallery .th-person:nth-child(3n+2){padding-top:0}.th-star-badge{width:36px;height:36px;font-size:22px;bottom:12px;right:12px}}
@media(max-width:480px){.th-people-grid:not(.th-staff-gallery){grid-template-columns:1fr;gap:32px}.th-people-grid:not(.th-staff-gallery) .th-person{width:min(100%,320px);margin:auto}.th-staff-gallery{gap:12px}.th-staff-gallery figcaption{font-size:12px}}
@media(prefers-reduced-motion:reduce){.th-person.th-reveal-pending{opacity:1;transform:none}.th-person:hover img{transform:none}}
.home-page{--ivory:#f6f3eb;--olive:#263d32;--gold:#ad8c54;--ink:#283b32;--muted:#667068;background:var(--ivory);color:var(--ink)}
.home-page main{overflow:hidden}.home-page a{text-decoration:none}.home-page h1,.home-page h2,.home-page h3,.th-footer-brand,.th-hero-stamp strong{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em}.home-page p{line-height:1.85}.home-page :focus-visible{outline:3px solid var(--gold);outline-offset:5px}
.home-page .main-header{position:relative;background:var(--ivory);padding:20px 0;border-bottom:1px solid #ddd9cc}.home-page .main-header .container{max-width:1400px;padding:0 5%;gap:25px}.home-page .logo img{height:58px;max-width:150px;object-fit:contain}.home-page .nav-menu ul{gap:26px}.home-page .nav-menu a{color:var(--ink);font-size:13px}.home-page .nav-menu a:hover{color:#93723e}.home-page .btn-book{background:var(--olive);border-radius:2px;font-weight:500;font-size:12px;letter-spacing:.03em;padding:14px 21px}.home-page .header-action{flex-shrink:0}
.th-hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;min-height:740px;padding:36px 5% 54px;gap:6%;align-items:center}.th-hero-copy{padding:35px 0}.th-eyebrow{display:block;font-size:10px;letter-spacing:.22em;font-weight:600;color:var(--gold);margin-bottom:24px}.th-hero h1{font-size:clamp(46px,5.7vw,82px);line-height:1.06;max-width:650px;overflow-wrap:anywhere}.th-hero-copy>p{color:var(--muted);font-size:15px;max-width:405px;margin:28px 0 32px}.th-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.th-button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;background:var(--olive);padding:18px 24px;color:#fff;font-size:12px;transition:background .2s}.th-button:hover{background:#3e5948}.th-text-link{display:inline-flex;align-items:center;gap:25px;color:inherit;font-size:12px;border-bottom:1px solid #b6baad;padding:10px 0}.th-text-link:hover{color:var(--gold)}.th-hero-note{display:flex;align-items:center;gap:16px;color:var(--muted);font-size:11px;line-height:1.7;margin-top:52px}.th-note-line{width:42px;height:1px;background:var(--gold)}
.th-hero-media{position:relative;height:650px;min-width:0}.th-hero-media>video{width:100%;height:100%;object-fit:cover;border-radius:180px 180px 3px 3px;background:var(--olive)}.th-media-caption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:70px 22px 24px;background:linear-gradient(transparent,#102219b3);color:white}.th-media-caption>span{font-size:9px;letter-spacing:.15em}.th-media-caption button{border:1px solid #ffffff70;background:#21382e80;color:white;border-radius:2px;padding:10px 12px;font-size:10px;cursor:pointer}.th-hero-stamp{position:absolute;left:-48px;bottom:110px;width:108px;height:108px;border-radius:50%;background:var(--ivory);border:1px solid var(--gold);outline:7px solid var(--ivory);text-align:center;display:flex;flex-direction:column;justify-content:center;font-size:8px;letter-spacing:.13em;line-height:1.8}.th-hero-stamp strong{font-size:24px;letter-spacing:-.04em}
.th-ribbon{background:var(--olive);color:#ece8dc;padding:25px 5%;display:flex;justify-content:center;align-items:center;gap:40px;flex-wrap:wrap;font-size:10px;letter-spacing:.17em}.th-ribbon i{color:#c7aa71;font-style:normal}
.th-section{max-width:1320px;margin:auto;padding:100px 5%}.th-about{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.th-about-images{position:relative;padding-right:70px;padding-bottom:55px}.th-about-main{width:100%;height:460px;object-fit:cover;border-radius:3px 3px 100px 3px}.th-about-detail{position:absolute;width:45%;height:255px;object-fit:cover;bottom:0;right:0;border:9px solid var(--ivory)}.th-photo-label{position:absolute;bottom:18px;left:0;font-size:9px;letter-spacing:.15em;color:var(--muted)}.home-page h2{font-size:clamp(34px,4vw,53px);line-height:1.16}.th-about-copy p{margin:22px 0;color:var(--muted);font-size:14px}.th-section-heading{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:42px}.th-section-heading>p{max-width:300px;color:var(--muted);font-size:13px}.th-buffet{padding-top:40px}.th-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.th-category{color:var(--ink);min-width:0}.th-category-photo{position:relative;overflow:hidden}.th-category-photo img{width:100%;height:320px;object-fit:cover;display:block;transition:transform .6s}.th-category:hover img{transform:scale(1.04)}.th-category-photo>span{position:absolute;bottom:14px;left:15px;background:var(--ivory);width:34px;height:34px;display:grid;place-items:center;font-size:10px}.th-category h3{font-size:27px;margin:20px 0 9px;display:flex;justify-content:space-between;gap:10px;overflow-wrap:anywhere}.th-category h3 span{font-size:20px;color:var(--gold)}.th-category p{font-size:12px;color:var(--muted)}.th-menu-preview{margin-top:42px;border-top:1px solid #d7d9ca;border-bottom:1px solid #d7d9ca}.th-menu-preview>summary{cursor:pointer;padding:23px 0;font-size:13px;list-style:none;display:flex;justify-content:space-between}.th-menu-preview>summary::-webkit-details-marker{display:none}.th-menu-preview[open]>summary span{transform:rotate(45deg)}
.home-page .th-menu-preview .menu-section{padding:35px 0;background:transparent;color:var(--ink)}.home-page .th-menu-preview .menu-section .header h1{font-size:30px;color:var(--ink)}.home-page .th-menu-preview .menu-section .header h1 span,.home-page .th-menu-preview .menu-section .sub-title,.home-page .th-menu-preview .menu-category>h2{color:#806735}.home-page .th-menu-preview .menu-tabs{position:static;background:transparent;transform:none;max-width:100%;margin:25px auto;display:flex;justify-content:center}.home-page .th-menu-preview .menu-tabs a:hover{background:var(--olive);color:white}.home-page .th-menu-preview .container{width:100%;max-width:none;padding:0}.home-page .th-menu-preview .menu-item{background:#eceee5;border:1px solid #d9dccf;color:var(--ink)}.home-page .th-menu-preview .menu-item h3,.home-page .th-menu-preview .menu-item p{color:var(--ink)}.home-page .th-menu-preview .menu-item .price{color:#806735}
.th-film-section{padding:85px max(5%,calc((100vw - 1188px)/2));background:var(--olive);color:var(--ivory)}.th-film-section .th-eyebrow{color:#c8b080}.th-film-section .th-section-heading>p{color:#c5cec4}.th-films{display:grid;grid-template-columns:1fr 1fr;gap:34px}.th-film{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:24px;align-items:end}.th-film video{display:block;width:100%;aspect-ratio:9/16;object-fit:cover;background:#14261d;border-radius:2px}.th-film>div{padding-bottom:20px}.th-film .th-eyebrow{font-size:8px;line-height:1.8;margin-bottom:16px}.th-film h3{font-size:33px;line-height:1.15;margin-bottom:18px}.th-film p{font-size:12px;color:#c5cec4}
.th-reviews{text-align:center}.th-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:42px 0 20px;text-align:left}.th-review{padding:28px;background:#eeeee5;border:1px solid #dedfd2;margin:0}.th-quote{font-family:Georgia,serif;font-size:60px;color:var(--gold);line-height:1}.th-review blockquote{font-family:Georgia,serif;font-size:20px;line-height:1.6;overflow-wrap:anywhere}.th-review figcaption{display:flex;gap:12px;align-items:center;margin-top:26px}.th-review figcaption img{width:42px;height:42px;border-radius:50%;object-fit:cover}.th-review figcaption strong{font-size:11px}.th-review figcaption div>span{display:block;margin-top:4px;font-size:10px;color:var(--muted)}.th-review-empty{grid-column:1/-1;text-align:center;color:var(--muted)}
.home-page .th-reservation{background:#e9ecdf;padding:85px 5%;height:auto}.home-page .th-reservation .main-container{max-width:1188px;margin:auto;display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;align-items:center;padding:0;background:transparent;width:100%}.home-page .th-reservation .text-content{width:auto;padding:0;text-align:left;min-width:0}.th-reservation .text-content>p{font-size:14px;color:var(--muted);margin:25px 0;max-width:330px}.th-reservation-note{font-size:12px;line-height:1.8;border-top:1px solid #c6cdbe;padding-top:22px;max-width:330px}.home-page .th-reservation .form-container{width:100%;padding:32px;background:var(--ivory);border:1px solid #d6dacd;border-radius:2px;min-width:0}.home-page .th-reservation form{display:block}.home-page .th-reservation .field-group{margin-bottom:18px;flex:1;min-width:0}.home-page .th-reservation .field-group label{display:block;color:var(--ink);font-size:10px;letter-spacing:.03em;margin-bottom:8px}.home-page .th-reservation .field-row{display:flex;gap:16px}.home-page .th-reservation input,.home-page .th-reservation textarea{background:transparent;color:var(--ink);border:1px solid #c5cbbb;border-radius:2px;padding:12px;width:100%;font-size:12px;min-width:0;color-scheme:light}.home-page .th-reservation .submit-btn{background:var(--olive);color:white;border:0;border-radius:2px;cursor:pointer;padding:16px;width:100%;font-size:12px}.home-page .th-reservation .reservation-feedback{font-size:12px}
.th-footer{padding:45px 5% 22px;background:var(--olive);color:var(--ivory)}.th-footer>div{max-width:1188px;margin:auto;display:flex;justify-content:space-between;gap:25px;align-items:center}.th-footer-brand{color:var(--ivory);font-size:36px}.th-footer-brand span{display:block;letter-spacing:.16em;font-size:8px;font-family:'Segoe UI',sans-serif;margin-top:10px}.th-footer .th-footer-bottom{border-top:1px solid #ffffff24;margin-top:38px;padding-top:20px;font-size:10px;color:#bbc6bb}.th-footer-bottom a{color:inherit}
.home-page .th-reservation .text-content{color:var(--ink)}.home-page .th-reservation .form-container{box-shadow:0 12px 35px #263d3208}.home-page .th-reservation .submit-btn:hover{box-shadow:0 5px 15px #263d3220}.home-page .th-menu-preview .menu-tabs a{color:var(--ink);border-color:#c5cbbb}.home-page .th-menu-preview .menu-item{padding:18px}.home-page .th-menu-preview .menu-item .price{background:#e4ddc9}.home-page .th-menu-preview .item-head{border-color:#c5cbbb}
@media(min-width:1500px){.th-hero{min-height:820px}.th-hero-media{height:720px}}
@media(max-width:1000px){.home-page .nav-menu ul{gap:15px}.th-hero{gap:5%;min-height:620px}.th-hero-media{height:540px}.th-hero-stamp{left:-25px;width:90px;height:90px}.th-section{padding:75px 5%}.th-about{gap:6%}.th-about-images{padding-right:35px}.th-about-main{height:400px}.th-category-photo img{height:260px}.th-film{display:block}.th-film video{max-height:500px;object-fit:contain}.th-film>div{padding:25px 0 0}.home-page .th-reservation .main-container{gap:5%}.home-page .th-reservation .form-container{padding:24px}}
@media(max-width:768px){.home-page .main-header .container{gap:14px;justify-content:space-between}.home-page .logo img{height:42px}.home-page .main-header .nav-menu{order:3;width:100%;overflow:auto}.home-page .nav-menu ul{flex-wrap:nowrap;justify-content:center;gap:19px;white-space:nowrap}.home-page .nav-menu a{font-size:11px}.home-page .header-action .btn-book{padding:12px 15px;font-size:10px}.th-hero{padding-top:10px;grid-template-columns:1fr;gap:20px}.th-hero-copy{padding:35px 0 10px}.th-hero h1{font-size:clamp(46px,9vw,68px);max-width:600px}.th-hero-copy>p{max-width:480px}.th-hero-note{margin-top:26px}.th-hero-media{height:480px;width:min(100%,440px);margin:0 auto}.th-hero-media>video{border-radius:150px 150px 2px 2px}.th-hero-stamp{left:-12px}.th-ribbon{gap:18px;font-size:8px;padding:22px 5%}.th-ribbon i:last-of-type,.th-ribbon span:last-child{display:none}.th-about{grid-template-columns:1fr;gap:40px}.th-about-images{max-width:480px;width:100%;margin:auto}.th-about-main{height:410px}.th-section-heading{display:block}.th-section-heading>p{margin-top:24px;max-width:450px}.th-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 18px}.th-category h3{font-size:24px}.th-category-photo img{height:280px}.th-category-grid>.th-category:last-child:nth-child(odd){grid-column:1/-1}.th-category-grid>.th-category:last-child:nth-child(odd) img{height:350px}.th-film-section{padding:65px 5%}.th-review-grid{grid-template-columns:1fr}.home-page .th-reservation .main-container{grid-template-columns:1fr;gap:35px}.home-page .th-reservation{padding:65px 5%}.home-page .th-reservation .field-row{flex-wrap:wrap}.home-page .th-reservation .field-group{flex:1 1 130px}.th-footer>div{flex-wrap:wrap}}
@media(max-width:420px){.home-page .nav-menu ul{justify-content:flex-start;gap:17px}.th-category-grid{grid-template-columns:1fr}.th-category-grid>.th-category:last-child:nth-child(odd){grid-column:auto}.th-category-photo img{height:340px}.th-films{grid-template-columns:1fr;gap:35px}.th-film{display:grid;grid-template-columns:1fr .8fr;gap:18px;align-items:center}.th-film>div{padding:0}.th-film h3{font-size:28px}.th-film video{max-height:none}.th-media-caption{padding-inline:14px}.th-media-caption>span{font-size:8px}.home-page .th-reservation .form-container{padding:20px}.th-actions{gap:18px}.th-button{padding:16px 19px;font-size:11px}}
.home-page .th-review-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:24px;padding:4px 0 16px;scrollbar-width:thin;scrollbar-color:var(--gold) transparent;align-items:stretch}
.th-review-grid>.th-review{flex:0 0 calc((100% - 48px)/3);min-width:0;scroll-snap-align:start;display:flex;flex-direction:column}
.th-review-grid .th-review figcaption{margin-top:auto;padding-top:26px}
.th-review-grid>.th-review-empty{width:100%;flex-shrink:0}
.th-review-controls{display:flex;justify-content:center;align-items:center;gap:20px;margin:0 0 20px}
.th-review-controls[hidden]{display:none}
.th-review-controls button{width:42px;height:42px;border:1px solid #c5cbbb;border-radius:50%;background:transparent;color:var(--olive);font-size:20px;cursor:pointer}
.th-review-controls button:hover:not(:disabled){background:var(--olive);color:var(--ivory)}
.th-review-controls button:disabled{opacity:.35;cursor:default}
.th-review-controls>span{font-size:12px;color:var(--muted);min-width:90px}
@media(max-width:1000px){.th-review-grid>.th-review{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:600px){.th-review-grid>.th-review{flex-basis:90%}}
@media(prefers-reduced-motion:reduce){.home-page *, .home-page *::before,.home-page *::after{animation:none!important;transition:none!important}}
