/* v3 responsive and touch improvements; shared v1/v2/v4 styles are unchanged. */
html:has(.v3 dialog[open]){overflow:hidden}
.v3 dialog{overscroll-behavior:contain;max-height:90dvh}
.v3 dialog .dialog-top{position:sticky;top:-28px;background:#fff;z-index:3;padding:12px 0;margin-top:-12px}
.v3 dialog .close{width:48px;height:48px;min-height:48px}
.v3 .catalog-filters button{min-height:44px}
.v3 .dialog-search{display:block;font-size:13px;font-weight:700;margin:0 0 16px}
.v3 .dialog-search input{display:block;width:100%;font:inherit;font-size:16px;min-height:48px;border:1px solid #bac5af;border-radius:8px;padding:12px;margin-top:8px;background:#fafbf7;color:#172419}
.v3 .search-result{font-size:13px;color:#526144;margin:12px 0 18px}
.v3 [hidden]{display:none!important}
.v3 .social{min-width:44px;min-height:44px}
.v3 .tiktok{background:#171d28;font-size:23px;font-weight:bold}
.v3 .legal-footer nav a{display:inline-flex;align-items:center;min-height:44px}
.v3 .timeline-list{list-style:none;margin:0;padding:0;display:grid;gap:22px}
.v3 .timeline-list li{border-left:3px solid #d8bf61;padding:0 0 6px 24px}
.v3 .timeline-list .eyebrow{color:#4d5a2a;font-size:12px;margin:0 0 10px}
.v3 .timeline-list h3{font-size:23px;margin-bottom:12px}
.v3 .timeline-list p{max-width:850px;line-height:1.75}
.v3 .source-detail{line-height:1.75;max-width:950px}
.v3 .source-detail p+p{margin-top:18px}
.v3 .contact-fields :is(input,select,textarea){font-size:16px!important}
.v3 .campaign-dots button{width:44px;height:44px}
.v3 .corp-faq summary{min-height:48px;padding-block:14px}
.v3 #product-dialog>.close{position:sticky;top:0;float:right;z-index:4}
.v3 #product-dialog .product-detail{clear:both}
@media(max-width:1000px){
 html:has(body.v3){scroll-padding-top:88px}
 .v3 header{position:sticky;top:0;z-index:10;min-height:72px;padding:8px 5%;gap:12px;flex-wrap:wrap;box-shadow:0 1px 0 #17241914}
 .v3 header .brand img{width:48px;height:48px}
 .v3 header .brand span{font-size:19px}
 .v3 .header-cta{display:none}
 .v3 .nav-toggle{display:grid;place-items:center;width:48px;height:48px;margin-left:auto;line-height:1;border-radius:8px;background:#f4f1e9}
 .v3 header nav{display:none;width:100%;order:4;font-size:16px;flex-direction:column;align-items:stretch;gap:0;padding:8px 0;max-height:calc(100dvh - 95px);overflow:auto;overscroll-behavior:contain}
 .v3 header nav.open{display:flex}
 .v3 header nav>a,.v3 header nav>button,.v3 .corporate-menu summary{min-height:48px;padding:12px;text-align:left;border-radius:6px}
 .v3 header nav>a:hover,.v3 header nav>button:hover{background:#f4f1e9}
 .v3 .corporate-links{position:static;min-width:0;margin:0 0 6px 12px;box-shadow:none;padding:4px 8px}
 .v3 .corporate-links a{white-space:normal;min-height:44px;padding:12px}
 .v3 .mobile-franchise{display:block;background:#4d5a2a!important;color:#fff!important;text-align:center!important;font-weight:700;margin-top:8px}
 .v3 .corp-hero{grid-template-columns:1fr 1fr}
 .v3 .corp-hero h1{font-size:clamp(34px,5vw,48px)}
 .v3 .stats>div{min-width:0;gap:9px;padding-inline:8px}
 .v3 .stats strong{font-size:12px}
}
@media(max-width:760px){
 .v3 .hero{min-height:440px;background-image:linear-gradient(90deg,#071006df,#07100650),url('/lmd-v3-20261006/assets/store.webp');background-position:60% center}
 .v3 .hero-copy{padding:48px 6% 58px}
 .v3 .hero h1{font-size:clamp(32px,9.3vw,47px);line-height:1.02}
 .v3 .hero-copy>p:not(.eyebrow){font-size:17px;max-width:300px}
 .v3 .hero .actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
 .v3 .hero .btn{padding:12px 8px;font-size:14px;min-height:48px}
 .v3 .hero-note{font-size:10px;right:6%;bottom:15px}
 .v3 .stats{padding:15px 5%;gap:14px 0}
 .v3 .stats>div{justify-content:flex-start;padding:0 8px;gap:10px}
 .v3 .stats>div:nth-child(even){border-right:0}
 .v3 .stats>div:last-child{grid-column:1/-1;justify-content:center}
 .v3 .stats svg{width:26px;height:28px}
 .v3 dialog,.v3 #product-dialog{position:fixed;inset:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border-radius:0;padding:0 16px calc(24px + env(safe-area-inset-bottom));overflow:auto;text-align:left}
 .v3 dialog .dialog-top{top:0;margin:0 -16px 16px;padding:12px 16px;background:#fff;border-bottom:1px solid #e6eadf;gap:16px}
 .v3 dialog .dialog-top h2{font-size:24px}
 .v3 .catalog-filters{padding-bottom:8px;gap:8px;scrollbar-width:thin;scrollbar-color:#a9b796 transparent}
 .v3 .catalog-filters button{font-size:14px;padding:10px 16px;flex-shrink:0}
 .v3 .catalog-grid{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}
 .v3 .catalog-grid .product h3{font-size:15px;padding:13px 11px;min-height:62px;overflow-wrap:anywhere}
 .v3 .branch-results article{padding:20px}
 .v3 .branch-results .btn{min-height:48px;font-size:15px;flex:1}
 .v3 .branch-results p{line-height:1.7;overflow-wrap:anywhere}
 .v3 #product-dialog>.close{margin:10px 0 0;top:10px}
 .v3 .product-detail{padding:6px 0 22px;text-align:center}
 .v3 .product-detail>img{max-height:36dvh}
 .v3 .product-detail>p:not(.eyebrow){font-size:17px;line-height:1.75;margin-top:15px}
 .v3 .product-detail .btn{width:100%}
 .v3 .corp-hero{grid-template-columns:1fr;min-height:0}
 .v3 .corp-hero h1{font-size:clamp(34px,10vw,44px)}
 .v3 .corp-intro{padding:24px 6% 30px}
 .v3 .corp-hero figure{min-height:230px}
 .v3 .food-hero figure{min-height:260px}
 .v3 .corp-section{padding:32px 6%}
 .v3 .corp-steps{display:grid;grid-template-columns:1fr;gap:22px}
 .v3 .corp-steps li{border-top:1px solid #d9dfd0;padding-top:18px;min-width:0}
 .v3 .corp-steps h3{font-size:21px}
 .v3 .corp-cards p,.v3 .corp-steps p{font-size:16px;line-height:1.7}
 .v3 .contact-layout{gap:20px;padding:24px 5% 30px}
 .v3 .contact-information{padding:25px}
 .v3 .contact-form-card{padding:25px 18px}
 .v3 .contact-fields label,.v3 .franchise-consent{font-size:15px}
 .v3 .contact-form-actions .btn{width:100%}
 .v3 .contact-fields :is(input,select,textarea){min-height:50px}
 .v3 .contact-rating label>span{min-width:44px;min-height:44px;padding:10px}
 .v3 .franchise-investment label{min-height:48px;font-size:15px}
 .v3 .franchise-application .contact-form-card{order:-1}
 .v3 .campaign-arrow{width:44px;height:44px}
 .v3 .campaign-controls{gap:8px}
 .v3 .campaign-caption{text-align:center;line-height:1.5}
 .v3 footer{padding:18px 5% calc(18px + env(safe-area-inset-bottom))}
 .v3 .footer-top{gap:14px}
 .v3 .footer-top>.brand span{font-size:16px}
 .v3 .footer-top>.brand img{width:43px;height:43px}
 .v3 .footer-top .signature{font-size:17px}
 .v3 .legal-footer{gap:5px}
 .v3 .legal-footer nav{gap:0 16px;font-size:13px}
 .v3 .site-credit{font-size:11px}
 .v3 .brand-divider{padding-block:9px}
}
@media(prefers-reduced-motion:reduce){.v3 *{scroll-behavior:auto!important}.v3 .ticker-track{animation:none!important}}
.v3 .history-heading{margin:36px 0 28px}
