/* TAM photo-led top. Original selected hero styles remain in photo-v2.css. */
.tam-top{--ink:#493823;--leaf:#455239;--light:#f6edda;--gold:#e5bf7a;color:var(--ink);background:#805333 url('./assets/texture.jpg') center/700px;font-size:14px;line-height:2}
.tam-top h2,.tam-top h3{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:500}.tam-top h2{font-size:clamp(27px,2.65vw,40px);line-height:1.8;letter-spacing:.07em}.tam-top p{text-wrap:pretty}.tam-top section{scroll-margin-top:20px}.tam-top a:focus-visible{outline:3px solid #a96020;outline-offset:6px}.tam-top .photo-hero a:focus-visible{outline-color:#fff}.tam-top .photo-brand{color:#fff9ec}.skip-link{position:fixed;top:-100px;left:20px;background:#fff;color:#282115;padding:10px 20px;z-index:10}.skip-link:focus{top:10px}.photo-crop{display:block;width:100%;height:100%;min-width:0}.photo-crop image{image-rendering:auto}.tam-top .roughbar{font-size:10px;background:var(--light)}
.page-nav{display:flex;gap:40px;align-items:center;justify-content:space-between;padding:25px 6vw;color:#fff8e8;background:rgba(58,32,13,.5)}.page-nav>span{font-family:'Yu Mincho',serif;font-size:17px;letter-spacing:.1em;white-space:nowrap}.page-nav nav{gap:32px;font-size:12px}.page-nav a{display:inline-block;padding:7px 0}
.text-link{display:inline-flex;gap:30px;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid currentColor;font-size:13px;min-height:44px}.text-link:hover{text-decoration:none;opacity:.8}.text-link span,.solid-link span{transition:transform .25s ease-out}.text-link:hover span,.solid-link:hover span{transform:translate(3px,-2px)}
.story-section{padding:100px 7vw 130px;background:linear-gradient(90deg,#f6eddaef,#f6eddad9),url('./assets/palms.jpg') center/cover}.story-layout{max-width:1280px;margin:auto;display:grid;grid-template-columns:.83fr 1.17fr;align-items:start;column-gap:7%;position:relative}.story-copy{padding:0 0 70px}.story-mark{width:40px;height:66px;filter:brightness(0);opacity:.65;margin-bottom:22px}.story-copy h2{margin-bottom:25px}.story-copy p{font-size:14px;line-height:2.25;margin-top:18px}.story-copy .text-link{margin-top:23px}.story-main{height:560px;margin-top:25px}.story-main svg{height:100%;object-fit:cover}.story-main figcaption{font-size:11px;letter-spacing:.08em;margin-top:9px}.story-detail{grid-column:2;width:50%;height:220px;margin:-70px 0 0 -14%;position:relative;border:8px solid var(--light)}.story-detail img{width:100%;height:100%;object-fit:cover}.story-detail figcaption{position:absolute;bottom:9px;left:10px;right:10px;background:#f6eddaeb;padding:4px 9px;font-size:10px}
.food-section{padding:100px 6vw 110px;background:var(--light)}.section-intro{max-width:1280px;margin:0 auto 45px;display:flex;align-items:center;justify-content:space-between;gap:50px}.section-intro p{font-size:14px;line-height:2.15}.section-intro p+p{margin-top:14px}.food-main{max-width:1280px;margin:auto;position:relative}.food-main img{width:100%;height:560px;object-fit:cover;object-position:center 50%}.food-main>figcaption{position:absolute;bottom:24px;left:28px;padding:9px 17px;color:var(--ink);background:#f6eddaf2;font-family:'Yu Mincho',serif;font-size:16px}.food-details{max-width:1280px;margin:28px auto 0;display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:start}.food-details>figure:nth-child(2){margin-top:65px}.food-details svg{height:320px}.food-details figcaption{padding:16px 0}.food-details figcaption span{display:block;font:500 21px/1.7 'Yu Mincho',serif}.food-details figcaption small{display:block;font-size:12px;margin-top:5px}
.drink-section{display:grid;grid-template-columns:1.1fr .9fr;min-height:620px;color:#fff8e8;background:#694123 url('./assets/texture.jpg') center/700px}.cocktail-photo{min-width:0}.cocktail-photo svg{height:100%;min-height:620px}.drink-copy{padding:75px 5vw;background:#3d270b66;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.drink-copy p{font-size:14px;line-height:2.2;margin-top:22px}.drink-copy .text-link{margin-top:24px}.bottle-panorama{height:340px;position:relative}.bottle-panorama img{width:100%;height:100%;object-fit:cover;object-position:center 52%}.bottle-panorama figcaption{position:absolute;bottom:25px;right:6vw;color:#fff;font:500 20px/1.7 'Yu Mincho',serif;text-shadow:0 2px 6px #000}
.party-section{padding:105px 6vw 90px;background:var(--light)}.party-section .section-intro h2{white-space:nowrap}.party-photo{max-width:1280px;margin:auto}.party-photo img{width:100%;height:430px;object-fit:cover}.party-bottom{max-width:1280px;margin:32px auto 0;display:flex;align-items:center;justify-content:space-between;gap:40px}.party-bottom h3{font-size:23px}.party-bottom p{font-size:13px;margin-top:10px}.solid-link{display:inline-flex;gap:35px;align-items:center;justify-content:space-between;background:var(--leaf);color:#fff;padding:17px 24px;min-height:54px;font-size:13px;white-space:nowrap}.solid-link:hover{background:#35432d;text-decoration:none}
.access-section{display:grid;grid-template-columns:1fr 1fr;background:#e9dfc6}.exterior-photo{min-height:650px}.exterior-photo svg{height:100%}.access-copy{padding:65px 6vw;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.shop-name{font:23px/1.4 Georgia,serif;letter-spacing:.09em;margin:25px 0 17px!important}.shop-name small{display:block;font:11px/2 'Yu Gothic',sans-serif;letter-spacing:.08em;margin-top:5px}.access-copy dl{width:100%;margin:0 0 20px}.access-copy dl>div{display:grid;grid-template-columns:80px 1fr;padding:10px 0;border-bottom:1px solid #b9a98a80;font-size:12px}.access-copy dt{font-size:11px}.access-copy dd{margin:0}.access-copy dd small{font-size:11px}.access-copy dd a{font-size:17px;letter-spacing:.05em}
.recruit-section{display:grid;grid-template-columns:.9fr 1.1fr;color:#fff8e8;background:#674322 url('./assets/texture.jpg') center/700px}.recruit-picture{min-height:410px}.recruit-picture img{width:100%;height:100%;max-height:510px;object-fit:cover;object-position:center 70%}.recruit-copy{padding:65px 6vw;background:#3d270b66;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.recruit-copy h2{font-size:clamp(25px,2.2vw,33px)}.recruit-copy p{margin-top:20px;font-size:13px}.recruit-copy .text-link{margin-top:22px}
.reservation-section{text-align:center;color:#fff8e8;padding:85px 20px 90px;background:linear-gradient(#203b28dc,#203b28e8),url('./assets/palms.jpg') center 54%/cover}.reservation-section>img{width:43px;height:70px;object-fit:contain;margin:0 auto 24px}.reservation-section h2{font-size:clamp(27px,2.6vw,37px)}.reservation-section p{font-size:13px;margin-top:20px}.reservation-section .solid-link{background:var(--gold);color:#392c16;min-width:290px;margin-top:28px;font-weight:600}.reservation-section .solid-link:hover{background:#f1cf96}.phone-link{display:block;width:fit-content;margin:17px auto 0;font-size:12px;padding:8px}
.top-footer{padding:55px 6vw 22px;display:block;color:#fff8e8;background:#382717}.footer-brand{font:23px/1.2 Georgia,serif;letter-spacing:.12em}.footer-brand small{display:block;font:8px/2 Arial,sans-serif;letter-spacing:.16em;margin-top:8px}.top-footer nav{gap:28px;flex-wrap:wrap;margin-top:30px;font-size:11px}.top-footer nav a{padding:8px 0}.footer-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:33px;padding-top:20px;border-top:1px solid #fff4d833;font-size:10px}.footer-bottom a{padding:8px 0}
@media(min-width:1700px){.drink-copy,.access-copy,.recruit-copy{padding-right:max(6vw,calc((100vw - 1500px)/2))}}
@media(max-width:1000px){.page-nav{gap:20px;padding:20px 4vw}.page-nav>span{display:none}.page-nav nav{width:100%;justify-content:space-between;gap:20px}.story-section{padding:75px 6vw 100px}.story-layout{column-gap:5%}.story-main{height:500px}.story-detail{width:65%;margin-left:-10%}.story-copy h2{font-size:28px}.food-main img{height:450px}.food-details svg{height:270px}.drink-copy{padding:50px 5vw}.party-section .section-intro{align-items:flex-start;flex-direction:column;gap:20px}.party-bottom{align-items:flex-start}.access-copy{padding:45px 5vw}.access-copy dl>div{grid-template-columns:65px 1fr}.recruit-copy{padding:45px 5vw}}
@media(max-width:650px){.tam-top .roughbar{font-size:9px;min-height:40px}.tam-top .roughbar span{max-width:220px;text-align:right}.tam-top h2{font-size:28px;line-height:1.7;letter-spacing:.04em}.page-nav{padding:13px 19px;overflow-x:auto}.page-nav nav{justify-content:flex-start;gap:25px;font-size:11px}.page-nav nav a{min-height:44px;display:flex;align-items:center}.story-section{padding:55px 22px 60px}.story-layout{display:block}.story-copy{padding:0 2px 30px}.story-mark{width:33px;height:54px;margin-bottom:20px}.story-copy p{font-size:13px;line-height:2.2}.story-copy .text-link{margin-top:17px}.desktop-break{display:none}.story-main{height:340px;margin-top:8px}.story-detail{width:56%;height:170px;margin:-35px 0 0 auto;transform:translateX(5px)}.story-main figcaption{font-size:10px}.story-detail figcaption{font-size:9px;padding:3px 6px;left:3px;right:3px}.food-section{padding:58px 20px 55px}.section-intro{display:block;margin-bottom:28px}.section-intro p{font-size:13px;margin-top:20px}.section-intro p+p{margin-top:10px}.food-main img{height:310px;object-position:52% center}.food-main>figcaption{font-size:12px;left:13px;bottom:15px;padding:6px 10px}.food-details{grid-template-columns:1fr;gap:5px;margin-top:22px}.food-details>figure:nth-child(2){margin:0 0 0 12%;width:88%}.food-details>figure:first-child{width:88%}.food-details svg{height:240px}.food-details figcaption{padding:12px 0 23px}.food-details figcaption span{font-size:18px}.food-details figcaption small{font-size:11px;margin-top:4px}.drink-section{display:block;min-height:0}.cocktail-photo{height:370px}.cocktail-photo svg{height:100%;min-height:0}.drink-copy{padding:45px 26px 50px}.drink-copy h2{font-size:29px}.drink-copy p{font-size:13px;margin-top:18px}.drink-copy .text-link{margin-top:20px}.bottle-panorama{height:240px}.bottle-panorama figcaption{font-size:16px;right:25px;bottom:22px}.party-section{padding:55px 20px}.party-section .section-intro{display:block}.party-section .section-intro h2{white-space:normal}.party-photo img{height:240px;object-position:58% center}.party-bottom{display:block;margin-top:24px}.party-bottom h3{font-size:22px}.party-bottom p{font-size:12px}.party-bottom .solid-link{margin-top:24px;width:100%;font-size:12px}.access-section{display:block}.exterior-photo{height:365px;min-height:0}.exterior-photo svg{height:100%}.access-copy{padding:42px 25px 50px}.access-copy h2{font-size:29px}.access-copy dl>div{grid-template-columns:75px 1fr}.shop-name{font-size:24px}.recruit-section{display:block}.recruit-picture{height:260px;min-height:0}.recruit-picture img{height:100%}.recruit-copy{padding:40px 25px 45px}.recruit-copy h2{font-size:26px}.recruit-copy p{font-size:12px}.reservation-section{padding:60px 22px}.reservation-section h2{font-size:27px}.reservation-section .solid-link{width:100%;min-width:0}.reservation-section p{font-size:12px}.top-footer{padding:40px 25px 20px}.top-footer nav{gap:12px 24px;margin-top:24px}.footer-bottom{margin-top:25px}}
@media(max-width:360px){.tam-top .photo-header{padding:18px 14px}.tam-top .photo-brand>span{font-size:13px}.tam-top .photo-header nav .photo-booking{font-size:9px;padding:9px 7px}.tam-top .photo-copy{left:20px;right:20px}.story-detail{width:65%}.tam-top .roughbar{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.text-link span,.solid-link span{transition:none}}

/* The confirmation notice must remain visible on narrow screens. */
.tam-top .roughbar span{display:block;line-height:1.4}@media(max-width:650px){.tam-top .roughbar span{font-size:8px;max-width:215px}.tam-top .roughbar>a{flex-shrink:0}}

@media(max-width:360px){.tam-top .photo-header{gap:8px}.tam-top .photo-brand{gap:6px}.tam-top .photo-brand>img{width:20px;height:33px}.tam-top .photo-brand>span{font-size:11px;white-space:nowrap}.tam-top .photo-brand small{font-size:5.5px;letter-spacing:0}.tam-top .photo-header nav .photo-booking{font-size:8px;padding:9px 6px}}

/* Photo-only Instagram layout. Data shown here is an explicitly marked preview snapshot. */
.instagram-section{padding:72px 6vw 55px;color:#fff8e8;background:linear-gradient(#40270b88,#40270b88),url('./assets/texture.jpg') center/700px}.instagram-inner{max-width:1150px;margin:auto}.instagram-heading-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:30px}.instagram-heading-row h2{font-size:clamp(27px,2.8vw,38px);margin:0}.instagram-heading-row p{font-size:13px;line-height:1.9;margin:14px 0 0}.instagram-account{display:inline-flex;align-items:center;gap:22px;min-height:44px;flex-shrink:0;font:16px/1.5 Georgia,serif;letter-spacing:.02em;border-bottom:1px solid #fff8e888}.instagram-photo-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.instagram-photo-grid li{min-width:0}.instagram-photo{display:block;overflow:hidden;aspect-ratio:4/5;background:#52351d}.instagram-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .25s ease}.instagram-photo:hover img{transform:scale(1.035)}.instagram-section a:focus-visible{outline:2px solid #ffe3a9;outline-offset:5px}.instagram-bottom{display:flex;justify-content:flex-end;margin-top:24px}.instagram-bottom>a{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;min-height:44px;font-size:12px;border-bottom:1px solid #fff8e888}
@media(max-width:1100px){.instagram-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.instagram-photo{aspect-ratio:1/1}}
@media(max-width:650px){.instagram-section{padding:45px 22px 35px}.instagram-heading-row{display:block;margin-bottom:24px}.instagram-heading-row h2{font-size:28px}.instagram-heading-row p{font-size:12px;margin-top:12px}.instagram-account{margin-top:14px;font-size:15px;gap:22px}.instagram-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.instagram-bottom{justify-content:center;margin-top:20px}}
@media(max-width:360px){.instagram-section{padding-left:15px;padding-right:15px}.instagram-heading-row h2{font-size:26px}.instagram-heading-row p{font-size:11px}}
@media(prefers-reduced-motion:reduce){.instagram-photo img{transition:none}.instagram-photo:hover img{transform:none}}

.instagram-feed-status{font-size:12px;line-height:1.8;margin:0 0 20px;color:#fff1d5}.instagram-feed-status[hidden]{display:none}

/* The original Google panorama is shown without cropping or overlays. */
.streetview-section{padding:70px 6vw 55px;background:var(--light)}.streetview-inner{max-width:1130px;margin:auto}.streetview-heading{margin-bottom:30px}.streetview-heading h2{margin:0}.streetview-heading p{margin:15px 0 0;font-size:13px;line-height:1.9}.streetview-frame{display:block;width:100%;height:auto;aspect-ratio:113/50;border:0;background:#e9dfc6}.streetview-link{margin-top:20px;font-size:12px;min-height:44px}.streetview-link:focus-visible{outline:2px solid var(--leaf);outline-offset:5px}@media(max-width:650px){.streetview-section{padding:45px 22px 35px}.streetview-heading{margin-bottom:24px}.streetview-heading h2{font-size:27px}.streetview-heading p{font-size:12px}.streetview-frame{height:360px;aspect-ratio:auto}.streetview-link{font-size:11px;gap:20px}}@media(max-width:360px){.streetview-section{padding-left:15px;padding-right:15px}.streetview-heading h2{font-size:24px}}

/* Brighten the baked-in dark party photo without changing its saved source. */
.party-photo img{filter:brightness(1.65) contrast(.98)}

/* Use the full-resolution counter photograph instead of a collage crop. */
.story-main>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}

/* Keep the interior sequence free of visible playback and navigation controls. */
.tam-top .interior-carousel .interior-toggle,.tam-top .interior-carousel .interior-nav{display:none}

/* Full room photographs, at their original aspect ratio. */
.story-main.interior-carousel{height:auto;min-width:0;position:relative}.interior-stage{position:relative;width:100%;aspect-ratio:3/2;background:#dfd0b4}.interior-slide{position:absolute;inset:0}.interior-slide[hidden]{display:none}.interior-slide:not([hidden]){animation:interior-reveal .65s ease}.interior-slide img{display:block;width:100%;height:100%;object-fit:contain}.interior-toggle{position:absolute;z-index:2;right:12px;top:12px;width:44px;height:44px;border:1px solid #81684580;background:#f6eddaed;color:var(--ink);font-size:17px;cursor:pointer}.interior-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 0;line-height:1.8}.interior-bottom>[data-interior-caption]{flex:1}.interior-nav{display:flex;align-items:center;gap:5px;flex-shrink:0}.interior-nav button{width:44px;height:44px;background:transparent;color:var(--ink);border:1px solid #917b58;font-size:20px;cursor:pointer}.interior-count{min-width:42px;text-align:center;font:12px/1.5 Georgia,serif}.interior-toggle[hidden],.interior-nav[hidden],.interior-notice[hidden]{display:none}.interior-notice{font-size:12px;line-height:1.8;margin:8px 0}.interior-carousel button:focus-visible{outline:3px solid var(--leaf);outline-offset:3px}@keyframes interior-reveal{from{opacity:.35}to{opacity:1}}@media(max-width:650px){.interior-bottom{flex-wrap:wrap;gap:8px}.interior-bottom>[data-interior-caption]{flex-basis:100%;font-size:11px}.interior-nav{margin-left:auto}.interior-toggle{right:8px;top:8px}.story-main.interior-carousel{margin-top:8px}}@media(prefers-reduced-motion:reduce){.interior-slide:not([hidden]){animation:none}}

/* Instagram native player; the initial grid remains photo-only. */
button.instagram-photo{width:100%;padding:0;border:0;border-radius:0;font:inherit;cursor:pointer;color:inherit}
.instagram-player-open{overflow:hidden}
.instagram-player{box-sizing:border-box;width:min(520px,calc(100% - 28px));max-width:none;max-height:calc(100dvh - 28px);padding:16px 20px 18px;border:1px solid #b7a27b;border-radius:2px;background:#f7efdb;color:#342719;overflow:auto;overscroll-behavior:contain}
.instagram-player::backdrop{background:#140e09df}
.instagram-player-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}
.instagram-player h3{font-size:19px;letter-spacing:.08em;margin:0}
.instagram-player-close{min-width:76px;min-height:44px;padding:8px;border:1px solid #786449;background:transparent;color:#342719;font:13px/1.4 sans-serif;cursor:pointer}
.instagram-player video{display:block;width:100%;max-height:calc(100dvh - 190px);background:#18120d;object-fit:contain}
.instagram-player-original{display:block;width:fit-content;min-height:44px;box-sizing:border-box;padding:16px 0 4px;border-bottom:1px solid #786449;font:12px/1.5 sans-serif;color:#342719}
.instagram-player-error{font:13px/1.8 sans-serif;color:#75351d;margin:12px 0 0}.instagram-player-error[hidden]{display:none}
.instagram-player :is(button,a):focus-visible{outline:2px solid #68442b;outline-offset:3px}
.line-section{padding:42px 6vw;background:#f5eedb;color:#432f1b;border-bottom:1px solid #b2a08055}
.line-banner{display:grid;grid-template-columns:86px 1fr 177px;align-items:center;gap:32px;max-width:1150px;margin:auto;padding:30px 36px;border-top:1px solid #aa9469;border-bottom:1px solid #aa9469;background:linear-gradient(90deg,#f5eedbd9,#f5eedb 42%),url('./assets/palms.jpg') left center/auto 260px no-repeat}
.line-tam-logo{width:64px;height:auto;justify-self:center;filter:brightness(.3) sepia(1)}.line-eyebrow{font:10px/1.5 Georgia,serif;letter-spacing:.18em;margin:0 0 10px}
.line-copy h2{font-size:clamp(22px,2.3vw,30px);line-height:1.5;letter-spacing:.06em;margin:0 0 12px}.line-copy>p:last-child{font-size:12px;line-height:1.8;margin:0}
.line-add-friend{display:block;width:177px;min-height:53px}.line-add-friend img{display:block;width:177px;height:53px}.line-add-friend:focus-visible{outline:2px solid #43331d;outline-offset:6px}
@media(max-width:650px){.instagram-player{padding:12px 14px 16px}.instagram-player h3{font-size:17px}.line-section{padding:30px 22px}.line-banner{grid-template-columns:52px 1fr;gap:12px 18px;padding:24px 4px}.line-tam-logo{width:44px}.line-copy h2{font-size:21px;letter-spacing:.02em}.line-eyebrow{font-size:9px}.line-copy>p:last-child{font-size:11px}.line-add-friend{grid-column:1/-1;justify-self:center;margin-top:8px}}
