/* Shared visual adaptations: Tailark editorial blocks + restrained Motion Primitives behavior. */
.taste-refined .header{transition:box-shadow .2s}
.taste-refined .header.has-scrolled{box-shadow:0 3px 16px rgb(23 54 41 / 7%)}
.banner-navigation{display:flex;align-items:center;justify-content:space-between;padding-top:12px;gap:20px}
.banner-navigation>div{display:flex;gap:10px}.banner-position{font-size:14px;font-variant-numeric:tabular-nums;color:var(--muted)}
.carousel-arrow{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--cream);color:var(--green);font-size:22px;cursor:pointer;transition:background .2s,transform .2s}
.carousel-arrow:hover{background:var(--orange);color:var(--ink);transform:translateX(2px)}
.taste-refined .photo-zoom{position:relative;display:block;width:100%;padding:0;border:0;border-radius:inherit;background:transparent;text-align:left;cursor:zoom-in;overflow:hidden;color:var(--ink)}
.taste-refined .photo-zoom img{display:block;width:100%;transition:transform .35s}
.photo-zoom:hover img{transform:scale(1.025)}
.photo-zoom-hint{position:absolute;right:14px;bottom:14px;background:var(--cream);color:var(--ink);padding:7px 12px;font:600 12px/1.5 var(--body-font);border-radius:var(--radius-sm);opacity:0;transform:translateY(5px);transition:opacity .2s,transform .2s}
.photo-zoom:is(:hover,:focus-visible) .photo-zoom-hint{opacity:1;transform:none}
.photo-dialog{width:min(1100px,calc(100% - 32px));max-height:92dvh;padding:22px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--cream);color:var(--ink);overflow:auto}
.photo-dialog::backdrop{background:rgb(9 25 17 / 82%)}
.photo-dialog[open]{animation:photo-enter .22s ease-out}.photo-dialog figure{margin:30px 0 0}.photo-dialog img{display:block;width:100%;height:auto;max-height:73dvh;object-fit:contain;border-radius:var(--radius-sm)}.photo-dialog figcaption{font-size:14px;margin-top:16px}
.photo-close{position:absolute;top:8px;right:10px;width:44px;height:44px;font-size:28px;border:0;border-radius:50%;background:var(--cream);color:var(--ink);cursor:pointer}.photo-open{overflow:hidden}
@keyframes photo-enter{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.reveal-once{opacity:0;transform:translateY(16px);transition:opacity .45s ease-out,transform .45s ease-out}.reveal-once.is-visible{opacity:1;transform:none}
.taste-refined .taste-faq summary{padding-right:30px;cursor:pointer;list-style:none;position:relative;font-size:16px}.taste-faq summary::-webkit-details-marker{display:none}.taste-faq summary:after{content:'+';position:absolute;right:0;top:0;color:var(--green);font-size:22px}.taste-faq details[open] summary:after{content:'−'}.taste-faq details[open]>p{animation:photo-enter .2s ease-out}
.taste-refined .inquiry-heading{padding-bottom:28px;margin-bottom:28px;border-bottom:1px solid var(--line)}.taste-refined .inquiry-heading h2{font-size:1.8rem}.taste-refined .inquiry-heading p{font-size:16px;margin:14px 0 0;color:var(--muted)}
.taste-refined.inquiry-page .panel:has(form){padding:36px}.inquiry-page .form-grid{gap:24px}.inquiry-page input:focus,.inquiry-page textarea:focus,.inquiry-page select:focus{border-color:var(--green)}
.taste-refined .footer h3{font-size:16px;letter-spacing:0}.taste-refined .footer-grid a{line-height:1.7}.taste-refined .footer-utility{display:flex;flex-wrap:wrap;gap:16px 26px;padding-block:24px;border-top:1px solid var(--muted);margin-top:32px}
@media(hover:none){.photo-zoom-hint{opacity:1;transform:none}}
@media(max-width:760px){.taste-refined.inquiry-page .panel:has(form){padding:24px}.photo-dialog{padding:14px}.photo-dialog img{max-height:65dvh}.banner-navigation{padding-top:10px}.taste-home .banner-controls a{font-size:14px}.taste-refined .nav .brand small{display:none}.taste-refined .nav>.btn{font-size:14px}.taste-refined .topbar{font-size:12px}}
@media(prefers-reduced-motion:reduce){.reveal-once{opacity:1;transform:none;transition:none}.photo-dialog[open],.taste-faq details[open]>p{animation:none}.photo-zoom img,.photo-zoom-hint,.carousel-arrow{transition:none}.photo-zoom:hover img,.carousel-arrow:hover{transform:none}}
@media print{.reveal-once{opacity:1;transform:none}.photo-zoom-hint,.carousel-arrow{display:none}}
/* Autoplay photography: gentle Ken Burns zoom with a staggered copy entrance. */
.banner-slide{overflow:hidden}
.banner-active>img{animation:banner-photo-drift 7s linear both;transform-origin:70% 50%}
.banner-active .banner-copy>*{animation:banner-copy-enter .65s ease-out both}
.banner-active .banner-copy>p{animation-delay:.12s}.banner-active .banner-copy>.actions,.banner-active .banner-copy>a{animation-delay:.22s}
.site-banner-home:not(.banner-running) .banner-active>img{animation-play-state:paused}
.banner-play{min-width:76px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--cream);color:var(--green);font:600 14px var(--body-font);cursor:pointer}
.banner-play:hover{border-color:var(--green)}
@keyframes banner-photo-drift{from{transform:scale(1)}to{transform:scale(1.045)}}
@keyframes banner-copy-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.banner-active>img,.banner-active .banner-copy>*{animation:none}}
