:root{
  --av-desktop-shell:min(80vw,var(--max));
  --av-desktop-margin:calc((100vw - var(--av-desktop-shell)) / 2);
  --av-rail-pad:max(var(--shell-x),calc((100vw - var(--max)) / 2 + var(--shell-x)));
  --av-three-card-width:100%;
  --navy:#001A39;
  --gold:#B58A49;
  --paper:#FFFDF9;
  --bg-top:#FAF7F2;
  --bg-bottom:#F3EEE6;
  --text:#18212D;
  --muted:#66707B;
  --line:rgba(24,33,45,.10);
  --line-strong:rgba(24,33,45,.18);
  --white-line:rgba(255,255,255,.14);
  --blue-card:#294566;
  --blue-card-inner:#19314D;
  --blue-card-soft:#0D2543;
  --radius:4px;
  --max:1240px;
  --shell-x:24px;
  --shell-x-mobile:16px;
  --section-y:68px;
  --section-y-mobile:40px;
  --panel-pad:24px;
  --font-body:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  --font-display:Georgia,"Times New Roman",serif;
  --header-desktop:78px;
  --header-mobile:72px;
  --type-body-size:15px;
  --type-body-line:1.76;
  --focus-ring:rgba(181,138,73,.55);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);color:var(--text);background:linear-gradient(180deg,var(--bg-top) 0%,var(--bg-bottom) 100%);line-height:1.55}body.menu-open{overflow:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(100%,var(--max));margin:0 auto;padding:0 var(--shell-x)}
.ticker .container{width:100%;max-width:none;padding-left:0;padding-right:0}.skip-link{position:absolute;left:var(--shell-x);top:0;transform:translateY(-140%);padding:10px 14px;border-radius:var(--radius);background:var(--navy);color:#fff;z-index:2000}.skip-link:focus{transform:translateY(12px)}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.sr-only{position:absolute!important;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-section{padding-top:var(--section-y)}.flow-block{margin-top:24px}.kicker{display:block;margin:0 0 12px;font-size:12px;line-height:1.1;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--gold)}.section-copy{display:grid;align-content:start}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px}.section-title,.component-title,.card-title,.hero-title,.site-footer__brand{margin:0;font-family:var(--font-display);font-weight:400;letter-spacing:-.042em;color:var(--navy)}.section-title{font-size:clamp(30px,2.2vw,34px);line-height:1.08}.component-title{font-size:clamp(31px,3vw,40px);line-height:1.05}.section-intro{margin:12px 0 0;max-width:66ch;font-size:15px;line-height:1.76;color:var(--muted)}.button,.action-link{display:inline-flex;align-items:center;justify-content:center}.button{min-height:44px;padding:0 16px;border-radius:var(--radius);border:1px solid var(--line-strong);font-size:14px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.action-link{gap:6px;font-size:14px;line-height:1.35;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-decoration:underline;text-underline-offset:4px;color:var(--navy)}.button--light{background:#fff;border-color:#fff;color:var(--navy)}
.ticker{background:var(--navy);color:#fff;overflow:hidden}.ticker-inner{min-height:52px;display:flex;align-items:center;overflow:hidden}.ticker-track{display:flex;gap:28px;width:max-content;white-space:nowrap;animation:ticker 20s linear infinite}.ticker-group{display:flex;align-items:center;gap:28px;flex:0 0 auto}.ticker-item{display:inline-flex;align-items:center;gap:8px;font-size:13px;line-height:1}.ticker-item:before{content:"✓";opacity:.72}@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-33.333%)}}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,253,249,.96);color:var(--navy);backdrop-filter:blur(12px);transition:background .2s ease,color .2s ease}.site-header.is-scrolled,.site-header.is-menu-open{background:rgba(0,26,57,.97);color:#fff}.site-header__inner{min-height:var(--header-desktop);display:grid;grid-template-columns:auto auto 1fr auto;gap:18px;align-items:center}.site-logo img,.custom-logo{max-height:54px;width:auto}.site-brand{font-family:var(--font-display);font-size:34px;line-height:1;letter-spacing:-.04em;color:currentColor}.desktop-nav{display:flex;justify-content:center;align-items:center;gap:26px;font-size:14px;font-weight:500}.desktop-nav ul{display:flex;align-items:center;justify-content:center;gap:26px;margin:0;padding:0;list-style:none}.desktop-nav li{position:relative}.desktop-nav a{color:currentColor}.desktop-nav .sub-menu{display:none;position:absolute;left:0;top:100%;min-width:190px;background:var(--paper);color:var(--navy);border:1px solid var(--line);box-shadow:0 14px 30px rgba(0,26,57,.13);padding:10px;z-index:1010}.desktop-nav li:hover>.sub-menu,.desktop-nav li:focus-within>.sub-menu{display:grid;gap:4px}.desktop-nav .sub-menu a{display:block;padding:9px 10px}.header-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px}.header-outline{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--radius);background:transparent;color:currentColor}.header-outline--icon{width:44px}.site-header.is-scrolled .header-outline,.site-header.is-menu-open .header-outline{border-color:rgba(255,255,255,.18)}.site-divider{height:.5px;background:rgba(0,26,57,.5)}.site-header.is-scrolled .site-divider,.site-header.is-menu-open .site-divider{background:rgba(255,255,255,.5)}.mobile-toggle{display:none;width:32px;height:32px;border:0;background:transparent;color:currentColor;cursor:pointer;padding:0}.mobile-toggle span{display:block;width:18px;height:2px;margin:3px auto;border-radius:99px;background:currentColor}.site-mobile-menu{display:none}.mobile-backdrop{position:fixed;inset:0;background:rgba(0,26,57,.32);opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:998}.mobile-backdrop.is-visible{opacity:1;pointer-events:auto}.mobile-backdrop[hidden]{display:none}
.hero{position:relative;overflow:hidden;background:var(--navy);color:#fff}.hero.has-image{background-image:linear-gradient(180deg,rgba(0,26,57,.30),rgba(0,26,57,.82)),var(--hero-bg-image);background-size:cover;background-position:center}.hero:not(.has-overlay).has-image{background-image:var(--hero-bg-image)}.hero-shell{min-height:560px;display:grid;grid-template-rows:auto 1fr auto;gap:24px;color:#fff;padding:32px var(--shell-x) 56px}.breadcrumb{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;line-height:1.6;color:rgba(255,255,255,.92)}.hero-content{align-self:center;max-width:980px}.label-row{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 16px}.label{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:var(--radius);font-size:11px;line-height:1;letter-spacing:.02em;font-weight:600}.label--navy{background:var(--navy);color:#fff}.label--gold{background:var(--gold);color:#fff}.hero-title{font-size:clamp(42px,6vw,68px);line-height:1;color:#fff;max-width:16ch}.hero-lead{margin:16px 0 0;max-width:58ch;font-size:16px;line-height:1.74;color:rgba(255,255,255,.88)}.hero-meta{align-self:end;font-size:13px;line-height:1.7;color:rgba(255,255,255,.8)}
.scroller{overflow-x:auto;padding-left:0;padding-right:0;scrollbar-width:none;scroll-snap-type:x proximity;scroll-padding-left:0;scroll-padding-right:0}
.av-rail-section .card-track{padding-left:0;padding-right:0}.scroller::-webkit-scrollbar{display:none}.card-track{display:flex;gap:24px;width:max-content}.ui-card{width:min(420px,calc(100vw - (var(--shell-x) * 2)));min-width:280px;overflow:hidden;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);color:inherit}.category-scroller .ui-card{width:min(300px,calc(100vw - (var(--shell-x) * 2)))}.media{position:relative;aspect-ratio:16/10;background:var(--navy);overflow:hidden}.media--fallback{background:var(--navy)}.category-card .media{aspect-ratio:5/4}.media img{width:100%;height:100%;object-fit:cover}.image-tags{position:absolute;left:12px;top:12px;z-index:2;display:flex;gap:8px;flex-wrap:wrap;max-width:calc(100% - 24px)}.image-tag{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border-radius:var(--radius);background:var(--navy);color:#fff;font-size:11px;line-height:1;font-weight:600}.card-body{padding:24px;display:flex;flex-direction:column;align-items:stretch;flex:1}.blog-card__meta{width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:14px}.meta-line,.card-date{font-size:11px;line-height:1.4;letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:rgba(24,33,45,.55)}.card-date{margin:0;text-align:right;white-space:nowrap}.category-card .card-body{align-items:flex-start}.card-title{margin-top:10px;font-size:clamp(23px,2vw,28px);line-height:1.08;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.category-card .card-title{max-width:13ch;min-height:2.2em}.card-copy{margin:10px 0 0;font-size:14px;line-height:1.68;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-footer{margin-top:auto;padding-top:14px}.empty-state{padding:24px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);color:var(--muted)}
.blog-grid-scroller{overflow:visible}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.blog-grid .ui-card{width:100%;min-width:0}.pagination-wrap{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:center;margin-top:32px}.pagination-wrap .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--navy)}.pagination-wrap .current{background:var(--navy);border-color:var(--navy);color:#fff}.editorial-block{margin-top:var(--section-y);margin-bottom:0}.surface{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}.surface-pad{padding:34px}.rich-copy{max-width:var(--av-three-card-width);width:100%}.rich-copy p{margin:0;font-size:16px;line-height:1.7;color:var(--muted)}.rich-copy p+p{margin-top:16px}.rich-copy :where(h2,h3,h4){font-family:var(--font-display);color:var(--navy);letter-spacing:-.04em}.site-footer{padding:var(--section-y) 0 48px}.site-footer__card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:34px}.site-footer__grid{display:grid;grid-template-columns:1.4fr .7fr;gap:24px}.site-footer__brand{font-size:30px;line-height:1.02}.site-footer__brand img{max-height:54px;width:auto}.site-footer__summary{margin-top:12px;max-width:42ch;font-size:14px;line-height:1.8;color:var(--muted)}.site-footer__heading{margin:0 0 14px;font-size:13px;line-height:1.2;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--navy)}.site-footer__links{display:grid;gap:8px;list-style:none;margin:0;padding:0}.site-footer__links a{font-size:14px;line-height:1.8;color:var(--muted)}.site-footer__copyright{margin-top:24px;padding-top:18px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
@media (max-width:900px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer__grid{grid-template-columns:1fr}}
@media (max-width:760px){.container{padding:0 var(--shell-x-mobile)}.page-section{padding-top:var(--section-y-mobile)}.ticker-inner{min-height:46px}.ticker-item{font-size:11px}.site-header__inner{min-height:var(--header-mobile);grid-template-columns:auto auto 1fr auto;gap:12px}.mobile-toggle{display:inline-block}.site-brand{font-size:28px}.desktop-nav{display:none}.site-mobile-menu{display:block;position:fixed;top:var(--header-mobile);left:0;right:0;max-height:calc(100vh - var(--header-mobile));overflow:auto;z-index:999;background:var(--navy);color:#fff;box-shadow:0 10px 24px rgba(18,30,43,.18)}.site-mobile-menu.is-hidden,.site-mobile-menu[hidden]{display:none}.site-mobile-menu__group{border-bottom:.5px solid rgba(255,255,255,.16)}.mobile-parent-row{display:grid;grid-template-columns:1fr 56px;align-items:center}.mobile-parent-link,.site-mobile-menu__subitem{display:block;color:#fff;text-decoration:none}.mobile-parent-link{padding:18px var(--shell-x-mobile);font-size:15px}.mobile-parent-button{width:56px;height:56px;border:0;background:transparent;color:#fff;cursor:pointer}.site-mobile-menu__icon{position:relative;display:inline-block;width:14px;height:14px;opacity:.78}.site-mobile-menu__icon:before,.site-mobile-menu__icon:after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.5px;background:currentColor;border-radius:99px;transform:translate(-50%,-50%);transition:.18s ease}.site-mobile-menu__icon:after{transform:translate(-50%,-50%) rotate(90deg)}.mobile-parent-button[aria-expanded=true] .site-mobile-menu__icon:after{opacity:0}.site-mobile-menu__panel{padding:6px 0 10px;background:rgba(255,255,255,.03)}.site-mobile-menu__panel[hidden]{display:none}.site-mobile-menu__subitem{padding:10px var(--shell-x-mobile) 10px calc(var(--shell-x-mobile) + 18px);font-size:14px;color:rgba(255,255,255,.84)}.hero.has-image{background-image:linear-gradient(180deg,rgba(0,26,57,.30),rgba(0,26,57,.82)),var(--hero-bg-mobile,var(--hero-bg-image))}.hero:not(.has-overlay).has-image{background-image:var(--hero-bg-mobile,var(--hero-bg-image))}.hero-shell{min-height:auto;padding:24px var(--shell-x-mobile) 40px}.breadcrumb{font-size:12px}.hero-title{font-size:clamp(38px,11vw,52px);line-height:1.01;max-width:100%}.hero-lead{font-size:14px;line-height:1.72}.scroller{padding-left:var(--shell-x-mobile);padding-right:var(--shell-x-mobile);scroll-padding-left:var(--shell-x-mobile);scroll-padding-right:var(--shell-x-mobile)}.card-track{gap:12px}.ui-card{width:calc((100vw - var(--shell-x-mobile) - 24px) * .75)}.card-body,.surface-pad{padding:16px}.blog-grid-scroller{overflow-x:auto;margin-left:calc(var(--shell-x-mobile) * -1);margin-right:calc(var(--shell-x-mobile) * -1);padding-left:var(--shell-x-mobile);padding-right:var(--shell-x-mobile);scrollbar-width:none}.blog-grid-scroller::-webkit-scrollbar{display:none}.blog-grid{display:flex;gap:12px;width:max-content}.blog-grid .ui-card{width:calc((100vw - var(--shell-x-mobile) - 24px) * .75);min-width:280px}.pagination-wrap{display:none}.section-title{font-size:30px}.section-intro{font-size:14px;line-height:1.75}.editorial-block{margin-top:var(--section-y-mobile)}.site-footer{padding-top:var(--section-y-mobile)}.site-footer__card{padding:22px}.site-footer__grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker-track{animation:none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important}}

.category-card>a{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit}
.empty-state--admin{max-width:520px}


/* AV1.025 controlled reset: logical capped desktop shell, premium arrow-only sliders, no progress bar. Mobile untouched. */
@media (min-width:761px){
  :root{
    --av-desktop-shell:min(80vw,var(--max));
  }
  .container{
    width:var(--av-desktop-shell);
    max-width:none;
    margin-left:auto;
    margin-right:auto;
    padding-left:0;
    padding-right:0;
  }
  .ticker{
    width:100vw;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
  }
  .ticker .container{
    width:100%;
    max-width:none;
    padding-left:0;
    padding-right:0;
  }
  .ticker.ticker--static .ticker-inner{justify-content:center;}
  .ticker.ticker--static .ticker-track{width:100%;justify-content:center;animation:none;transform:none;}
  .ticker.ticker--static .ticker-group:not(:first-child){display:none;}
  .site-header__inner,
  .hero-shell{
    padding-left:0;
    padding-right:0;
  }
  .hero-content,
  .hero-title,
  .hero-lead,
  .section-intro{
    max-width:none;
  }
  .hero-title,
  .section-title,
  .component-title{text-wrap:balance;}
  .hero-lead,
  .section-intro{text-wrap:pretty;}
  .av-rail-section .scroller{
    width:var(--av-desktop-shell);
    margin-left:auto;
    margin-right:auto;
    padding-left:0;
    padding-right:0;
    scroll-padding-left:0;
    scroll-padding-right:0;
    cursor:grab;
    -webkit-overflow-scrolling:touch;
  }
  .av-rail-section .scroller.is-dragging{
    cursor:grabbing;
    user-select:none;
  }
  .av-rail-section .scroller.is-dragging *{pointer-events:none;}
  .av-rail-section .card-track{
    padding-left:0;
    padding-right:0;
  }
  .blog-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .blog-grid .ui-card{width:100%;min-width:0;}
  .editorial-block .rich-copy{width:100%;max-width:100%;}
  .slider-section-head{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:24px;
    align-items:end;
  }
  .slider-section-head .section-copy{min-width:0;}
  .slider-controls{
    display:flex;
    gap:10px;
    align-items:center;
    justify-content:flex-end;
  }
  .slider-control{
    width:44px;
    height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid var(--line-strong);
    border-radius:var(--radius);
    background:var(--paper);
    color:var(--navy);
    cursor:pointer;
    font-size:22px;
    line-height:1;
    transition:opacity .18s ease,background-color .18s ease,border-color .18s ease,transform .18s ease;
  }
  .slider-control:hover{border-color:rgba(0,26,57,.28);transform:translateY(-1px);}
  .slider-control:disabled{opacity:.32;cursor:default;transform:none;}
  .av-slider-no-overflow .slider-controls{display:none;}
}
@media (max-width:760px){.slider-controls{display:none;}}

/* AV1.025 exact desktop shell correction.
   Header, Hero, Category slider and Our Choice slider are true 80vw on desktop.
   Normal contained content keeps the capped system to avoid stretched blog cards.
   Mobile remains untouched. */
@media (min-width:761px){
  .site-header > .container,
  .hero > .container{
    width:80vw !important;
    max-width:none !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  .av-rail-section > .container,
  .av-rail-section > .scroller{
    width:80vw !important;
    max-width:none !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  .av-rail-section > .scroller{
    scroll-padding-left:0 !important;
    scroll-padding-right:0 !important;
  }
  .av-rail-section .card-track{
    padding-left:0 !important;
    padding-right:0 !important;
  }
}

/* AV1.025 blog detail page */
.article-toc{background:var(--navy);color:#fff;border-color:rgba(255,255,255,.12)}
.article-toc__inner{padding:34px}
.article-toc .component-title{color:#fff}
.article-toc__list{display:grid;gap:10px;margin:22px 0 0;padding:0;list-style:none;counter-reset:toc}
.article-toc__item{counter-increment:toc;display:flex;gap:10px;align-items:flex-start;color:rgba(255,255,255,.86);font-size:15px;line-height:1.55}
.article-toc__item:before{content:counter(toc,decimal-leading-zero);flex:0 0 28px;color:var(--gold);font-size:11px;line-height:1.9;letter-spacing:.08em;font-weight:700}
.article-toc__item--h3{padding-left:34px;font-size:14px;color:rgba(255,255,255,.74)}
.article-toc__item a{text-decoration:none;color:inherit}
.article-toc__item a:hover{text-decoration:underline;text-underline-offset:4px}
.content-image__frame{width:100%;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background:var(--navy)}
.content-image__frame img{width:100%;height:100%;object-fit:cover}
.article-content-shell{padding:42px 34px}
.article-content{max-width:820px;margin:0 auto}
.article-content :where(p,ul,ol,blockquote){font-size:17px;line-height:1.82;color:var(--muted)}
.article-content p{margin:0 0 22px}
.article-content :where(h2,h3){font-family:var(--font-display);font-weight:400;letter-spacing:-.042em;color:var(--navy);scroll-margin-top:calc(var(--header-desktop) + 24px)}
.article-content h2{font-size:clamp(32px,3vw,44px);line-height:1.06;margin:42px 0 14px}
.article-content h3{font-size:clamp(24px,2.2vw,30px);line-height:1.12;margin:30px 0 12px}
.article-content h2:first-child{margin-top:0}
.article-content ul,.article-content ol{padding-left:24px;margin:0 0 22px}
.article-content li+li{margin-top:8px}
.article-content blockquote{margin:32px 0;padding:22px 24px;border-left:4px solid var(--gold);background:rgba(181,138,73,.08);color:var(--text)}
.article-content .wp-block-image{margin:32px 0}
.article-content .wp-block-image img{border-radius:var(--radius)}
.related-posts-section{margin-bottom:0}
@media (max-width:760px){.article-toc__inner{padding:22px}.article-toc__item--h3{padding-left:22px}.article-content-shell{padding:24px 16px}.article-content :where(p,ul,ol,blockquote){font-size:15px;line-height:1.76}.article-content h2{font-size:30px}.article-content h3{font-size:24px}.content-image__frame{aspect-ratio:16/10}}

/* AV1.025 article content blocks: same surface/rich-copy logic as SEO copy blocks */
.article-content-section .container{width:80vw;max-width:none;margin-left:auto;margin-right:auto}
.article-content{display:grid;gap:24px;max-width:100%;margin:0}
.article-content .av1-content-block{padding:34px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}
.article-content > :not(.av1-content-block){max-width:820px;margin-left:auto;margin-right:auto}
.article-content .av1-content-block > :last-child{margin-bottom:0}
.article-content .av1-content-block h2{margin-top:0}
@media (max-width:760px){.article-content-section .container{width:100%;max-width:100%;padding-left:var(--shell-x-mobile);padding-right:var(--shell-x-mobile)}.article-content{gap:18px}.article-content .av1-content-block{padding:22px 16px}}

/* AV1.025 blog detail structure: intro text component, TOC, image, then editor content blocks */
@media (min-width:761px){
  .article-intro-section .container,
  .article-toc-section .container,
  .article-featured-image-section .container,
  .article-content-section .container{
    width:80vw;
    max-width:none;
    margin-left:auto;
    margin-right:auto;
    padding-left:0;
    padding-right:0;
  }
}
.article-intro{display:block;max-width:100%;margin:0}
.article-intro .av1-article-intro-block,
.article-content .av1-content-block{
  padding:34px;
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:var(--radius);
}
.article-intro .av1-article-intro-block > :last-child,
.article-content .av1-content-block > :last-child{margin-bottom:0}
.article-intro .av1-article-intro-block h2,
.article-content .av1-content-block h2{margin-top:0}
.article-intro :where(p,ul,ol,blockquote){font-size:17px;line-height:1.82;color:var(--muted)}
.article-intro p{margin:0 0 22px}
.article-intro :where(h2,h3){font-family:var(--font-display);font-weight:400;letter-spacing:-.042em;color:var(--navy);scroll-margin-top:calc(var(--header-desktop) + 24px)}
.article-intro h2{font-size:clamp(32px,3vw,44px);line-height:1.06;margin:0 0 14px}
.article-intro h3{font-size:clamp(24px,2.2vw,30px);line-height:1.12;margin:30px 0 12px}
@media (max-width:760px){
  .article-intro .av1-article-intro-block,
  .article-content .av1-content-block{padding:22px 16px}
  .article-intro :where(p,ul,ol,blockquote){font-size:15px;line-height:1.76}
  .article-intro h2{font-size:30px}
  .article-intro h3{font-size:24px}
}

/* AV1.025: blog detail editor content blocks must stay left aligned */
.article-intro,
.article-content,
.article-intro .av1-article-intro-block,
.article-content .av1-content-block,
.article-intro :where(h2,h3,p,ul,ol,li,blockquote),
.article-content :where(h2,h3,p,ul,ol,li,blockquote){
  text-align:left;
}
.article-content .av1-content-block,
.article-intro .av1-article-intro-block{
  justify-items:start;
}

/* AV1.025: article editor blocks are the same visual system as the SEO copy block */
.article-content .av1-content-block{
  width:100%;
  max-width:100%;
  margin-left:0;
  margin-right:0;
  padding:34px;
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:var(--radius);
  text-align:left;
}
.article-content .av1-content-block :where(h2,h3,p,ul,ol,li,blockquote){text-align:left}
.article-content .av1-content-block h2{
  margin:0 0 14px;
  font-family:var(--font-display);
  font-size:clamp(32px,3vw,44px);
  line-height:1.06;
  font-weight:400;
  letter-spacing:-.042em;
  color:var(--navy);
}
.article-content .av1-content-block p{
  margin:0;
  max-width:100%;
  font-size:17px;
  line-height:1.82;
  color:var(--muted);
}
@media (max-width:760px){
  .article-content .av1-content-block{padding:22px 16px}
  .article-content .av1-content-block h2{font-size:30px}
  .article-content .av1-content-block p{font-size:15px;line-height:1.76}
}
/* AV1.025: blog detail demo/editor blocks use the same visual system as the SEO copy block. */
.article-intro .av1-article-intro-block,
.article-content .av1-content-block{
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:34px;
  text-align:left;
}
.article-intro .av1-article-intro-block > :last-child,
.article-content .av1-content-block > :last-child{margin-bottom:0;}
.article-intro .av1-article-intro-block :where(h2,h3,p,ul,ol,li,blockquote),
.article-content .av1-content-block :where(h2,h3,p,ul,ol,li,blockquote){text-align:left;}
@media (max-width:760px){
  .article-intro .av1-article-intro-block,
  .article-content .av1-content-block{padding:22px 16px;}
}

/* AV1.025: blog-detail editor blocks are exact SEO-copy style blocks. */
.single-article .av1-article-intro-block,
.single-article .article-content .av1-content-block{
  display:block;
  width:100%;
  max-width:100%;
  margin:0;
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:34px;
  text-align:left;
}
.single-article .article-content{
  display:grid;
  gap:24px;
  max-width:100%;
  width:100%;
  margin:0;
}
.single-article .av1-article-intro-block :where(h2,h3,p,ul,ol,li,blockquote),
.single-article .article-content .av1-content-block :where(h2,h3,p,ul,ol,li,blockquote){
  text-align:left;
}
.single-article .av1-article-intro-block h2,
.single-article .article-content .av1-content-block h2{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(31px,3vw,40px);
  line-height:1.05;
  font-weight:400;
  letter-spacing:-.042em;
  color:var(--navy);
}
.single-article .av1-article-intro-block h2 + p,
.single-article .article-content .av1-content-block h2 + p{
  margin-top:24px;
}
.single-article .av1-article-intro-block p,
.single-article .article-content .av1-content-block p{
  margin:0;
  max-width:100%;
  font-size:16px;
  line-height:1.7;
  color:var(--muted);
}
.single-article .av1-article-intro-block p + p,
.single-article .article-content .av1-content-block p + p{
  margin-top:16px;
}
.single-article .av1-article-intro-block > :last-child,
.single-article .article-content .av1-content-block > :last-child{
  margin-bottom:0;
}
@media (max-width:760px){
  .single-article .av1-article-intro-block,
  .single-article .article-content .av1-content-block{padding:22px 16px;}
  .single-article .av1-article-intro-block h2,
  .single-article .article-content .av1-content-block h2{font-size:30px;line-height:1.08;}
  .single-article .av1-article-intro-block p,
  .single-article .article-content .av1-content-block p{font-size:15px;line-height:1.76;}
}

/* AV1.025: restore table-of-contents to the dark disclosure design and make every article text block match the SEO copy block. */
.article-toc.article-toc,
.disclosure.article-toc{background:var(--navy);color:#fff;border:1px solid rgba(255,255,255,.10);border-radius:var(--radius);overflow:hidden}
.disclosure-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 20px;border:0;background:transparent;color:#fff;text-align:left;cursor:pointer}
.disclosure-title{margin:0;font-family:var(--font-display);font-size:28px;line-height:1.08;font-weight:400;letter-spacing:-.042em;color:#fff}
.disclosure-icon{position:relative;width:16px;height:16px;flex:0 0 16px;color:#fff}.disclosure-icon:before,.disclosure-icon:after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.5px;background:currentColor;border-radius:99px;transform:translate(-50%,-50%);transition:opacity .18s ease,transform .18s ease}.disclosure-icon:after{transform:translate(-50%,-50%) rotate(90deg)}.disclosure-toggle[aria-expanded="true"] .disclosure-icon:after{opacity:0;transform:translate(-50%,-50%) rotate(180deg)}
.disclosure-panel{border-top:1px solid rgba(255,255,255,.10);padding:10px 12px 12px}.disclosure-panel[hidden]{display:none}.disclosure-list{list-style:none;margin:0;padding:0;display:grid;gap:1px}.disclosure-link{display:block;padding:7px 8px;border-radius:var(--radius);color:#fff;font-size:14px;line-height:1.35;text-decoration:none}.disclosure-link:hover{background:rgba(255,255,255,.06);text-decoration:underline;text-underline-offset:4px}.disclosure-link--sub{color:rgba(255,255,255,.78);padding-left:24px}
.single-article .article-content{display:grid;gap:24px;width:100%;max-width:100%;margin:0}
.single-article .av1-article-intro-block,.single-article .article-content > .av1-content-block,.single-article .article-content > .wp-block-group,.single-article .article-content > section.av1-content-block{display:block;width:100%;max-width:100%;margin:0;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:34px;text-align:left}
.single-article .av1-article-intro-block :where(h2,h3,p,ul,ol,li,blockquote),.single-article .article-content > .av1-content-block :where(h2,h3,p,ul,ol,li,blockquote),.single-article .article-content > .wp-block-group :where(h2,h3,p,ul,ol,li,blockquote),.single-article .article-content > section.av1-content-block :where(h2,h3,p,ul,ol,li,blockquote){text-align:left}
.single-article .av1-article-intro-block h2,.single-article .article-content > .av1-content-block h2,.single-article .article-content > .wp-block-group h2,.single-article .article-content > section.av1-content-block h2{margin:0;font-family:var(--font-display);font-size:clamp(31px,3vw,40px);line-height:1.05;font-weight:400;letter-spacing:-.042em;color:var(--navy)}
.single-article .av1-article-intro-block h2 + p,.single-article .article-content > .av1-content-block h2 + p,.single-article .article-content > .wp-block-group h2 + p,.single-article .article-content > section.av1-content-block h2 + p{margin-top:24px}
.single-article .av1-article-intro-block p,.single-article .article-content > .av1-content-block p,.single-article .article-content > .wp-block-group p,.single-article .article-content > section.av1-content-block p{margin:0;max-width:100%;font-size:16px;line-height:1.7;color:var(--muted)}
.single-article .av1-article-intro-block p + p,.single-article .article-content > .av1-content-block p + p,.single-article .article-content > .wp-block-group p + p,.single-article .article-content > section.av1-content-block p + p{margin-top:16px}
@media (max-width:760px){.disclosure-toggle{padding:16px}.disclosure-title{font-size:24px}.disclosure-panel{padding:10px 10px 12px}.disclosure-link{padding:8px;font-size:14px}.single-article .av1-article-intro-block,.single-article .article-content > .av1-content-block,.single-article .article-content > .wp-block-group,.single-article .article-content > section.av1-content-block{padding:22px 16px}.single-article .av1-article-intro-block h2,.single-article .article-content > .av1-content-block h2,.single-article .article-content > .wp-block-group h2,.single-article .article-content > section.av1-content-block h2{font-size:30px;line-height:1.08}.single-article .av1-article-intro-block p,.single-article .article-content > .av1-content-block p,.single-article .article-content > .wp-block-group p,.single-article .article-content > section.av1-content-block p{font-size:15px;line-height:1.76}}


/* AV1.028: make every blog-detail editor text component use the exact SEO copy block shell. */
.single-article .article-intro.rich-copy,
.single-article .article-content.rich-copy{
  display:grid;
  gap:24px;
  width:100%;
  max-width:100%;
  margin:0;
}
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block){
  display:block;
  width:100%;
  max-width:100%;
  margin:0;
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:34px;
  text-align:left;
}
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) > .wp-block-group__inner-container{
  width:100%;
  max-width:100%;
  margin:0;
}
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) :where(h2,h3,p,ul,ol,li,blockquote){
  text-align:left;
}
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h2{
  margin:0;
  max-width:100%;
  font-family:var(--font-display);
  font-size:clamp(31px,3vw,40px);
  line-height:1.05;
  font-weight:400;
  letter-spacing:-.042em;
  color:var(--navy);
}
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3{
  margin:24px 0 0;
  max-width:100%;
  font-family:var(--font-display);
  font-size:clamp(24px,2.2vw,30px);
  line-height:1.12;
  font-weight:400;
  letter-spacing:-.042em;
  color:var(--navy);
}
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) p,
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) li{
  margin:0;
  max-width:100%;
  font-size:16px;
  line-height:1.7;
  color:var(--muted);
}
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h2 + p,
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + p,
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) p + p{
  margin-top:24px;
}
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) > :last-child,
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) > .wp-block-group__inner-container > :last-child{
  margin-bottom:0;
}
@media (max-width:760px){
  .single-article .article-intro.rich-copy,
  .single-article .article-content.rich-copy{gap:18px;}
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block){padding:22px 16px;}
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h2{font-size:30px;line-height:1.08;}
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) p,
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) li{font-size:15px;line-height:1.76;}
}

/* AV1.029: article big image is a clean image component, not an extra surface/text box. */
.single-article .article-featured-image{margin:0;}
.single-article .article-featured-image.surface,
.single-article figure.article-featured-image.surface{background:transparent;border:0;padding:0;}
.single-article .article-featured-image .content-image__frame{border-radius:var(--radius);overflow:hidden;}

/* AV1.032 Location overview and location cards */
.location-card .image-tags{align-items:flex-start;}
.location-card .image-tag{text-decoration:none;background:var(--gold);color:#fff;}
.location-card .card-body > .meta-line{margin:0;}
.location-card .card-title{margin-top:10px;}
.location-card .card-actions{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:14px;}
.location-card .action-link--button{border:0;background:transparent;padding:0;cursor:pointer;font:inherit;}
.location-card .action-sep{color:#98a1aa;font-size:14px;line-height:1;}
.location-grid .location-card{width:100%;min-width:0;}
.single-location .article-content-section + .article-featured-image-section{padding-top:24px;}
@media (max-width:760px){
  .location-card .card-actions{gap:8px;}
}

/* AV1.035 location review + visit details */
.location-card .image-tag{background:var(--navy);color:#fff;text-decoration:none}.location-card .card-footer{margin-top:auto;padding-top:14px}.location-review-panel,.location-visit-panel{max-width:var(--av-three-card-width);width:100%}.location-review-header .component-title,.location-hours-block .component-title{margin:10px 0 0}.location-review-intro{margin-top:12px}.location-review-rating{display:flex;align-items:center;gap:10px;margin-top:22px;color:var(--muted);font-size:14px;line-height:1.4}.location-review-rating strong{color:var(--navy);font-size:18px}.rating-stars{--rating:4.5;position:relative;display:inline-block;width:6.9em;font-size:18px;line-height:1;letter-spacing:.08em}.rating-stars:before{content:"★★★★★";color:rgba(24,33,45,.18)}.rating-stars:after{content:"★★★★★";position:absolute;left:0;top:0;width:var(--rating-width,90%);overflow:hidden;white-space:nowrap;color:var(--gold)}.location-review-summary{margin:20px 0 0;font-size:17px;line-height:1.72;color:var(--muted)}.location-review-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px;padding-top:18px;border-top:1px solid var(--line);font-size:12px;line-height:1.4;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:rgba(24,33,45,.52)}.location-visit-header{margin-bottom:26px}.location-visit-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.85fr);gap:24px;align-items:start}.location-visit-copy{margin:12px 0 0;font-size:15px;line-height:1.75;color:var(--muted)}.location-hours-table{width:100%;border-collapse:collapse;margin-top:22px;font-size:14px;line-height:1.5}.location-hours-table tr{border-top:1px solid var(--line)}.location-hours-table th,.location-hours-table td{padding:13px 0;text-align:left;vertical-align:top}.location-hours-table th{font-weight:700;color:var(--navy);width:42%}.location-hours-table td{color:var(--muted);text-align:right}.location-map-frame{position:relative;overflow:hidden;border-radius:var(--radius);border:1px solid var(--line);background:rgba(24,33,45,.05);aspect-ratio:4/3}.location-map-frame iframe{display:block;width:100%;height:100%;border:0}.location-map-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:22px;color:var(--muted)}.location-map-placeholder span{display:block;margin-bottom:10px;font-family:var(--font-display);font-size:28px;line-height:1;color:var(--navy)}.location-map-placeholder p{margin:0;font-size:14px;line-height:1.6}.location-address{margin:14px 0 0;font-style:normal;font-size:14px;line-height:1.65;color:var(--muted)}.location-map-block .action-link{display:inline-block;margin-top:12px}
@media (max-width:760px){.location-visit-grid{grid-template-columns:1fr;gap:22px}.location-hours-table th,.location-hours-table td{display:block;width:100%;text-align:left}.location-hours-table th{padding-bottom:2px}.location-hours-table td{padding-top:0}.location-map-frame{aspect-ratio:16/10}.rating-stars{font-size:16px}}


/* AV1.052 reviewed-by-us pure 3026 mobile spacing fix */
:root{
  --surface-roomy:34px;
  --surface-roomy-mobile:22px;
  --content-measure-wide:860px;
  --panel-kicker-title:16px;
  --panel-title-copy:12px;
  --panel-copy-content:22px;
  --panel-block-gap-mobile:18px;
  --type-display-track:-.042em;
  --type-display-weight:400;
  --type-component-title-size:clamp(31px,3vw,40px);
  --type-component-title-line:1.05;
  --type-long-review-subtitle-size:var(--type-body-size,15px);
  --type-long-review-subtitle-line:var(--type-body-line,1.76);
  --type-long-review-body-size:var(--type-body-size,15px);
  --type-long-review-body-line:var(--type-body-line,1.76);
  --type-long-review-meta-size:14px;
  --type-long-review-meta-line:1.6;
}
.surface--dark{background:var(--navy);color:#fff;border-color:rgba(255,255,255,.12);}
.surface--dark .kicker{color:rgba(255,255,255,.68);}
.surface--dark .section-intro{color:rgba(255,255,255,.74);}
.surface--dark :is(.component-title,.long-review-title,.disclosure-title){color:#fff;}
.surface-pad--roomy{padding:var(--surface-roomy);}
.location-review-section .long-review{margin-top:0;overflow:hidden;}
.location-review-section .long-review__inner>.kicker{margin-bottom:0;}
.location-review-section .long-review-title{
  margin:0;
  margin-top:var(--cfg-long-review-title-margin-top,0);
  font-family:var(--font-display);
  font-weight:var(--cfg-display-font-weight,var(--type-display-weight));
  letter-spacing:var(--cfg-display-letter-spacing,var(--type-display-track));
  font-size:var(--cfg-long-review-title-font-size,var(--type-component-title-size));
  line-height:var(--cfg-long-review-title-line-height,var(--type-component-title-line));
  color:#fff;
}
.location-review-section .long-review-subtitle{
  margin:0;
  margin-top:var(--cfg-long-review-subtitle-margin-top,var(--panel-title-copy));
  max-width:none;
  font-size:var(--cfg-long-review-subtitle-font-size,var(--type-long-review-subtitle-size));
  line-height:var(--cfg-long-review-subtitle-line-height,var(--type-long-review-subtitle-line));
  font-weight:400;
  font-style:normal;
  color:rgba(255,255,255,.82);
}
.location-review-section .rating-split{
  margin-top:var(--cfg-rating-split-margin-top,var(--panel-copy-content));
  display:grid;
  grid-template-columns:var(--cfg-rating-split-grid-template-columns,1fr 1fr);
  gap:var(--cfg-rating-split-gap,18px);
  max-width:var(--cfg-rating-split-max-width,520px);
}
.location-review-section .symbol-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:22px;}
.location-review-section .symbols{display:flex;gap:6px;align-items:center;line-height:1;}
.location-review-section .symbol{font-size:18px;color:#fff;line-height:1;}
.location-review-section .symbol.is-active{color:var(--gold);}
.location-review-section .symbol-half{position:relative;display:inline-block;color:rgba(255,255,255,.22);}
.location-review-section .symbol-half::before{content:"★";position:absolute;inset:0 auto 0 0;width:50%;overflow:hidden;color:var(--gold);}
.location-review-section .long-review-body{
  margin-top:var(--cfg-long-review-body-margin-top,var(--panel-copy-content));
  max-width:var(--cfg-long-review-body-max-width,var(--content-measure-wide));
}
.location-review-section .long-review-body p{
  margin:0;
  font-size:var(--cfg-long-review-body-p-font-size,var(--type-long-review-body-size));
  line-height:var(--cfg-long-review-body-p-line-height,var(--type-long-review-body-line));
  font-weight:400;
  color:rgba(255,255,255,.86);
}
.location-review-section .long-review-body p+p{margin-top:16px;}
.location-review-section .long-review-meta{
  margin-top:var(--cfg-long-review-meta-margin-top,var(--panel-copy-content));
  display:grid;
  grid-template-columns:var(--cfg-long-review-meta-grid-template-columns,1fr 1fr);
  gap:var(--cfg-long-review-meta-gap,14px);
  max-width:var(--cfg-long-review-meta-max-width,760px);
}
.location-review-section .long-review-meta strong{
  font-size:var(--cfg-long-review-meta-strong-font-size,var(--type-long-review-meta-size));
  line-height:var(--cfg-long-review-meta-strong-line-height,var(--type-long-review-meta-line));
  font-weight:500;
  color:rgba(255,255,255,.86);
}
.location-review-section .long-review-meta span{
  font-size:var(--cfg-long-review-meta-span-font-size,var(--type-long-review-meta-size));
  line-height:var(--cfg-long-review-meta-span-line-height,var(--type-long-review-meta-line));
  font-weight:400;
  color:rgba(255,255,255,.72);
}
@media (max-width:760px){
  .surface-pad--roomy{padding:var(--surface-roomy-mobile);}
  .location-review-section{
    --cfg-long-review-title-margin-top:var(--panel-kicker-title);
    --cfg-long-review-title-font-size:28px;
    --cfg-long-review-subtitle-margin-top:var(--panel-title-copy);
    --cfg-long-review-subtitle-font-size:16px;
    --cfg-long-review-subtitle-line-height:1.6;
    --cfg-rating-split-margin-top:var(--panel-block-gap-mobile);
    --cfg-rating-split-grid-template-columns:1fr 1fr;
    --cfg-rating-split-gap:14px;
    --cfg-long-review-body-margin-top:var(--panel-block-gap-mobile);
    --cfg-long-review-body-p-font-size:15px;
    --cfg-long-review-body-p-line-height:1.7;
    --cfg-long-review-meta-margin-top:var(--panel-block-gap-mobile);
    --cfg-long-review-meta-grid-template-columns:1fr 1fr;
    --cfg-long-review-meta-gap:14px;
    --cfg-long-review-meta-strong-font-size:13px;
    --cfg-long-review-meta-span-font-size:13px;
  }
}

/* AV1.040 location overview cards + hours/map locked to 3026 design system */
.location-card.ui-card{
  width:min(420px,calc(100vw - (var(--shell-x) * 2)));
  min-width:280px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:var(--radius);
  color:inherit;
}
.location-grid .location-card.ui-card{width:100%;min-width:0;}
.location-card .media{position:relative;aspect-ratio:16/10;background:var(--navy);overflow:hidden;}
.location-card .media img{width:100%;height:100%;object-fit:cover;}
.location-card .image-tags{position:absolute;left:12px;top:12px;z-index:2;display:flex;gap:8px;flex-wrap:wrap;max-width:calc(100% - 24px);align-items:flex-start;}
.location-card .image-tag{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border-radius:var(--radius);background:var(--gold);color:#fff;font-size:11px;line-height:1;font-weight:600;text-decoration:none;}
.location-card .card-body{padding:var(--card-body-pad,24px);display:flex;flex-direction:column;align-items:stretch;flex:1;}
.location-card .meta-line{margin:0;font-size:var(--cfg-meta-line-font-size,11px);line-height:var(--cfg-meta-line-line-height,1.4);letter-spacing:var(--cfg-meta-line-letter-spacing,.08em);text-transform:uppercase;font-weight:var(--cfg-meta-line-font-weight,600);color:rgba(24,33,45,.55);}
.location-card .card-title{margin:10px 0 0;font-family:var(--font-display);font-size:var(--cfg-card-title-font-size,clamp(23px,2vw,28px));line-height:var(--cfg-card-title-line-height,1.08);font-weight:400;letter-spacing:-.042em;color:var(--navy);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.location-card .card-copy{margin:10px 0 0;font-size:var(--cfg-card-copy-font-size,14px);line-height:var(--cfg-card-copy-line-height,1.68);color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.location-card .card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:auto;padding-top:14px;}
.location-card .action-link{display:inline-flex;align-items:center;gap:6px;font-size:var(--cfg-action-link-font-size,14px);line-height:var(--cfg-action-link-line-height,1.35);font-weight:var(--cfg-action-link-font-weight,600);letter-spacing:.06em;text-transform:uppercase;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;color:var(--navy);}
.location-card .action-link--muted{font-weight:400;color:var(--muted);}
.location-card .action-sep{color:#98a1aa;font-size:14px;line-height:1;}
.location-card .card-footer,.location-card .blog-card__meta{display:contents;}

.location-layout.split-layout.split-layout--location{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:var(--layout-gap,18px);}
.location-panel.surface.surface-pad,.map-panel.surface.surface-pad{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:var(--panel-pad,24px);}
.location-panel>.kicker,.map-panel .kicker{margin-bottom:0;}
.location-panel>.component-title,.map-panel .component-title{margin:var(--panel-kicker-title,16px) 0 0;font-family:var(--font-display);font-size:var(--cfg-component-title-font-size,clamp(32px,3vw,40px));line-height:var(--cfg-component-title-line-height,1.04);font-weight:400;letter-spacing:-.042em;color:var(--navy);}
.location-panel>.component-title+.section-intro,.map-panel .component-title+.section-intro{margin-top:var(--panel-title-copy,12px);}
.location-panel .section-intro,.map-panel .section-intro{font-size:var(--cfg-section-intro-font-size,15px);line-height:var(--cfg-section-intro-line-height,1.76);color:var(--muted);max-width:var(--content-measure,66ch);}
.location-panel .table--hours{margin-top:var(--context-media-block-gap,var(--panel-copy-content,22px));}
.table.table--hours{width:100%;border-collapse:collapse;border-top:1px solid var(--line);border-bottom:0;}
.table.table--hours tr+tr :is(th,td){border-top:1px solid rgba(24,33,45,.08);}
.table.table--hours tr:first-child th,.table.table--hours tr:first-child td{border-top:0;}
.table.table--hours th,.table.table--hours td{padding:13px 0;font-size:14px;line-height:1.4;text-align:left;vertical-align:middle;border-left:0;border-right:0;border-bottom:0;}
.table.table--hours th{width:72px;font-weight:600;color:var(--navy);}
.table.table--hours td{color:var(--text);font-weight:400;text-align:left;}
.map-panel .map-head{padding:0;}
.map-panel .map-frame{margin-top:var(--context-media-block-gap,var(--panel-copy-content,22px));background:transparent;border:0;overflow:visible;border-radius:0;}
.map-panel .map-frame-inner{border:1px solid var(--line);border-radius:4px;overflow:hidden;background:#e9eef3;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
.map-panel .map-frame iframe{width:100%;min-height:var(--cfg-map-frame-iframe-min-height,420px);border:0;display:block;background:#e9eef3;}
.location-map-placeholder{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;color:var(--muted);background:#e9eef3;}
.location-map-placeholder span{display:block;margin-bottom:10px;font-family:var(--font-display);font-size:28px;line-height:1;color:var(--navy);}
.location-map-placeholder p{margin:0;font-size:14px;line-height:1.65;}
.map-panel .action-link{display:inline-flex;margin-top:14px;}
@media (max-width:760px){
  .location-card.ui-card{width:calc((100vw - var(--shell-x-mobile) - 24px) * .75);}
  .location-grid .location-card.ui-card{width:calc((100vw - var(--shell-x-mobile) - 24px) * .75);min-width:280px;}
  .location-card .card-body{padding:var(--panel-pad-mobile,16px);}
  .location-card .image-tags{gap:6px;max-width:76%;}
  .location-card .image-tag{min-height:22px;padding:0 8px;font-size:10px;}
  .location-card .card-actions{gap:10px;margin-top:var(--card-copy-actions-mobile,12px);padding-top:0;}
  .location-layout.split-layout.split-layout--location{grid-template-columns:1fr;gap:14px;}
  .location-panel.surface.surface-pad,.map-panel.surface.surface-pad{padding:var(--panel-pad-mobile,16px);}
  .location-panel>.component-title,.map-panel .component-title{font-size:var(--cfg-component-title-font-size,30px);line-height:var(--cfg-component-title-line-height,1.08);}
  .location-panel .section-intro,.map-panel .section-intro{font-size:var(--cfg-section-intro-font-size,14px);line-height:var(--cfg-section-intro-line-height,1.75);}
  .table.table--hours th,.table.table--hours td{padding:10px 0;font-size:var(--cfg-table-roomy-font-size,12px);display:table-cell;width:auto;text-align:left;}
  .table.table--hours th{width:72px;}
  .map-panel .map-frame iframe,.location-map-placeholder{min-height:var(--cfg-map-frame-iframe-min-height,320px);}
}


/* AV1.042 location amenities locked to 3026 design system */
.location-facilities-section .facility.surface.surface-pad{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:var(--panel-pad,24px);}
.location-facilities-section .facility>.kicker{margin-bottom:0;}
.location-facilities-section .facility-wrap{overflow-x:auto;padding-bottom:4px;margin-top:var(--context-media-block-gap,var(--panel-copy-content,22px));}
.location-facilities-section .facility-table{width:100%;min-width:500px;border-collapse:collapse;border-top:1px solid var(--line);}
.location-facilities-section .facility-table tr{border-bottom:1px solid var(--line);}
.location-facilities-section .facility-table th,.location-facilities-section .facility-table td{padding:10px 0;vertical-align:middle;text-align:left;border:0;}
.location-facilities-section .facility-table th{width:var(--cfg-facility-table-th-width,30%);padding-right:var(--cfg-facility-table-th-padding-right,8px);font-size:var(--cfg-facility-table-th-font-size,14px);font-weight:var(--cfg-facility-table-th-font-weight,600);color:var(--cfg-facility-table-th-color,var(--navy));white-space:var(--cfg-facility-table-th-white-space,nowrap);}
.location-facilities-section .facility-table td{font-size:14px;color:var(--text);white-space:nowrap;}
.location-facilities-section .facility-label{display:flex;align-items:center;gap:8px;}
.location-facilities-section .facility-icon{width:18px;height:18px;flex:0 0 18px;color:var(--navy);opacity:.92;}
.location-facilities-section .facility-note.supporting-note{margin-top:var(--panel-content-note,14px);font-size:13px;line-height:1.7;color:rgba(24,33,45,.58);}
@media (max-width:760px){.location-facilities-section .facility.surface.surface-pad{padding:var(--panel-pad-mobile,16px)}.location-facilities-section .facility-table th{width:var(--cfg-facility-table-th-width,31%)}.location-facilities-section .facility-table th,.location-facilities-section .facility-table td{font-size:13px}.location-facilities-section .facility-table{min-width:500px}}

.location-facilities-section .facility-logo{width:22px;height:22px;flex:0 0 22px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border-radius:var(--radius);background:rgba(0,26,57,.06)}
.location-facilities-section .facility-logo-img{display:block;width:100%;height:100%;object-fit:contain}
.location-facilities-section .facility-label .facility-logo + span{min-width:0}


/* AV1.043 global component spacing lock */
:root{--section-y:68px;--section-y-mobile:40px;}
.page-section{padding-top:68px;}
.editorial-block{margin-top:68px;}
.site-footer{padding-top:68px;}
.single-location .article-content-section + .article-featured-image-section{padding-top:68px;}
.location-review-section .long-review{margin-top:0;}
@media (max-width:760px){.page-section{padding-top:40px}.editorial-block{margin-top:40px}.site-footer{padding-top:40px}.single-location .article-content-section + .article-featured-image-section{padding-top:40px}.location-review-section .long-review{margin-top:0}}



/* AV1.162 restaurant reservation form layout. Keeps CSS scoped and reuses global field/card tokens. */
.location-reservation-form-section .location-reservation-form{overflow:hidden;}
.location-reservation-form-section .form-grid{display:block;min-width:0;}
.location-reservation-form-section .form-main{min-width:0;border-right:0;border-bottom:0;}
.location-reservation-form-section .form-main>.kicker{margin-bottom:0;}
.location-reservation-form-section .form-main>.component-title{margin-top:var(--panel-kicker-title,16px);}
.location-reservation-form-section .form-main>.component-title+.section-intro{margin-top:var(--panel-title-copy,12px);}
.location-reservation-form-section form{margin-top:var(--panel-copy-content,22px);}
.location-reservation-form-section .note-chip{display:inline-flex;align-items:center;min-height:24px;margin-top:var(--panel-title-copy,12px);padding:0 10px;border-radius:var(--radius);background:rgba(0,26,57,.08);color:var(--navy);font-size:11px;line-height:1;letter-spacing:.04em;text-transform:uppercase;font-weight:700;}
.location-reservation-form-section .field-grid,
.location-reservation-form-section .field-inline-2{min-width:0;}
.location-reservation-form-section .field-inline-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.location-reservation-form-section .field-input,
.location-reservation-form-section .field-select,
.location-reservation-form-section .field-textarea{font-size:14px;}
.location-reservation-form-section .field-textarea{height:auto;min-height:98px;line-height:1.65;padding-top:12px;padding-bottom:12px;resize:vertical;}
.location-reservation-form-section input[type="date"],
.location-reservation-form-section input[type="time"]{width:100%;min-width:0;max-width:100%;box-sizing:border-box;text-align:left;line-height:50px;padding-right:14px;}
.location-reservation-form-section input[type="date"]::-webkit-date-and-time-value,
.location-reservation-form-section input[type="time"]::-webkit-date-and-time-value{text-align:left;}
.location-reservation-form-section input[type="date"]::-webkit-calendar-picker-indicator,
.location-reservation-form-section input[type="time"]::-webkit-calendar-picker-indicator{margin:0;}
.location-reservation-form-section .phone-combined{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;width:100%;min-width:0;height:50px;border:1px solid rgba(24,33,45,.12);border-radius:var(--radius);background:#fff;overflow:hidden;}
.location-reservation-form-section .phone-combined:focus-within{border-color:rgba(0,26,57,.28);}
.location-reservation-form-section .phone-combined__code,
.location-reservation-form-section .phone-combined__number{height:100%;min-width:0;border:0;background:#fff;color:var(--text);font-size:14px;line-height:1.4;outline:none;box-shadow:none;}
.location-reservation-form-section .phone-combined__code{width:96px;padding:0 28px 0 14px;border-right:1px solid rgba(24,33,45,.10);appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'><path d='M5 7.5l5 5 5-5' stroke='%23001A39' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 10px center;background-size:14px 14px;}
.location-reservation-form-section .phone-combined__number{width:100%;padding:0 14px;}
.location-reservation-form-section .help{margin-top:4px;font-size:11px;line-height:1.6;color:rgba(24,33,45,.52);font-style:italic;}
.location-reservation-form-section .form-actions{align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:10px;}
.location-reservation-form-section .form-actions .button{align-self:flex-start;}
.location-reservation-form-section .form-actions .fineprint{width:100%;max-width:none;}
@media (max-width:760px){
  .location-reservation-form-section .form-main.surface-pad{padding:16px;}
  .location-reservation-form-section .field-grid{grid-template-columns:minmax(0,1fr);gap:14px;}
  .location-reservation-form-section .field-grid > .field{grid-column:1 / -1;width:100%;}
  .location-reservation-form-section .field-inline-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;}
  .location-reservation-form-section .field-inline-2 > .field{grid-column:auto;width:100%;min-width:0;}
  .location-reservation-form-section .field-input,
  .location-reservation-form-section .field-select{min-height:48px;height:48px;}
  .location-reservation-form-section .field-textarea{height:auto;min-height:98px;}
  .location-reservation-form-section input[type="date"],
  .location-reservation-form-section input[type="time"]{display:block;line-height:1.2;padding-left:10px;padding-right:10px;text-align:left;-webkit-appearance:none;appearance:none;}

  .location-reservation-form-section input[type="date"]::-webkit-date-and-time-value,
  .location-reservation-form-section input[type="time"]::-webkit-date-and-time-value{min-height:48px;display:flex;align-items:center;text-align:left;}
  .location-reservation-form-section .phone-combined{height:48px;grid-template-columns:92px minmax(0,1fr);}
  .location-reservation-form-section .phone-combined__code,
  .location-reservation-form-section .phone-combined__number{font-size:14px;}
  .location-reservation-form-section .phone-combined__code{width:auto;padding-left:12px;padding-right:24px;background-position:right 8px center;}
  .location-reservation-form-section .phone-combined__number{padding-left:12px;padding-right:12px;}
  .location-reservation-form-section .form-actions .button{width:100%;}
}


/* AV1.163 mobile sticky actions for reservation form types. */
.form-mobile-sticky-actions{display:none;}
@media (max-width:760px){
  body:has(.form-mobile-sticky-actions){padding-bottom:64px;}
  .form-mobile-sticky-actions{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:100%;max-width:430px;display:grid;grid-template-columns:1fr 1fr;z-index:90;box-shadow:0 -10px 24px rgba(18,30,43,.12);}
  .form-mobile-sticky-actions--single{grid-template-columns:1fr;}
  .form-mobile-sticky-action{min-height:64px;display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 8px;color:#fff;text-decoration:none;font-size:12.5px;line-height:1.15;font-weight:400;letter-spacing:0;text-align:center;white-space:nowrap;}
  .form-mobile-sticky-action > span:not(.form-mobile-sticky-action__icon){white-space:nowrap;}
  .form-mobile-sticky-action--form{background:var(--navy);}
  .form-mobile-sticky-action--url{background:var(--gold);}
  .form-mobile-sticky-action__icon{width:16px;height:16px;flex:0 0 16px;display:block;color:currentColor;}
  .form-mobile-sticky-action__icon svg{width:100%;height:100%;display:block;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
  .location-reservation-form-section,.rental-quote-section{scroll-margin-top:calc(var(--header-mobile,72px) + 16px);}
}


/* AV1.044 mobile opening-hours 50/50 lock */
@media (max-width:760px){
  .table.table--hours{table-layout:fixed;width:100%;}
  .table.table--hours th,
  .table.table--hours td{
    display:table-cell!important;
    width:50%!important;
    padding:10px 0!important;
    text-align:left!important;
    vertical-align:middle;
  }
  .table.table--hours th{padding-right:8px!important;font-weight:600;}
  .table.table--hours td{padding-left:8px!important;font-weight:400;}
}








/* AV1.049 gallery reset to 3026 master structure */
:root{--thumb-width:116px;--thumb-width-mobile:92px;--panel-content-note:14px;--context-media-block-gap:22px;}
.badge{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:var(--radius);font-size:11px;line-height:1;letter-spacing:.02em;font-weight:600;}
.badge--navy{background:var(--navy);color:#fff;}
.supporting-note,.gallery-caption{margin-top:var(--panel-content-note);font-size:13px;line-height:1.7;color:rgba(24,33,45,.58);}
.gallery > .kicker{margin-bottom:0;}
.gallery > .component-title{margin-top:16px;}
.gallery > .component-title + .section-intro{margin-top:12px;}
.gallery .gallery-main{margin-top:var(--context-media-block-gap);}
.gallery-main{position:relative;aspect-ratio:16/10;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#edf1f4;}
.gallery-main img{width:100%;height:100%;object-fit:cover;display:block;}
.gallery-badge{position:absolute;left:14px;top:14px;z-index:2;}
.gallery-thumbs{display:grid;grid-auto-flow:column;grid-auto-columns:var(--thumb-width);overflow-x:auto;gap:10px;padding-top:var(--panel-content-note);padding-bottom:4px;scrollbar-width:none;}
.gallery-thumbs::-webkit-scrollbar{display:none;}
.gallery-thumb{appearance:none;border:1px solid transparent;border-radius:var(--radius);padding:0;background:none;cursor:pointer;overflow:hidden;min-width:var(--thumb-width);transition:border-color .18s ease,transform .18s ease;}
.gallery-thumb img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;}
.gallery-thumb.is-active,.gallery-thumb[aria-current="true"]{border-color:var(--gold);}
@media (hover:hover){.gallery-thumb:hover{transform:translateY(-1px);}}
@media (max-width:760px){.gallery-thumbs{grid-auto-columns:var(--thumb-width-mobile);}.gallery-thumb{min-width:var(--thumb-width-mobile);}}


/* AV1.050 facilities panel clean lock */
.location-facilities-section .facility.surface.surface-pad{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:var(--panel-pad,24px);overflow:hidden;}
.location-facilities-section .facility>.kicker{margin-bottom:0;}
.location-facilities-section .facility>.component-title{margin-top:var(--panel-kicker-title,16px);}
.location-facilities-section .facility>.component-title+.section-intro{margin-top:var(--panel-title-copy,12px);}
.location-facilities-section .facility-wrap{overflow:visible;padding-bottom:0;margin-top:var(--context-media-block-gap,var(--panel-copy-content,22px));}
.location-facilities-section .facility-table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;border-top:1px solid var(--line);}
.location-facilities-section .facility-table tr{border-bottom:1px solid var(--line);}
.location-facilities-section .facility-table th,.location-facilities-section .facility-table td{padding:10px 0;vertical-align:middle;text-align:left;border:0;font-size:14px;line-height:1.45;}
.location-facilities-section .facility-table th{width:38%;padding-right:18px;font-weight:600;color:var(--navy);white-space:normal;}
.location-facilities-section .facility-table td{width:62%;color:var(--text);white-space:normal;overflow-wrap:anywhere;word-break:normal;}
.location-facilities-section .facility-label{display:flex;align-items:center;gap:8px;min-width:0;}
.location-facilities-section .facility-label span:last-child{min-width:0;}
.location-facilities-section .facility-icon{width:18px;height:18px;flex:0 0 18px;color:var(--navy);opacity:.92;}
.location-facilities-section .facility-logo{width:18px;height:18px;flex:0 0 18px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border-radius:var(--radius);background:transparent;}
.location-facilities-section .facility-logo-img{display:block;width:100%;height:100%;object-fit:contain;}
.location-facilities-section .facility-note.supporting-note{margin-top:var(--panel-content-note,14px);font-size:13px;line-height:1.7;color:rgba(24,33,45,.58);}
@media (max-width:760px){.location-facilities-section .facility.surface.surface-pad{padding:var(--panel-pad-mobile,16px)}.location-facilities-section .facility-table{min-width:0}.location-facilities-section .facility-table th,.location-facilities-section .facility-table td{display:table-cell;padding:10px 0;font-size:13px;line-height:1.45;text-align:left}.location-facilities-section .facility-table th{width:42%;padding-right:12px}.location-facilities-section .facility-table td{width:58%}.location-facilities-section .facility-label{gap:8px}.location-facilities-section .facility-icon,.location-facilities-section .facility-logo{width:18px;height:18px;flex-basis:18px}}


/* AV1.054 location FAQ blue component */
.location-faq-section .location-faq-panel{overflow:hidden;}
.location-faq-section .location-faq-panel>.kicker{margin-bottom:0;}
.location-faq-section .location-faq-panel>.component-title{margin-top:var(--panel-kicker-title,16px);color:#fff;}
.location-faq-section .location-faq-panel>.component-title+.section-intro{margin-top:var(--panel-title-copy,12px);color:rgba(255,255,255,.78);}
.location-faq-section .faq-list{display:grid;gap:12px;margin-top:var(--panel-copy-content,22px);}
.location-faq-section .faq-item{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);border-radius:var(--radius);padding:0 20px;}
.location-faq-section .faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 0;border:0;background:transparent;color:#fff;text-align:left;cursor:pointer;font-size:16px;font-weight:600;line-height:1.45;}
.location-faq-section .faq-question span:first-child{min-width:0;color:#fff;font-weight:600;}
.location-faq-section .faq-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid rgba(255,255,255,.22);border-radius:999px;flex:0 0 28px;color:rgba(255,255,255,.56);font-size:18px;font-weight:500;line-height:1;transition:transform .2s ease;}
.location-faq-section .faq-icon::before{content:"+";}
.location-faq-section .faq-item.is-open .faq-icon{transform:rotate(45deg);}
.location-faq-section .faq-answer{padding:0 0 18px;max-width:860px;color:#fff;font-size:14px;line-height:1.8;}
.location-faq-section .faq-answer p{margin:0;color:#fff;}
.location-faq-section .faq-answer p+p{margin-top:12px;}
@media (max-width:760px){.location-faq-section .location-faq-panel{padding:var(--surface-roomy-mobile,22px)}.location-faq-section .location-faq-panel>.component-title{margin-top:var(--panel-kicker-title,16px)}.location-faq-section .location-faq-panel>.component-title+.section-intro{margin-top:var(--panel-title-copy,12px)}.location-faq-section .faq-list{margin-top:var(--panel-block-gap-mobile,18px)}.location-faq-section .faq-item{padding:0 16px}.location-faq-section .faq-question{gap:14px;padding:16px 0;font-size:15px}.location-faq-section .faq-answer{padding:0 0 16px;font-size:14px;line-height:1.75}.location-faq-section .faq-icon{width:26px;height:26px;flex-basis:26px;font-size:17px}}

/* AV2.023 desktop opening-hours 50/50 lock */
@media (min-width:761px){
  .table.table--hours{table-layout:fixed;width:100%;}
  .table.table--hours th,
  .table.table--hours td{
    width:50%!important;
    text-align:left!important;
    vertical-align:middle;
  }
  .table.table--hours th{padding-right:22px!important;font-weight:600;}
  .table.table--hours td{padding-left:22px!important;font-weight:400;}
}

/* AV1.058: location secondary text block uses the same desktop shell width as review/visit panels. Mobile remains untouched. */
@media (min-width:761px){
  .single-location .article-content-section .container{
    width:var(--av-desktop-shell);
    max-width:none;
    margin-left:auto;
    margin-right:auto;
    padding-left:0;
    padding-right:0;
  }
  .single-location .article-content.rich-copy,
  .single-location .article-content > .av1-content-block,
  .single-location .article-content > .wp-block-group.av1-content-block{
    width:100%;
    max-width:100%;
  }
}

/* AV1.059: secondary location text block after review uses the exact same desktop shell as review and visit panels. Mobile remains untouched. */
@media (min-width:761px){
  .single-location .location-secondary-content-section .container{
    width:var(--av-desktop-shell);
    max-width:none;
    margin-left:auto;
    margin-right:auto;
    padding-left:0;
    padding-right:0;
  }
  .single-location .location-secondary-content-section .article-content{
    display:block;
    width:100%;
    max-width:none;
    margin:0;
  }
  .single-location .location-secondary-content-section .article-content > .av1-content-block,
  .single-location .location-secondary-content-section .article-content > .wp-block-group.av1-content-block{
    width:100%;
    max-width:none;
    margin:0;
  }
}
/* AV1.060 mobile gallery: show only the image slider box, no copy/header text */
@media (max-width:760px){
  #location-image-gallery > .container > .section-header,
  .location-image-gallery-shortcode > .container > .section-header{
    display:none;
  }
  #location-image-gallery .gallery > .kicker,
  #location-image-gallery .gallery > .component-title,
  #location-image-gallery .gallery > .section-intro,
  #location-image-gallery .gallery-caption,
  #location-image-gallery .gallery-badge,
  .location-image-gallery-shortcode .gallery > .kicker,
  .location-image-gallery-shortcode .gallery > .component-title,
  .location-image-gallery-shortcode .gallery > .section-intro,
  .location-image-gallery-shortcode .gallery-caption,
  .location-image-gallery-shortcode .gallery-badge{
    display:none !important;
  }
  #location-image-gallery .gallery,
  .location-image-gallery-shortcode .gallery{
    padding-top:var(--panel-pad-mobile,16px);
  }
  #location-image-gallery .gallery .gallery-main,
  .location-image-gallery-shortcode .gallery .gallery-main{
    margin-top:0;
  }
}


/* AV1.061 blog gallery: same visual system as location gallery */
@media (max-width:760px){
  #blog-image-gallery > .container > .section-header,
  .blog-image-gallery-shortcode > .container > .section-header,
  #blog-image-gallery .gallery > .kicker,
  #blog-image-gallery .gallery > .component-title,
  #blog-image-gallery .gallery > .section-intro,
  #blog-image-gallery .gallery-caption,
  #blog-image-gallery .gallery-badge,
  .blog-image-gallery-shortcode .gallery > .kicker,
  .blog-image-gallery-shortcode .gallery > .component-title,
  .blog-image-gallery-shortcode .gallery > .section-intro,
  .blog-image-gallery-shortcode .gallery-caption,
  .blog-image-gallery-shortcode .gallery-badge{
    display:none !important;
  }
  #blog-image-gallery .gallery,
  .blog-image-gallery-shortcode .gallery{padding:0;background:transparent;border:0;box-shadow:none;}
  #blog-image-gallery .gallery .gallery-main,
  .blog-image-gallery-shortcode .gallery .gallery-main{margin-top:0;}
}


/* AV1.062 blog gallery content slider fix */
.blog-gallery-group + .blog-gallery-group{margin-top:24px;}
@media (max-width:760px){
  #blog-image-gallery > .container > .section-header,
  .blog-image-gallery-shortcode > .container > .section-header,
  #blog-image-gallery .gallery > .kicker,
  #blog-image-gallery .gallery > .component-title,
  #blog-image-gallery .gallery > .section-intro,
  #blog-image-gallery .gallery-caption,
  #blog-image-gallery .gallery-badge,
  .blog-image-gallery-shortcode .gallery > .kicker,
  .blog-image-gallery-shortcode .gallery > .component-title,
  .blog-image-gallery-shortcode .gallery > .section-intro,
  .blog-image-gallery-shortcode .gallery-caption,
  .blog-image-gallery-shortcode .gallery-badge{
    display:none !important;
  }
  #blog-image-gallery .gallery,
  .blog-image-gallery-shortcode .gallery{padding:0;background:transparent;border:0;box-shadow:none;}
  #blog-image-gallery .gallery .gallery-main,
  .blog-image-gallery-shortcode .gallery .gallery-main{margin-top:0;}
}

/* AV1.063 homepage FAQ uses the same dark accordion system as location detail FAQ */
.home-faq-section.location-faq-section .home-faq-panel{overflow:hidden;}
.home-faq-section.location-faq-section .faq-answer .rich-copy,
.home-faq-section.location-faq-section .faq-answer{color:#fff;}
.home-seo-section .section-intro{margin-top:12px;}


/* AV1.051 reusable logo slider component: partner ticker design from 3026.html */
:root{
  --partner-rail-pad-bottom:32px;
  --partner-rail-pad-bottom-mobile:24px;
}
.partner-ticker-section,
.logo-slider-section.partner-ticker-section{
  background:var(--navy);
  color:#fff;
  margin-top:var(--section-y);
  padding:var(--section-y) 0 0;
  overflow:hidden;
}
.logo-slider-section.partner-ticker-section.page-section{
  padding-top:var(--section-y);
}
.partner-ticker-section .container{
  position:relative;
  z-index:1;
}
.partner-ticker-section :is(.section-title,.component-title,.section-intro){
  color:#fff;
}
.partner-ticker-section .section-intro{
  color:rgba(255,255,255,.78);
}
.partner-ticker-rail,
.logo-slider-shell.partner-ticker-rail{
  overflow-x:hidden;
  overflow-y:hidden;
  scrollbar-width:auto;
  padding:0 0 var(--partner-rail-pad-bottom);
  border:0;
  border-radius:0;
  background:transparent;
  margin-top:24px;
  position:relative;
}
.partner-ticker-track,
.logo-slider-track.partner-ticker-track{
  display:flex;
  width:max-content;
  animation:partnerTicker 42s linear infinite;
  will-change:transform;
}
.partner-ticker-section:hover .partner-ticker-track,
.logo-slider-section:hover .logo-slider-track{
  animation-play-state:paused;
}
.partner-ticker-group,
.logo-slider-group.partner-ticker-group{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}
.partner-ticker-item,
.logo-slider-card.partner-ticker-item{
  width:auto;
  min-width:190px;
  height:88px;
  padding:0 28px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  color:rgba(255,255,255,.92);
  font-size:22px;
  line-height:1;
  font-weight:800;
  letter-spacing:-.035em;
  text-transform:uppercase;
  border-left:1px solid rgba(255,255,255,.12);
  white-space:nowrap;
  text-decoration:none;
  background:transparent;
  border-top:0;
  border-right:0;
  border-bottom:0;
  border-radius:0;
  filter:none;
  opacity:1;
  transition:color .18s ease,opacity .18s ease;
}
.partner-ticker-item--serif{
  font-family:var(--font-display);
  font-weight:400;
  font-size:28px;
  letter-spacing:-.04em;
  text-transform:none;
}
.partner-ticker-item--wide{
  min-width:230px;
}
.partner-ticker-item--image{
  min-width:190px;
}
.logo-slider-card--link.partner-ticker-item:hover{
  color:#fff;
  opacity:.82;
}
.logo-slider-text{
  display:block;
  color:inherit;
  font:inherit;
  letter-spacing:inherit;
  text-transform:inherit;
  text-align:center;
  line-height:inherit;
}
.logo-slider-image{
  display:block;
  max-width:140px;
  max-height:44px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.logo-slider-svg{
  display:flex;
  align-items:center;
  justify-content:center;
  max-width:140px;
  max-height:44px;
  color:currentColor;
}
.logo-slider-svg svg{
  display:block;
  max-width:140px;
  max-height:44px;
  width:auto;
  height:44px;
}
.logo-slider-svg :is(path,rect,circle,ellipse,polygon,polyline,line){
  vector-effect:non-scaling-stroke;
}
@keyframes partnerTicker{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}
@media (max-width:760px){
  .partner-ticker-section,
  .logo-slider-section.partner-ticker-section{
    margin-top:var(--section-y-mobile);
    padding:var(--section-y-mobile) 0 0;
  }
  .logo-slider-section.partner-ticker-section.page-section{
    padding-top:var(--section-y-mobile);
  }
  .partner-ticker-rail,
  .logo-slider-shell.partner-ticker-rail{
    padding-bottom:var(--partner-rail-pad-bottom-mobile);
    margin-top:24px;
  }
  .partner-ticker-track,
  .logo-slider-track.partner-ticker-track{
    animation-duration:36s;
  }
  .partner-ticker-group,
  .logo-slider-group.partner-ticker-group{
    gap:6px;
  }
  .partner-ticker-item,
  .logo-slider-card.partner-ticker-item{
    min-width:150px;
    height:74px;
    padding:0 22px;
    font-size:17px;
  }
  .partner-ticker-item--serif{
    font-size:23px;
  }
  .partner-ticker-item--wide{
    min-width:180px;
  }
  .logo-slider-image,
  .logo-slider-svg,
  .logo-slider-svg svg{
    max-width:112px;
    max-height:36px;
  }
}
@media (prefers-reduced-motion:reduce){
  .partner-ticker-rail,
  .logo-slider-shell.partner-ticker-rail{
    overflow-x:auto;
    scrollbar-width:none;
  }
  .partner-ticker-rail::-webkit-scrollbar{
    display:none;
  }
  .partner-ticker-track,
  .logo-slider-track.partner-ticker-track{
    animation:none;
  }
}


/* AV1.053 logo slider homepage placement: between blog and location sliders */
.logo-slider-section .logo-slider-section-head{
  grid-template-columns:minmax(0,1fr);
  align-items:start;
}
.logo-slider-section .logo-slider-section-head .section-copy{
  width:100%;
}


/* AV1.054 logo slider heading alignment lock: match Our Choice slider left edge */
@media (min-width:761px){
  .logo-slider-section .logo-slider-section-head{
    width:80vw !important;
    max-width:none !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
    display:grid;
    grid-template-columns:minmax(0,1fr);
    align-items:start;
    text-align:left;
  }
  .logo-slider-section .logo-slider-section-head .section-copy,
  .logo-slider-section .logo-slider-section-head .section-header,
  .logo-slider-section .logo-slider-section-head .section-head{
    width:100%;
    max-width:none;
    text-align:left;
    justify-content:flex-start;
  }
}
@media (max-width:760px){
  .logo-slider-section .logo-slider-section-head{
    width:100%;
    margin-left:0;
    margin-right:0;
    padding-left:var(--shell-x-mobile);
    padding-right:var(--shell-x-mobile);
    text-align:left;
  }
}

/* AV1.057 Events overview */
.event-card .card-date{margin-top:8px;text-align:left;white-space:normal;color:rgba(24,33,45,.58);}
.event-card .card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:auto;padding-top:14px;}
.event-grid .event-card.ui-card{width:100%;min-width:0;}
.event-detail .card-actions{display:flex;flex-wrap:wrap;gap:12px;}
@media (max-width:760px){.event-grid .event-card.ui-card{width:calc((100vw - var(--shell-x-mobile) - 24px) * .75);min-width:280px;}.event-card .card-actions{gap:10px;margin-top:12px;padding-top:0;}}

.event-card .image-tags{position:absolute;left:12px;top:12px;z-index:2;display:flex;gap:8px;flex-wrap:wrap;max-width:calc(100% - 24px);align-items:flex-start;}
.event-card .image-tag{background:var(--navy);color:#fff;}

/* Event intro block: scoped to the event detail page and built on the shared theme tokens. */
.event-intro-block{
  background:var(--navy);
  border-color:rgba(255,255,255,.10);
  overflow:hidden;
}

.event-intro-block__inner{
  padding:var(--surface-roomy);
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  gap:30px;
  align-items:start;
}

.event-intro-block__copy > .component-title{
  margin-top:var(--panel-kicker-title);
}

.event-intro-block__copy > .section-intro{
  margin-top:var(--panel-title-copy);
  max-width:640px;
}

.event-intro-tag{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  margin-top:18px;
  padding:0 10px;
  border-radius:var(--radius);
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:12px;
  line-height:1;
  letter-spacing:.04em;
  text-transform:uppercase;
  font-weight:600;
}

.event-intro-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.event-intro-card{
  min-width:0;
  padding:16px 16px 15px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:var(--radius);
  background:var(--blue-card-inner);
}

.event-intro-card--wide{
  grid-column:1 / -1;
}

.event-intro-label{
  display:block;
  margin:0 0 8px;
  font-size:11px;
  line-height:1.1;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:700;
  color:var(--gold);
}

.event-intro-value{
  margin:0;
  font-size:15px;
  line-height:1.55;
  color:#fff;
}

.event-intro-link{
  color:#fff;
  text-decoration:underline;
  text-underline-offset:3px;
}

.event-intro-rating-copy{
  font-size:14px;
  line-height:1.4;
  color:rgba(255,255,255,.82);
}

@media (max-width:900px){
  .event-intro-block__inner{
    grid-template-columns:1fr;
    gap:22px;
  }
}

@media (max-width:760px){
  .event-intro-block__inner{
    padding:var(--surface-roomy-mobile);
    gap:18px;
  }

  .event-intro-block__copy > .section-intro{
    font-size:15px;
    line-height:1.65;
  }

  .event-intro-grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .event-intro-card,
  .event-intro-card--wide{
    grid-column:auto;
  }

  .event-intro-value{
    font-size:14px;
  }
}

/* AV1.063 event detail clean layout + related events
   Hero is followed by TOC, big image, event overview details, one text block, visit details and related events.
   All event detail modules use the same shell width and the event rating row is one horizontal line. */
.single-event .article-toc-section .container,
.single-event .article-featured-image-section .container,
.single-event .event-intro-section .container,
.single-event .article-content-section .container{
  width:var(--av-desktop-shell);
  max-width:none;
  margin-left:auto;
  margin-right:auto;
  padding-left:0;
  padding-right:0;
}
.single-event .article-toc,
.single-event .article-featured-image,
.single-event .event-intro-block,
.single-event .article-content.rich-copy,
.single-event .article-content > .av1-content-block,
.single-event .article-content > .wp-block-group.av1-content-block{
  width:100%;
  max-width:100%;
  margin-left:0;
  margin-right:0;
}
.single-event .article-content.rich-copy{
  display:grid;
  gap:24px;
}
.single-event .article-content > :where(.av1-content-block,.wp-block-group.av1-content-block){
  width:100%;
  max-width:100%;
}
.single-event .event-intro-rating{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:nowrap;
  min-height:22px;
  white-space:nowrap;
}
.single-event .event-intro-rating .symbols{
  display:flex;
  align-items:center;
  gap:5px;
  flex:0 0 auto;
  line-height:1;
}
.single-event .event-intro-rating .symbol,
.single-event .event-intro-rating .symbol-half{
  display:inline-block;
  flex:0 0 auto;
  font-size:18px;
  line-height:1;
  color:rgba(255,255,255,.20);
}
.single-event .event-intro-rating .symbol.is-active{
  color:var(--gold);
}
.single-event .event-intro-rating .symbol-half{
  position:relative;
}
.single-event .event-intro-rating .symbol-half::before{
  content:"★";
  position:absolute;
  inset:0 auto 0 0;
  width:50%;
  overflow:hidden;
  color:var(--gold);
}
.single-event .event-intro-rating-copy{
  flex:0 0 auto;
  color:rgba(255,255,255,.82);
}
@media (max-width:760px){
  .single-event .article-toc-section .container,
  .single-event .article-featured-image-section .container,
  .single-event .event-intro-section .container,
  .single-event .article-content-section .container{
    width:100%;
    max-width:100%;
    padding-left:var(--shell-x-mobile);
    padding-right:var(--shell-x-mobile);
  }
  .single-event .article-content.rich-copy{
    gap:18px;
  }
  .single-event .event-intro-rating .symbol,
  .single-event .event-intro-rating .symbol-half{
    font-size:17px;
  }
}



/* AV1.066 homepage blue Our Choice events slider from the 3026 blue event-card variant. */
.card--dark{
  background:var(--blue-card-soft);
  border-color:rgba(255,255,255,.12);
  color:#fff;
}
.card--dark .card-body{
  background:var(--blue-card-soft);
}
.card--dark :is(.card-title,.card-copy,.card-date,.meta-line,.action-link,.action-link--muted){
  color:#fff;
}
.card--dark :is(.card-date,.meta-line){
  color:rgba(255,255,255,.72);
}
.card--dark .action-sep{
  color:rgba(255,255,255,.54);
}
.card--dark .image-tag,
.card--dark .image-tag--badge{
  background:var(--blue-card);
  color:#fff;
}
.section--dark.home-events-section,
.section--dark.home-events-section .section-title,
.section--dark.home-events-section .section-intro{
  color:#fff;
}
.section--dark.home-events-section{
  background:var(--navy);
  margin-top:var(--section-y);
  padding-bottom:var(--section-y);
}
.section--dark.home-events-section .section-intro{
  color:rgba(255,255,255,.78);
}
.section--dark.home-events-section .slider-control{
  background:transparent;
  border-color:rgba(255,255,255,.24);
  color:#fff;
}
.section--dark.home-events-section .slider-control:hover{
  border-color:rgba(255,255,255,.42);
  background:rgba(255,255,255,.06);
}
.empty-state--dark{
  background:var(--blue-card-soft);
  border-color:rgba(255,255,255,.12);
  color:rgba(255,255,255,.78);
}
@media (max-width:760px){
  .section--dark.home-events-section{
    margin-top:var(--section-y-mobile);
    padding-bottom:var(--section-y-mobile);
  }
}


/* AV1.069 reusable newsletter component from 3026 shared panel/form system. */
.newsletter-section .newsletter-block{overflow:hidden;}
.newsletter-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:var(--layout-gap,18px);align-items:center;}
.newsletter-copy>.kicker{margin-bottom:0;}
.newsletter-copy>.component-title{margin-top:var(--panel-kicker-title,16px);color:#fff;}
.newsletter-copy>.component-title+.section-intro{margin-top:var(--panel-title-copy,12px);color:rgba(255,255,255,.78);}
.newsletter-form{display:grid;gap:12px;align-content:start;}
.field-input{width:100%;min-width:0;max-width:100%;min-height:50px;height:50px;padding:0 14px;border:1px solid rgba(24,33,45,.12);border-radius:var(--radius);background:#fff;color:var(--text);outline:none;box-shadow:none;font-size:14px;line-height:1.4;}
.field-input:focus{border-color:rgba(0,26,57,.28);}
.input--dark{border-color:rgba(255,255,255,.16);background:var(--blue-card-inner);color:#fff;}
.input--dark::placeholder{color:rgba(255,255,255,.72);}
.input--dark:focus{border-color:rgba(255,255,255,.28);background:var(--blue-card-inner);color:#fff;}
.button--primary{background:var(--gold);border-color:var(--gold);color:#fff;}
.button--full{width:100%;}
.newsletter-note{margin-top:2px;font-size:12px;line-height:1.6;color:rgba(255,255,255,.62);}
.newsletter-note--status{margin-top:0;padding:10px 12px;border-radius:var(--radius);background:rgba(255,255,255,.08);color:#fff;}
.newsletter-note--success{border:1px solid rgba(181,138,73,.55);}
.newsletter-note--error{border:1px solid rgba(255,255,255,.28);}
@media (max-width:760px){
  .newsletter-shell{grid-template-columns:1fr;gap:var(--panel-block-gap-mobile,18px);}
  .newsletter-form{gap:12px;}
  .field-input{min-height:48px;height:48px;}
}

/* AV1.071 rental overview/detail uses the shared property-card and article-content systems. */
.rental-grid .property-listing{width:100%;min-width:0}
.price-badge{position:absolute;right:12px;bottom:12px;z-index:2;display:inline-flex;align-items:baseline;gap:4px;padding:8px 10px;border-radius:var(--radius);background:var(--gold);color:#fff;font-size:13px;line-height:1;letter-spacing:.06em;text-transform:uppercase;font-weight:600;white-space:nowrap}
.price-badge small{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#fff;opacity:.92;font-weight:600}
.property-meta{margin:0 0 8px;font-size:11px;line-height:1.3;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--gold)}
.listing-location,.listing-price{margin:8px 0 0;min-height:1.4em;font-size:12px;line-height:1.4;letter-spacing:.04em;text-transform:uppercase;font-weight:600}
.listing-location{color:var(--gold)}
.listing-price{color:var(--navy)}
.property-amenities{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;margin-top:16px}
.property-amenity{display:flex;align-items:flex-start;gap:10px;min-width:0;width:100%;font-size:14px;line-height:1.45;color:var(--muted)}
.property-icon{flex:0 0 18px;width:18px;height:18px;margin-top:1px;color:var(--gold)}
.property-icon svg{width:100%;height:100%;display:block;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.property-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.property-actions .action-sep{color:#98a1aa;font-size:14px;line-height:1}
.property-actions .action-link--muted{font-weight:400;color:var(--muted)}
@media (max-width:760px){.price-badge,.price-badge small{font-size:12px}.property-amenities{gap:10px;margin-top:14px}.property-amenity,.property-actions .action-link{font-size:13px}}
.rental-category-card>a{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit}
.rental-detail-image .content-image__frame img{width:100%;height:100%;object-fit:cover}
.rental-detail-content .article-content{max-width:100%;margin:0}

/* AV1.073 rental detail layout parity.
   Keeps rental TOC, text blocks, amenities, gallery and image on the same shared shell width. */
.single-rental .article-toc-section .container,
.single-rental .article-featured-image-section .container,
.single-rental .article-content-section .container,
.single-rental .location-facilities-section .container,
.single-rental .rental-image-gallery-section .container{
  width:var(--av-desktop-shell);
  max-width:none;
  margin-left:auto;
  margin-right:auto;
  padding-left:0;
  padding-right:0;
}
.single-rental .article-toc,
.single-rental .article-featured-image,
.single-rental .article-content.rich-copy,
.single-rental .article-content > .av1-content-block,
.single-rental .article-content > .wp-block-group.av1-content-block,
.single-rental .location-facilities-section .facility.surface.surface-pad,
.single-rental .rental-image-gallery-section .gallery.surface.surface-pad{
  width:100%;
  max-width:100%;
  margin-left:0;
  margin-right:0;
}
.single-rental .article-content.rich-copy{
  display:grid;
  gap:24px;
}
.single-rental .article-content > :not(.av1-content-block):not(.wp-block-group.av1-content-block){
  max-width:100%;
  margin-left:0;
  margin-right:0;
}
.single-rental .article-content > :where(.av1-content-block,.wp-block-group.av1-content-block){
  width:100%;
  max-width:100%;
}
.single-rental .rental-image-gallery-section .section-header{
  width:100%;
  max-width:100%;
}
@media (max-width:760px){
  .single-rental .article-toc-section .container,
  .single-rental .article-featured-image-section .container,
  .single-rental .article-content-section .container,
  .single-rental .location-facilities-section .container,
  .single-rental .rental-image-gallery-section .container{
    width:100%;
    max-width:100%;
    padding-left:var(--shell-x-mobile);
    padding-right:var(--shell-x-mobile);
  }
  .single-rental .article-content.rich-copy{
    gap:18px;
  }
}

/* AV1.074 rental detail exact width lock.
   TOC, text blocks, amenities, gallery and image share the same rental-detail-shell and visible 100% panel width. */
.single-rental .rental-detail-shell{
  width:var(--av-desktop-shell)!important;
  max-width:none!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
.single-rental .rental-detail-shell > :where(.article-toc,.article-featured-image,.article-content,.facility,.gallery){
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box;
}
.single-rental .rental-detail-copy{
  display:grid;
  gap:24px;
}
.single-rental .rental-detail-copy > .rental-copy-block,
.single-rental .rental-detail-copy > .av1-content-block,
.single-rental .rental-detail-copy > .wp-block-group.av1-content-block{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box;
}
.single-rental .rental-detail-copy > :not(.av1-content-block):not(.wp-block-group.av1-content-block){
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}
.single-rental .rental-detail-copy .rental-copy-block > :first-child{margin-top:0;}
.single-rental .rental-detail-copy .rental-copy-block > :last-child{margin-bottom:0;}
@media (max-width:760px){
  .single-rental .rental-detail-shell{
    width:100%!important;
    max-width:100%!important;
    padding-left:var(--shell-x-mobile)!important;
    padding-right:var(--shell-x-mobile)!important;
  }
  .single-rental .rental-detail-copy{gap:18px;}
}

/* AV1.075 rental main facts component. Reuses rental-detail-shell, dark surface and existing rating-star logic. */
.single-rental .rental-facts-section .container{width:var(--av-desktop-shell);max-width:none;margin-left:auto;margin-right:auto;padding-left:0;padding-right:0;}
.single-rental .rental-facts-heading{width:100%;max-width:100%;}
.rental-facts-panel{width:100%;max-width:100%;padding:34px;box-sizing:border-box;overflow:hidden;}
.rental-facts-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.rental-fact-card{min-width:0;padding:16px 16px 15px;border:1px solid rgba(255,255,255,.10);border-radius:var(--radius);background:var(--blue-card-inner);}
.rental-fact-card--wide{grid-column:1 / -1;}
.rental-fact-label{display:block;margin:0 0 8px;font-size:11px;line-height:1.2;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--gold);}
.rental-fact-value{margin:0;font-size:15px;line-height:1.55;color:#fff;}
.rental-fact-value--price{font-family:var(--font-display);font-size:34px;line-height:1;letter-spacing:-.03em;color:#fff;}
.rental-fact-value--price small{font-family:var(--font-body);font-size:13px;letter-spacing:.08em;text-transform:uppercase;opacity:.92;font-weight:600;margin-left:6px;color:#fff;}
.rental-fact-rating{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:22px;}
.rental-fact-rating .rating-stars{font-size:18px;}
.rental-fact-rating .rating-stars:before{color:rgba(255,255,255,.20);}
.rental-fact-rating-copy{font-size:14px;line-height:1.4;color:rgba(255,255,255,.82);}
@media (max-width:760px){
  .single-rental .rental-facts-section{
    --cfg-page-section-padding-top:24px;
  }
  .single-rental .rental-facts-section .container{
    width:100%!important;
    max-width:100%!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }
  .single-rental .rental-facts-section .section-header{
    margin-bottom:0;
  }
  .single-rental .rental-facts-section .section-intro{
    max-width:none;
  }
  .single-rental .rental-facts-panel{
    padding:14px!important;
    margin-top:18px!important;
    border-radius:var(--radius);
  }
  .single-rental .rental-facts-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .single-rental .rental-fact-card{
    padding:11px 11px 10px!important;
    min-height:0!important;
  }
  .single-rental .rental-fact-card--wide{
    grid-column:1 / -1!important;
  }
  .single-rental .rental-fact-label{
    margin-bottom:5px!important;
    font-size:9px!important;
    line-height:1.15!important;
    letter-spacing:.16em!important;
  }
  .single-rental .rental-fact-value{
    font-size:13px!important;
    line-height:1.4!important;
  }
  .single-rental .rental-fact-value--price{
    font-size:26px!important;
    line-height:1!important;
  }
  .single-rental .rental-fact-value--price small{
    font-size:11px!important;
    letter-spacing:.08em!important;
    margin-left:4px!important;
  }
  .single-rental .rental-fact-rating{
    gap:6px!important;
    min-height:18px!important;
  }
  .single-rental .rental-fact-rating .rating-stars{
    font-size:15px!important;
  }
  .single-rental .rental-fact-rating-copy{
    font-size:12px!important;
    line-height:1.4!important;
  }
}

/* AV1.076 rental overview mobile cards.
   All-rentals and rental taxonomy grids are not sliders on mobile: use full-width stacked cards. */
@media (max-width:760px){
  .rental-grid-scroller{
    overflow:visible;
    margin-left:0;
    margin-right:0;
    padding-left:0;
    padding-right:0;
    scroll-padding-left:0;
    scroll-padding-right:0;
  }
  .rental-grid{
    display:grid;
    width:100%;
    grid-template-columns:1fr;
    gap:16px;
  }
  .rental-grid .ui-card,
  .rental-grid .property-listing,
  .rental-grid .rental-card{
    width:100%;
    min-width:0;
    max-width:none;
  }
  .rental-grid .property-listing .media{
    aspect-ratio:16 / 10;
  }
  .rental-grid .property-listing .image-tags{
    max-width:calc(100% - 24px);
    gap:6px;
  }
  .rental-grid .property-listing .image-tag{
    min-height:22px;
    padding:0 8px;
    font-size:10px;
  }
  .rental-grid .property-listing .price-badge{
    right:10px;
    bottom:10px;
    max-width:calc(100% - 20px);
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .rental-grid .property-listing .card-title{
    min-height:0;
  }
  .rental-grid .property-amenities{
    grid-template-columns:1fr 1fr;
    gap:10px;
  }
  .rental-grid .property-actions{
    align-items:flex-start;
    justify-content:flex-start;
  }
  .post-type-archive-rental .pagination-wrap,
  .tax-rental_categorie .pagination-wrap,
  .tax-rental_tag .pagination-wrap{
    display:flex;
    margin-top:28px;
  }
}

/* AV1.124 rental mobile overview pagination. Mobile rental archives show 50 stacked cards per page and keep pagination visible. */

/* AV1.086 contact page desktop equal column correction. */
.contact-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch;}
.contact-route-card{display:flex;flex-direction:column;min-width:0;width:100%;}
.contact-card-meta{margin:0 0 12px;color:var(--gold);}
.contact-card-title{font-size:clamp(24px,2.2vw,30px);line-height:1.08;}
.contact-card-copy{max-width:none;}
.contact-meta-list{display:grid;gap:8px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line);}
.contact-meta-list a,.contact-meta-list span{font-size:14px;line-height:1.55;font-weight:700;color:var(--navy);}
.contact-main-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start;}
.contact-main-grid > *{min-width:0;width:100%;}
.contact-form-card{min-width:0;}
.contact-form-intro{max-width:none;}
.contact-form{margin-top:24px;}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.field{display:flex;flex-direction:column;gap:8px;min-width:0;}
.field--full{grid-column:1/-1;}
.field-label{font-size:12px;line-height:1.4;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:rgba(24,33,45,.62);}
.field-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:42px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'><path d='M5 7.5l5 5 5-5' stroke='%23001A39' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 14px center;background-size:16px 16px;}
.field-textarea{min-height:180px;height:auto;padding-top:12px;padding-bottom:12px;resize:vertical;line-height:1.65;}
.form-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:24px;padding-top:18px;border-top:1px solid var(--line);}
.fineprint{margin:0;max-width:430px;font-size:13px;line-height:1.7;color:rgba(24,33,45,.64);}
.form-status{margin-top:18px;padding:12px 14px;border-radius:var(--radius);font-size:14px;line-height:1.55;}
.form-status--success{background:rgba(181,138,73,.12);border:1px solid rgba(181,138,73,.32);color:var(--navy);}
.form-status--error{background:rgba(0,26,57,.06);border:1px solid var(--line-strong);color:var(--navy);}
.contact-map-card{overflow:hidden;}
.contact-map-frame{background:#e9eef3;}
.contact-map-frame iframe{display:block;width:100%;min-height:540px;border:0;background:#e9eef3;}
.contact-map-copy{border-top:1px solid var(--line);}
.contact-map-copy .meta-line{display:block;margin:0 0 8px;color:var(--gold);}
.contact-map-copy p{margin:0;font-size:15px;line-height:1.76;color:var(--muted);}
@media (max-width:980px){.contact-main-grid{grid-template-columns:1fr;}}
@media (max-width:760px){.contact-route-grid{grid-template-columns:1fr;gap:16px;}.contact-main-grid{gap:18px;}.field-grid{grid-template-columns:1fr;gap:14px;}.form-actions{flex-direction:column;align-items:stretch;gap:12px;}.fineprint{max-width:none;}.contact-map-frame iframe{min-height:380px;}.contact-card-title{font-size:24px;}.field-textarea{min-height:150px;}}

/* AV1.083 advertise page rebuilt into shared section/card/form/modal system. */
.advertise-intro-card{overflow:hidden;}
.advertise-intro-grid{display:grid;grid-template-columns:1.1fr .9fr;min-height:320px;}
.advertise-intro-copy{min-width:0;}
.advertise-intro-title{font-size:clamp(38px,4.6vw,58px);line-height:.96;max-width:9ch;}
.advertise-intro-text{max-width:58ch;}
.advertise-pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;}
.advertise-pill-row span{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.72);font-size:13px;line-height:1.2;color:var(--navy);}
.advertise-intro-side{display:flex;flex-direction:column;justify-content:space-between;gap:24px;border-radius:0;border:0;background:linear-gradient(180deg,var(--navy) 0%,#182844 100%);}
.advertise-stat-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.advertise-stat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);padding:16px 14px;}
.advertise-stat strong{display:block;font-family:var(--font-display);font-weight:400;font-size:28px;line-height:1;letter-spacing:-.04em;color:#fff;}
.advertise-stat span{display:block;margin-top:6px;font-size:13px;line-height:1.5;color:rgba(255,255,255,.76);}
.advertise-plan-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch;}
.advertise-plan{position:relative;overflow:hidden;display:flex;flex-direction:column;min-width:0;}
.advertise-plan.is-featured{transform:translateY(-8px);border-color:rgba(181,138,73,.34);}
.advertise-plan-badge{position:absolute;top:12px;right:12px;z-index:2;font-size:10px;letter-spacing:.12em;text-transform:uppercase;}
.advertise-plan-head{padding:22px 18px 16px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.72);}
.advertise-plan-head .component-title{font-size:34px;line-height:1.02;}
.advertise-plan-head .section-intro{min-height:96px;font-size:14px;line-height:1.7;max-width:none;}
.advertise-price-wrap{padding:18px 18px 0;}
.advertise-price{display:flex;align-items:flex-end;gap:6px;flex-wrap:wrap;}
.advertise-price strong{font-family:var(--font-display);font-weight:400;letter-spacing:-.04em;color:var(--navy);font-size:42px;line-height:.92;}
.advertise-price span{font-size:14px;line-height:1.4;color:var(--muted);padding-bottom:4px;}
.advertise-cta-wrap{padding:14px 18px 18px;}
.advertise-includes{padding:18px;border-top:1px solid var(--line);background:rgba(245,240,231,.74);flex:1;}
.advertise-includes h4{margin:0 0 12px;font-family:var(--font-display);font-weight:400;font-size:18px;line-height:1.08;letter-spacing:-.04em;color:var(--navy);}
.advertise-features{list-style:none;padding:0;margin:0;display:grid;gap:10px;}
.advertise-features li{position:relative;padding-left:18px;font-size:14px;line-height:1.65;color:var(--muted);}
.advertise-features li::before{position:absolute;left:0;top:0;font-size:12px;font-weight:700;}
.advertise-features li.is-included::before{content:'✓';color:var(--gold);}
.advertise-features li.is-excluded::before{content:'×';color:#b24343;}
.advertise-comparison-card{overflow:hidden;}
.advertise-comparison-head{border-bottom:1px solid var(--line);}
.advertise-table-scroll{overflow-x:auto;}
.advertise-comparison-table{min-width:900px;border-top:0;border-bottom:0;}
.advertise-comparison-table th,.advertise-comparison-table td{padding:16px 18px;text-align:left;vertical-align:top;}
.advertise-comparison-table th{font-size:12px;line-height:1.35;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);font-weight:700;background:rgba(245,240,231,.55);}
.advertise-comparison-table td{font-size:14px;line-height:1.65;color:var(--muted);}
.advertise-comparison-table td:first-child{color:var(--navy);font-weight:600;width:26%;}
.advertise-comparison-table .advertise-comparison-status{color:var(--navy);font-weight:600;}
.advertise-comparison-table .advertise-comparison-status.is-no{color:#b24343;font-weight:700;}
.advertise-comparison-table .advertise-comparison-accent{color:var(--gold);font-weight:700;}
.advertise-status-mark{display:inline-flex;align-items:center;justify-content:center;min-width:1.2em;margin-right:6px;font-weight:800;line-height:1;color:currentColor;}

.advertise-info-band{overflow:hidden;}
.advertise-info-grid{display:grid;grid-template-columns:1fr 1fr;}
.advertise-info-main{border-right:1px solid rgba(255,255,255,.12);}
.advertise-info-list{columns:2;column-gap:28px;margin:18px 0 0;padding:0;list-style:none;}
.advertise-info-list li{break-inside:avoid;position:relative;margin:0 0 10px;padding-left:18px;color:rgba(255,255,255,.84);font-size:14px;line-height:1.6;}
.advertise-info-list li::before{content:'•';position:absolute;left:0;top:0;color:var(--gold);}
.advertise-modal{position:fixed;inset:0;display:none;z-index:2000;}
.advertise-modal.is-open{display:block;}
.advertise-modal-backdrop{position:absolute;inset:0;background:rgba(24,33,45,.55);}
.advertise-modal-panel{position:relative;z-index:1;max-width:980px;margin:4vh auto;background:var(--paper);border-radius:var(--radius);box-shadow:0 28px 80px rgba(10,16,24,.22);overflow:hidden;border:1px solid rgba(24,33,45,.12);}
.advertise-modal-grid{display:grid;grid-template-columns:.88fr 1.12fr;}
.advertise-modal-side{border-radius:0;}
.advertise-modal-side .component-title{font-size:38px;line-height:.98;}
.advertise-contact-list{margin-top:22px;display:grid;gap:12px;}
.advertise-contact-item{padding:12px 14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.08);border-radius:var(--radius);}
.advertise-contact-item strong{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#d8bb8b;}
.advertise-contact-item span{display:block;margin-top:4px;font-size:15px;color:#fff;word-break:break-word;}
.advertise-modal-form{position:relative;background:var(--paper);}
.advertise-modal-close{position:absolute;top:14px;right:14px;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);cursor:pointer;font-size:18px;line-height:1;z-index:2;}
.advertise-selected-package{margin-top:18px;padding:12px 14px;border:1px solid rgba(181,138,73,.24);background:rgba(181,138,73,.08);border-radius:var(--radius);}
.advertise-selected-package strong{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);}
.advertise-selected-package span{display:block;margin-top:6px;font-size:16px;line-height:1.35;color:var(--navy);font-weight:600;}
.advertise-enquiry-form{margin-top:18px;}
body.av1-advertise-modal-open{overflow:hidden;}
@media (max-width:1100px){.advertise-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.advertise-plan.is-featured{transform:none;}.advertise-intro-grid,.advertise-info-grid,.advertise-modal-grid{grid-template-columns:1fr;}.advertise-info-main{border-right:0;border-bottom:1px solid rgba(255,255,255,.12);}}
@media (max-width:720px){.advertise-intro-copy,.advertise-intro-side{padding:22px 18px;}.advertise-intro-title{font-size:42px;max-width:none;}.advertise-plan-grid{grid-template-columns:1fr;gap:14px;}.advertise-plan-head{padding:18px 16px 14px;}.advertise-plan-head .component-title{font-size:30px;}.advertise-plan-head .section-intro{min-height:0;}.advertise-price-wrap{padding:16px 16px 0;}.advertise-cta-wrap,.advertise-includes{padding-left:16px;padding-right:16px;}.advertise-comparison-head{padding:20px 16px 16px;}.advertise-comparison-table th,.advertise-comparison-table td{padding:14px 12px;}.advertise-info-list{columns:1;}.advertise-modal-panel{margin:0;min-height:100vh;border-radius:0;overflow:auto;}.advertise-modal-side,.advertise-modal-form{padding:22px 18px;}.advertise-modal-side .component-title,.advertise-modal-form .component-title{font-size:30px;}.advertise-submit-row .button{width:100%;}}

/* AV1.085 advertise modal: real scroll container, clickable fields and corrected gold/navy colouring. */
.advertise-modal{
  overflow-x:hidden;
  overflow-y:auto;
  padding:4vh var(--shell-x);
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
}
.advertise-modal.is-open{
  display:block;
}
.advertise-modal-backdrop{
  position:fixed;
  z-index:0;
}
.advertise-modal-panel{
  position:relative;
  z-index:2;
  margin:0 auto;
  max-height:none;
  overflow:visible;
}
.advertise-modal-grid{
  min-height:0;
}
.advertise-modal-form,
.advertise-modal-side{
  min-width:0;
}
.advertise-modal-form{
  z-index:3;
}
.advertise-modal input,
.advertise-modal select,
.advertise-modal textarea,
.advertise-modal button{
  pointer-events:auto;
}
.advertise-modal .field-label,
.advertise-selected-package strong,
.advertise-contact-item strong,
.advertise-modal-side .kicker{
  color:var(--gold);
}
.advertise-modal-form .component-title{
  color:var(--navy);
}
.advertise-modal-form .section-intro,
.advertise-modal-form .fineprint{
  color:var(--muted);
}
.advertise-modal .field-input,
.advertise-modal .field-select,
.advertise-modal .field-textarea{
  background:#fff;
  color:var(--navy);
  border-color:var(--line-strong);
}
.advertise-modal .field-input:focus,
.advertise-modal .field-select:focus,
.advertise-modal .field-textarea:focus{
  border-color:rgba(181,138,73,.72);
  box-shadow:0 0 0 3px rgba(181,138,73,.12);
}
.advertise-modal .button--primary{
  background:var(--gold);
  border-color:var(--gold);
  color:#fff;
}
@media (max-width:720px){
  .advertise-modal{
    padding:0;
  }
  .advertise-modal-panel{
    min-height:100svh;
    width:100%;
  }
  .advertise-modal-grid{
    min-height:100svh;
  }
  .advertise-modal-side{
    border-bottom:1px solid rgba(255,255,255,.12);
  }
  .advertise-modal-form{
    padding-bottom:calc(var(--section-y-mobile) + env(safe-area-inset-bottom));
  }
}

/* AV1.087 advertise cleanup: single intro block, full-width desktop comparison, single-line modal button. */
.advertise-intro-grid--single{
  display:block;
  min-height:0;
}
.advertise-intro-grid--single .advertise-intro-copy{
  width:100%;
}
.advertise-intro-grid--single .advertise-intro-title{
  max-width:none;
}
.advertise-intro-grid--single .advertise-intro-text{
  max-width:none;
}
@media (min-width:900px){
  .advertise-table-scroll{
    overflow-x:visible;
  }
  .advertise-comparison-table{
    width:100%;
    min-width:0;
    table-layout:fixed;
  }
  .advertise-comparison-table th:first-child,
  .advertise-comparison-table td:first-child{
    width:28%;
    text-align:left;
  }
  .advertise-comparison-table th:not(:first-child),
  .advertise-comparison-table td:not(:first-child){
    width:18%;
    text-align:center;
  }
  .advertise-comparison-table .advertise-comparison-status{
    white-space:normal;
  }
  .advertise-comparison-table .advertise-comparison-status > span:last-child{
    display:inline;
  }
  .advertise-status-mark{
    margin-right:5px;
  }
  .advertise-modal .advertise-submit-row .button{
    white-space:nowrap;
    flex:0 0 auto;
    width:auto;
    min-width:max-content;
  }
}
@media (max-width:720px){
  .advertise-intro-grid--single .advertise-intro-title,
  .advertise-intro-grid--single .advertise-intro-text{
    max-width:none;
  }
}

/* AV1.088 event submission page: contact-style form, clear required logic and draft event upload flow. */
.event-submit-grid{align-items:start;}
.event-submit-form-card,.event-submit-guidance-card{min-width:0;width:100%;}
.event-submit-step{margin-top:var(--panel-copy-content);padding-top:var(--panel-content-note);border-top:1px solid var(--line);}
.event-submit-step:first-of-type{margin-top:var(--panel-copy-content);}
.event-submit-step-title{margin:0;font-family:var(--font-display);font-weight:400;letter-spacing:-.04em;color:var(--navy);font-size:24px;line-height:1.12;}
.event-submit-step-help{margin:8px 0 16px;max-width:66ch;}
.event-submit-form .help{font-size:12px;line-height:1.6;color:rgba(24,33,45,.56);font-style:italic;}
.event-submit-form .field .help{margin:0;}
.event-description-field{min-height:220px;}
.event-word-count{font-weight:700;color:#b24343!important;font-style:normal!important;}
.event-word-count.is-valid{color:var(--green)!important;}
.event-upload-input{height:auto;min-height:var(--control-h-form);padding:12px 14px;background:#fff;}
.event-submit-disclaimer-box{margin-top:var(--panel-copy-content);background:rgba(181,138,73,.08);border-color:rgba(181,138,73,.22);}
.event-submit-disclaimer-box .meta-line{display:block;margin:0 0 8px;color:var(--gold);}
.event-submit-disclaimer-box p{margin:0;font-size:14px;line-height:1.72;color:var(--muted);}
.event-submit-guidance-card{position:sticky;top:calc(var(--header-desktop) + 24px);}
.event-submit-guidance-list{margin-top:var(--panel-copy-content);}
.event-submit-required-card{margin-top:var(--panel-copy-content);background:rgba(0,26,57,.04);}
.event-submit-required-card .meta-line{display:block;margin:0 0 10px;color:var(--gold);}
.form-status{border-left:4px solid var(--gold);}
.form-status strong{display:block;margin:0 0 6px;color:var(--navy);}
.form-status p{margin:0;color:var(--muted);font-size:14px;line-height:1.7;}
.form-status--success{border-left-color:var(--green);}
.form-status--error{border-left-color:#b24343;}
@media (max-width:980px){.event-submit-guidance-card{position:static;}}
@media (max-width:760px){.event-submit-step-title{font-size:22px;}.event-description-field{min-height:190px;}.event-submit-actions .button{width:100%;}.event-submit-disclaimer-box{padding:var(--panel-pad-mobile);}}

/* AV1.089 event submission refinements: multiday dates, no overflow on mobile date/time fields. */
.event-submit-time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0;}
.event-submit-form input[type="date"],
.event-submit-form input[type="time"]{width:100%;min-width:0;max-width:100%;box-sizing:border-box;}
.event-submit-form input[type="date"]::-webkit-date-and-time-value,
.event-submit-form input[type="time"]::-webkit-date-and-time-value{text-align:left;}
@media (max-width:760px){
  .event-submit-time-grid{grid-template-columns:1fr;gap:14px;}
  .event-submit-form .field-grid{grid-template-columns:minmax(0,1fr);}
  .event-submit-form .field,
  .event-submit-form .field--full,
  .event-submit-date-field{min-width:0;width:100%;max-width:100%;}
  .event-submit-form input[type="date"],
  .event-submit-form input[type="time"]{height:48px;min-height:48px;padding-left:12px;padding-right:10px;font-size:14px;appearance:auto;-webkit-appearance:auto;}
}

/* AV1.090 event submission fixes: robust mobile date/time sizing and restored form state. */
.event-submit-form .field,
.event-submit-form .field-grid,
.event-submit-form .field-grid > *,
.event-submit-form .event-submit-time-grid,
.event-submit-form .event-submit-time-grid > *{min-width:0;max-width:100%;}
.event-submit-form .field-input,
.event-submit-form .field-select,
.event-submit-form .field-textarea{width:100%;max-width:100%;min-width:0;box-sizing:border-box;}
.event-submit-form input[type="date"],
.event-submit-form input[type="time"]{display:block;width:100%;max-width:100%;min-width:0;}
@media (max-width:760px){
  .event-submit-form .field-grid{display:grid;grid-template-columns:minmax(0,1fr);width:100%;max-width:100%;overflow:hidden;}
  .event-submit-form .event-submit-time-grid{display:grid;grid-template-columns:minmax(0,1fr);width:100%;max-width:100%;overflow:hidden;}
  .event-submit-date-field{overflow:hidden;}
  .event-submit-form input[type="date"],
  .event-submit-form input[type="time"]{
    display:block;
    width:100%;
    max-width:100%;
    min-width:0;
    height:48px;
    min-height:48px;
    padding-left:10px;
    padding-right:8px;
    font-size:13px;
    line-height:1.2;
    overflow:hidden;
    appearance:none;
    -webkit-appearance:none;
  }
  .event-submit-form input[type="date"]::-webkit-date-and-time-value,
  .event-submit-form input[type="time"]::-webkit-date-and-time-value{min-width:0;text-align:left;}
}

/* AV1.123 rental quote request form cleanup. */
.single-rental .rental-quote-section .container{
  width:var(--av-desktop-shell);
  max-width:none;
  margin-left:auto;
  margin-right:auto;
  padding-left:0;
  padding-right:0;
}
.single-rental .rental-quote-card{
  width:100%;
  max-width:100%;
  margin-left:0;
  margin-right:0;
  box-sizing:border-box;
}
.rental-quote-header{display:grid;gap:10px;}
.rental-quote-intro{max-width:780px;}
.rental-quote-summary{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-top:6px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(0,26,57,.035);font-size:13px;line-height:1.45;color:var(--muted);}
.rental-quote-summary strong{color:var(--navy);font-weight:700;}
.rental-quote-summary span{display:inline-flex;align-items:center;gap:8px;}
.rental-quote-summary span:before{content:"";width:4px;height:4px;border-radius:999px;background:var(--gold);}
.rental-quote-form{margin-top:24px;}
.rental-quote-hint{max-width:560px;}
.rental-quote-date-field{gap:12px;}
.rental-quote-date-copy{display:grid;gap:5px;}
.rental-quote-date-copy p{margin:0;max-width:720px;font-size:14px;line-height:1.65;color:var(--muted);}
.rental-quote-date-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%;}
.rental-quote-date-item{min-width:0;}
.rental-quote-date-input{width:100%;min-height:52px;height:52px;line-height:52px;box-sizing:border-box;}
.rental-quote-date-input::-webkit-date-and-time-value{min-width:0;text-align:left;}
.rental-quote-date-input::-webkit-calendar-picker-indicator{margin-left:4px;}
.rental-quote-form input[type="tel"]{letter-spacing:.01em;}
@media (max-width:760px){
  .single-rental .rental-quote-section .container{width:100%;max-width:100%;padding-left:var(--shell-x-mobile);padding-right:var(--shell-x-mobile);}
  .rental-quote-summary{align-items:flex-start;flex-direction:column;gap:6px;}
  .rental-quote-summary span:before{display:none;}
  .rental-quote-date-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .rental-quote-date-input{min-height:50px;height:50px;line-height:50px;padding-left:10px;padding-right:10px;}
}


/* AV1.125 rental pagination visibility fix. Keep rental pagination visible on mobile, including the single-page mobile case after loading 50 rentals. */
.rental-pagination-wrap--single{display:none;}
@media (max-width:760px){
  #all-rentals .pagination-wrap,
  #rental-category-posts .pagination-wrap,
  .post-type-archive-rental .pagination-wrap,
  .tax-rental_categorie .pagination-wrap,
  .tax-rental_tag .pagination-wrap,
  .rental-pagination-wrap{
    display:flex !important;
    margin-top:28px;
  }
  .rental-pagination-wrap--single{
    display:flex !important;
  }
}


/* AV1.126 rental archive result count. */
.rental-result-count{margin:12px 0 0;font-size:14px;line-height:1.5;color:var(--muted);}
@media (max-width:760px){.rental-result-count{font-size:13px;}}


/* AV1.126 rental archive mobile list + reliable pagination.
   The /rentals overview must show all published rentals, vertically stacked on mobile, with pagination after 50 cards. */
@media (max-width:760px){
  .post-type-archive-rental #all-rentals .rental-grid-scroller,
  .tax-rental_categorie #rental-category-posts .rental-grid-scroller,
  .tax-rental_tag #rental-category-posts .rental-grid-scroller{
    overflow:visible !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  .post-type-archive-rental #all-rentals .rental-grid,
  .tax-rental_categorie #rental-category-posts .rental-grid,
  .tax-rental_tag #rental-category-posts .rental-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    width:100% !important;
    gap:16px !important;
  }
  .post-type-archive-rental #all-rentals .rental-grid .ui-card,
  .tax-rental_categorie #rental-category-posts .rental-grid .ui-card,
  .tax-rental_tag #rental-category-posts .rental-grid .ui-card{
    width:100% !important;
    min-width:0 !important;
  }
}


/* Event archive mobile behavior: only the Our Choice rail remains a horizontal slider.
   The normal event overview is a paginated list/grid, so imported non-featured events do not appear in a mobile slider. */
@media (max-width:760px){
  #all-events .event-grid-scroller,
  #event-category-posts .event-grid-scroller{
    overflow:visible;
    margin-left:0;
    margin-right:0;
    padding-left:0;
    padding-right:0;
  }
  #all-events .event-grid,
  #event-category-posts .event-grid{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
    gap:16px;
  }
  #all-events .event-grid .event-card.ui-card,
  #event-category-posts .event-grid .event-card.ui-card{
    width:100%;
    min-width:0;
  }
  #all-events .pagination-wrap,
  #event-category-posts .pagination-wrap{
    display:flex;
  }
}


/* AV1.127 event archive mobile list: normal /events cards are vertical full-width event cards, not a slider.
   Only the dedicated Our Choice rail keeps slider behavior. Future occurrence filtering/sorting is handled in PHP. */
.post-type-archive-event #all-events .event-grid-scroller,
.tax-event_categorie #event-category-posts .event-grid-scroller,
.tax-event_tag #event-category-posts .event-grid-scroller{
  overflow:visible;
}
.post-type-archive-event #all-events .event-grid .event-card.ui-card,
.tax-event_categorie #event-category-posts .event-grid .event-card.ui-card,
.tax-event_tag #event-category-posts .event-grid .event-card.ui-card{
  width:100%;
  min-width:0;
}
@media (max-width:760px){
  .post-type-archive-event #all-events .event-grid-scroller,
  .tax-event_categorie #event-category-posts .event-grid-scroller,
  .tax-event_tag #event-category-posts .event-grid-scroller{
    overflow:visible !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  .post-type-archive-event #all-events .event-grid,
  .tax-event_categorie #event-category-posts .event-grid,
  .tax-event_tag #event-category-posts .event-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    width:100% !important;
    gap:16px !important;
  }
  .post-type-archive-event #all-events .event-grid .event-card.ui-card,
  .tax-event_categorie #event-category-posts .event-grid .event-card.ui-card,
  .tax-event_tag #event-category-posts .event-grid .event-card.ui-card{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
  }
  .post-type-archive-event #all-events .pagination-wrap,
  .tax-event_categorie #event-category-posts .pagination-wrap,
  .tax-event_tag #event-category-posts .pagination-wrap{
    display:flex !important;
  }
}


/* AV1.128 event overview mobile list fix.
   The ALL EVENTS / Event overview section must behave like the rentals overview:
   vertical full-width event cards on mobile, never a horizontal slider. */
.event-overview-list-wrap{
  overflow:visible;
}
.event-overview-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  width:100%;
}
.event-overview-list .event-card.ui-card{
  width:100%;
  min-width:0;
  max-width:none;
}
@media (max-width:900px){
  .event-overview-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:760px){
  #all-events .event-overview-list-wrap,
  #event-category-posts .event-overview-list-wrap{
    overflow:visible !important;
    overflow-x:visible !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    scrollbar-width:auto !important;
  }
  #all-events .event-overview-list,
  #event-category-posts .event-overview-list{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:16px !important;
    width:100% !important;
    max-width:100% !important;
  }
  #all-events .event-overview-list .event-card.ui-card,
  #event-category-posts .event-overview-list .event-card.ui-card{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
  }
  #all-events .pagination-wrap,
  #event-category-posts .pagination-wrap{
    display:flex !important;
  }
}


/* AV1.129 overview pagination parity for events, locations and blogs.
   Total overview lists must include Our Choice items too. Our Choice sections are only rendered on page 1 in PHP. */
@media (max-width:760px){
  #all-locations .blog-grid-scroller,
  #latest-blogs .blog-grid-scroller{
    overflow:visible !important;
    overflow-x:visible !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    scrollbar-width:auto !important;
  }
  #all-locations .blog-grid,
  #all-locations .location-grid,
  #latest-blogs .blog-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:16px !important;
    width:100% !important;
    max-width:100% !important;
  }
  #all-locations .ui-card,
  #all-locations .location-card.ui-card,
  #latest-blogs .ui-card{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
  }
  #all-locations .pagination-wrap,
  #latest-blogs .pagination-wrap{
    display:flex !important;
  }
}

/* AV1.130 hard fix: blog and location total overviews are normal lists/grids, not mobile sliders. */
.overview-list-wrap{
  overflow:visible;
  width:100%;
}
.overview-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  width:100%;
}
.overview-list .ui-card{
  width:100%;
  min-width:0;
  max-width:none;
}
@media (max-width:900px){
  .overview-list{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:760px){
  .overview-list-wrap,
  .blog-overview-list-wrap,
  .location-overview-list-wrap{
    overflow:visible !important;
    overflow-x:visible !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    scrollbar-width:auto !important;
  }
  .overview-list,
  .blog-overview-list,
  .location-overview-list{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:16px !important;
    width:100% !important;
    max-width:100% !important;
  }
  .overview-list .ui-card,
  .blog-overview-list .ui-card,
  .location-overview-list .ui-card{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    flex:none !important;
  }
  .overview-list-wrap + .pagination-wrap,
  .blog-overview-list-wrap + .pagination-wrap,
  .location-overview-list-wrap + .pagination-wrap,
  #latest-blogs .pagination-wrap,
  #all-locations .pagination-wrap{
    display:flex !important;
  }
}


/* AV1.157 mobile menu alignment + dynamic top fix */
@media (max-width:760px){
  .site-mobile-menu{
    top:var(--mobile-menu-top,var(--header-mobile));
    max-height:calc(100vh - var(--mobile-menu-top,var(--header-mobile)));
  }
  .site-mobile-menu__group > .site-mobile-menu__subitem{
    padding:18px var(--shell-x-mobile);
    font-size:15px;
    color:#fff;
  }
  .site-mobile-menu__group > .mobile-parent-row + .site-mobile-menu__panel .site-mobile-menu__subitem{
    padding:10px var(--shell-x-mobile) 10px calc(var(--shell-x-mobile) + 18px);
    font-size:14px;
    color:rgba(255,255,255,.84);
  }
}

/* AV1.164 booking lightbox for restaurant and rental overview cards. */
.location-booking-lightbox{position:fixed;inset:0;z-index:1200;display:none;}
.location-booking-lightbox.is-open{display:block;}
.location-booking-lightbox__backdrop{position:absolute;inset:0;background:rgba(0,26,57,.58);}
.location-booking-lightbox__panel{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(92vw,760px);max-height:min(88vh,900px);overflow:auto;background:var(--paper);border-radius:var(--radius);box-shadow:0 24px 70px rgba(18,30,43,.28);}
.location-booking-lightbox__close{position:sticky;top:0;float:right;z-index:2;width:44px;height:44px;margin:8px 8px -52px auto;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,253,249,.96);color:var(--navy);font-size:26px;line-height:1;cursor:pointer;}
.location-booking-lightbox__content[hidden]{display:none;}
.location-booking-lightbox__content.is-active{display:block;}
.location-booking-lightbox .location-reservation-form-section{padding:0;}
.location-booking-lightbox .location-reservation-form{border:0;border-radius:0;}
.location-booking-lightbox .location-reservation-form--lightbox .form-main{padding-right:calc(var(--panel-pad) + 36px);}
body.av1-booking-modal-open{overflow:hidden;}
@media (max-width:760px){
  .location-booking-lightbox__panel{width:calc(100vw - 24px);max-height:88vh;}
  .location-booking-lightbox__close{position:relative;top:auto;float:none;width:40px;height:40px;margin:8px 8px 0 auto;font-size:24px;}
  .location-booking-lightbox .location-reservation-form--lightbox .form-main.surface-pad{padding:16px;}
  .location-booking-lightbox .location-reservation-form--lightbox form{margin-top:18px;}
}

.location-booking-lightbox .rental-quote-form{margin-top:var(--form-start-gap);}
.location-booking-lightbox .rental-quote-submit-row{align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:10px;}
.location-booking-lightbox .rental-quote-submit-row .button{align-self:flex-start;}
@media (max-width:760px){
  .location-booking-lightbox .rental-quote-submit-row .button{width:100%;}
}


/* AV1.165 event request form, built on the shared reservation form shell. */
.event-request-section .event-request-summary{margin-top:var(--panel-title-copy,12px);}
.event-request-section .event-request-known-date__value{display:flex;align-items:center;min-height:50px;padding:0 14px;border:1px solid rgba(24,33,45,.12);border-radius:var(--radius);background:rgba(0,26,57,.035);color:var(--navy);font-size:14px;line-height:1.4;font-weight:600;}
.location-booking-lightbox .event-request-submit-row{align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:10px;}
.location-booking-lightbox .event-request-submit-row .button{align-self:flex-start;}
@media (max-width:760px){
  .location-reservation-form-section,.rental-quote-section,.event-request-section{scroll-margin-top:calc(var(--header-mobile,72px) + 16px);}
  .event-request-section .event-request-known-date__value{min-height:48px;padding-left:12px;padding-right:12px;}
  .location-booking-lightbox .event-request-submit-row .button{width:100%;}
}

/* AV1.165 venue image update workflow */
.location-update-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch;}
.location-update-stat-card{display:flex;flex-direction:column;justify-content:flex-start;min-height:100%;}
.location-update-stat-card .meta-line{display:block;margin:0 0 14px;color:var(--gold);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:600;}
.location-update-stat-card p{margin:16px 0 0;font-size:14px;line-height:1.72;color:var(--muted);max-width:42ch;}
.location-update-counter--queue{display:flex;gap:10px;align-items:center;margin:0;}
.location-update-counter-digit{display:flex;align-items:center;justify-content:center;min-width:68px;height:78px;padding:0 14px;border:1px solid rgba(17,40,74,.12);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(245,247,250,.98));box-shadow:0 10px 26px rgba(17,40,74,.06);font-family:var(--font-display);font-size:48px;line-height:1;color:var(--navy);letter-spacing:-.06em;font-weight:400;}
.location-update-counter--deadline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;}
.location-update-counter-panel{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:16px 10px;border:1px solid rgba(17,40,74,.12);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(245,247,250,.98));box-shadow:0 10px 26px rgba(17,40,74,.06);text-align:center;}
.location-update-counter-value{display:block;font-family:var(--font-display);font-size:40px;line-height:1;color:var(--navy);letter-spacing:-.05em;font-weight:400;}
.location-update-counter-label{display:block;margin-top:8px;font-size:11px;line-height:1.2;letter-spacing:.12em;text-transform:uppercase;color:rgba(17,40,74,.62);font-weight:600;}
.location-update-deadline-copy{max-width:48ch;}
.location-update-grid{align-items:start;}
.location-update-form-card .location-update-form{margin-top:var(--panel-copy-content);}
.location-update-step + .location-update-step{margin-top:24px;padding-top:24px;border-top:1px solid var(--line);}
.location-update-step--first{padding:18px;border:1px solid rgba(181,138,73,.24);background:rgba(181,138,73,.07);border-radius:var(--radius);}
.location-update-checkbox{display:flex;align-items:flex-start;gap:11px;margin:0;font-size:14px;line-height:1.7;color:var(--text);}
.location-update-checkbox input{width:18px;height:18px;margin:2px 0 0;flex:0 0 18px;accent-color:var(--gold);}
.location-update-checkbox--important{font-weight:600;color:var(--navy);}
.location-update-disclaimer-box{margin-top:24px;background:rgba(0,26,57,.04);}
.location-update-disclaimer-box p{margin:10px 0 0;font-size:14px;line-height:1.72;color:var(--muted);}
.location-update-disclaimer-box a{color:var(--navy);text-decoration:underline;text-underline-offset:3px;font-weight:600;}
.location-update-submit-row{margin-top:var(--panel-copy-content);}
.location-update-guidance-card{align-self:start;position:sticky;top:calc(var(--header-desktop) + 24px);}
.location-update-guidance-card .bullet-list li{font-size:14px;line-height:1.72;}
.form-status--success{border-color:rgba(60,84,74,.28);background:rgba(60,84,74,.08);}
.form-status--error{border-color:rgba(181,80,73,.28);background:rgba(181,80,73,.08);}
.form-status strong{display:block;color:var(--navy);}
.form-status p{margin:8px 0 0;color:var(--muted);}
@media (max-width:980px){
  .location-update-stats{grid-template-columns:1fr;gap:18px;}
  .location-update-guidance-card{position:static;}
}
@media (max-width:760px){
  .location-update-counter-digit{min-width:58px;height:68px;font-size:40px;border-radius:14px;}
  .location-update-counter--deadline{gap:10px;}
  .location-update-counter-panel{padding:14px 8px;border-radius:14px;}
  .location-update-counter-value{font-size:34px;}
  .location-update-counter-label{font-size:10px;}
  .location-update-step + .location-update-step{margin-top:20px;padding-top:20px;}
  .location-update-step--first{padding:14px;}
  .location-update-checkbox{font-size:13px;line-height:1.6;}
  .location-update-form-card .field-grid{grid-template-columns:1fr;}
}


/* AV1.167 submit location update visual refinement */
.location-update-counter-digit,
.location-update-counter-panel{border-radius:4px;background:var(--navy);border-color:var(--navy);box-shadow:none;}
.location-update-counter-digit,
.location-update-counter-value,
.location-update-counter-label{color:#fff;}
.location-update-counter-label{opacity:.92;}
.location-update-stat-card .meta-line{margin-bottom:12px;}
.location-update-page-section .section-header{max-width:860px;}
.location-update-page-section .section-intro{max-width:760px;}
.location-update-form-card .component-title{font-size:32px;line-height:1.08;letter-spacing:-.04em;}
.location-update-form-card .contact-form-intro,
.location-update-guidance-card .side-copy,
.location-update-step .event-submit-step-help,
.location-update-disclaimer-box p,
.location-update-submit-row .fineprint{font-size:14px;line-height:1.72;}
.location-update-step .event-submit-step-title{font-size:21px;line-height:1.15;letter-spacing:-.03em;}
.location-update-form-card .field-label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);font-weight:600;}
.location-update-guidance-card .side-title{font-size:28px;line-height:1.12;letter-spacing:-.03em;}
.location-update-checkbox span{display:block;}
@media (max-width:760px){
  .location-update-form-card .component-title{font-size:28px;}
  .location-update-step .event-submit-step-title{font-size:19px;}
  .location-update-form-card .contact-form-intro,
  .location-update-guidance-card .side-copy,
  .location-update-step .event-submit-step-help,
  .location-update-disclaimer-box p,
  .location-update-submit-row .fineprint{font-size:13px;line-height:1.68;}
  .location-update-counter-digit{min-width:54px;height:64px;font-size:36px;}
  .location-update-counter-value{font-size:32px;}
}


/* AV1.168 submit location update final spacing check */
.location-update-disclaimer-box,
.location-update-guidance-card{padding:24px!important;border-radius:4px;}
.location-update-disclaimer-box .meta-line{display:block;margin:0 0 12px;color:var(--gold);font-size:11px;line-height:1.3;letter-spacing:.12em;text-transform:uppercase;font-weight:600;}
.location-update-disclaimer-box p{max-width:72ch;}
.location-update-disclaimer-box p:first-of-type{margin-top:0;}
.location-update-guidance-card .kicker{display:block;margin:0 0 10px;}
.location-update-guidance-card .side-title{margin:0 0 12px;font-size:24px;line-height:1.12;letter-spacing:-.03em;}
.location-update-guidance-card .side-copy{margin:0 0 14px;max-width:48ch;}
.location-update-guidance-card .bullet-list{display:grid;gap:8px;margin:0;padding-left:18px;}
.location-update-guidance-card .bullet-list li{margin:0;}
@media (max-width:760px){
  .location-update-disclaimer-box,
  .location-update-guidance-card{padding:16px!important;}
  .location-update-disclaimer-box .meta-line{margin-bottom:10px;}
  .location-update-guidance-card .side-title{font-size:22px;margin-bottom:10px;}
  .location-update-guidance-card .side-copy{margin-bottom:12px;}
  .location-update-guidance-card .bullet-list{gap:6px;padding-left:16px;}
}

/* AV1.169 AI booking tool pre-registration */
.ai-booking-prereg-header{max-width:860px;}
.ai-booking-prereg-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch;}
.ai-booking-prereg-stat{display:flex;flex-direction:column;justify-content:flex-start;border-radius:4px;}
.ai-booking-prereg-stat .meta-line{display:block;margin:0 0 12px;color:var(--gold);font-size:11px;line-height:1.3;letter-spacing:.12em;text-transform:uppercase;font-weight:600;}
.ai-booking-prereg-number{display:flex;align-items:baseline;gap:10px;color:var(--navy);}
.ai-booking-prereg-number span{font-family:var(--font-display);font-size:58px;line-height:1;letter-spacing:-.06em;font-weight:400;}
.ai-booking-prereg-number small{font-size:16px;line-height:1;color:var(--muted);font-weight:600;}
.ai-booking-prereg-stat p{margin:14px 0 0;font-size:14px;line-height:1.72;color:var(--muted);max-width:46ch;}
.ai-booking-prereg-stat--last{border-color:rgba(181,138,73,.34);background:rgba(181,138,73,.08);}
.ai-booking-prereg-stat--waitlist{border-color:rgba(0,26,57,.14);background:rgba(0,26,57,.04);}
.ai-booking-countdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.ai-booking-countdown div{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:74px;padding:12px 8px;border:1px solid var(--navy);border-radius:4px;background:var(--navy);text-align:center;color:#fff;}
.ai-booking-countdown strong{font-family:var(--font-display);font-size:36px;line-height:1;letter-spacing:-.05em;font-weight:400;color:#fff;}
.ai-booking-countdown span{margin-top:7px;font-size:10px;line-height:1.2;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:rgba(255,255,255,.9);}
.ai-booking-prereg-grid{align-items:start;}
.ai-booking-prereg-form-card .component-title{font-size:32px;line-height:1.08;letter-spacing:-.04em;}
.ai-booking-prereg-form{margin-top:var(--panel-copy-content);}
.ai-booking-step + .ai-booking-step{margin-top:24px;padding-top:24px;border-top:1px solid var(--line);}
.ai-booking-step--authority{padding:18px;border:1px solid rgba(181,138,73,.24);background:rgba(181,138,73,.07);border-radius:4px;}
.ai-booking-step .event-submit-step-title{font-size:21px;line-height:1.15;letter-spacing:-.03em;}
.ai-booking-step .event-submit-step-help,.ai-booking-prereg-form-card .contact-form-intro,.ai-booking-prereg-side .side-copy,.ai-booking-submit-row .fineprint{font-size:14px;line-height:1.72;}
.ai-booking-prereg-form-card .field-label{display:block;margin:0 0 8px;font-size:12px;line-height:1.2;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);font-weight:600;}
.ai-booking-venue-search{position:relative;}
.ai-booking-venue-results{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 6px);max-height:280px;overflow:auto;border:1px solid var(--line-strong);border-radius:4px;background:#fff;box-shadow:0 14px 30px rgba(17,40,74,.12);padding:6px;}
.ai-booking-venue-option{display:block;width:100%;padding:11px 12px;border:0;border-radius:4px;background:transparent;text-align:left;color:var(--text);cursor:pointer;}
.ai-booking-venue-option:hover,.ai-booking-venue-option:focus{background:rgba(0,26,57,.05);outline:0;}
.ai-booking-venue-option strong{display:block;font-size:14px;line-height:1.35;color:var(--navy);font-weight:600;}
.ai-booking-radio-group{display:grid;gap:10px;margin-top:16px;}
.ai-booking-radio-group + .ai-booking-radio-group{margin-top:20px;}
.ai-booking-radio-group label,.ai-booking-method-panel label{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--text);font-size:14px;line-height:1.55;cursor:pointer;}
.ai-booking-radio-group input,.ai-booking-method-panel input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--gold);flex:0 0 18px;}
.ai-booking-radio-group label.is-priority{border-color:rgba(181,138,73,.32);background:rgba(181,138,73,.07);}
.ai-booking-radio-group label em{display:inline-flex;margin-left:8px;font-style:normal;font-size:10px;line-height:1.1;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);font-weight:700;}
.ai-booking-priority-copy{padding:12px 14px;border:1px solid rgba(181,138,73,.22);border-radius:4px;background:rgba(181,138,73,.07);color:var(--navy)!important;}
.ai-booking-method-select{position:relative;}
.ai-booking-method-toggle{text-align:left;cursor:pointer;background:#fff;}
.ai-booking-method-panel{position:absolute;z-index:25;left:0;right:0;top:calc(100% + 6px);display:grid;gap:8px;max-height:300px;overflow:auto;padding:10px;border:1px solid var(--line-strong);border-radius:4px;background:#fff;box-shadow:0 14px 30px rgba(17,40,74,.12);}
.ai-booking-method-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;min-height:0;}
.ai-booking-method-chip{display:inline-flex;align-items:center;min-height:28px;padding:6px 10px;border-radius:4px;background:var(--navy);color:#fff;font-size:12px;line-height:1;font-weight:600;}
.ai-booking-other-system{margin-top:14px;}
.ai-booking-prereg-side{position:sticky;top:calc(var(--header-desktop) + 24px);padding:24px!important;border-radius:4px;}
.ai-booking-prereg-side .kicker{display:block;margin:0 0 10px;}
.ai-booking-prereg-side .side-title{margin:0 0 12px;font-size:24px;line-height:1.12;letter-spacing:-.03em;}
.ai-booking-prereg-side .side-copy{margin:0 0 14px;max-width:48ch;}
.ai-booking-prereg-side .bullet-list{display:grid;gap:8px;margin:0;padding-left:18px;}
.ai-booking-prereg-side .bullet-list li{margin:0;font-size:14px;line-height:1.72;}
@media (max-width:980px){.ai-booking-prereg-stats,.ai-booking-prereg-grid{grid-template-columns:1fr;}.ai-booking-prereg-side{position:static;}}
@media (max-width:760px){.ai-booking-prereg-stats{gap:16px;}.ai-booking-prereg-number span{font-size:46px;}.ai-booking-countdown strong{font-size:30px;}.ai-booking-countdown div{min-height:66px;padding:10px 6px;}.ai-booking-prereg-form-card .component-title{font-size:28px;}.ai-booking-step + .ai-booking-step{margin-top:20px;padding-top:20px;}.ai-booking-step--authority{padding:14px;}.ai-booking-step .event-submit-step-title{font-size:19px;}.ai-booking-step .event-submit-step-help,.ai-booking-prereg-form-card .contact-form-intro,.ai-booking-prereg-side .side-copy,.ai-booking-submit-row .fineprint{font-size:13px;line-height:1.68;}.ai-booking-radio-group label,.ai-booking-method-panel label{font-size:13px;padding:11px;}.ai-booking-prereg-side{padding:16px!important;}.ai-booking-prereg-side .side-title{font-size:22px;}.ai-booking-method-panel,.ai-booking-venue-results{max-height:240px;}}


/* AV1.170 AI booking pre-registration form polish */
.ai-booking-prereg-page .section-header{max-width:860px;}
.ai-booking-prereg-page .section-intro{max-width:760px;}
.ai-booking-prereg-stats{gap:28px;align-items:stretch;}
.ai-booking-prereg-stat{padding:24px!important;border-radius:4px;}
.ai-booking-prereg-stat .meta-line{display:block;margin:0 0 12px;font-size:11px;line-height:1.3;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--gold);}
.ai-booking-prereg-stat p{margin:14px 0 0;font-size:14px;line-height:1.72;color:var(--muted);max-width:48ch;}
.ai-booking-prereg-form-card{padding:28px!important;border-radius:4px;}
.ai-booking-prereg-form-card .kicker{display:block;margin:0 0 10px;}
.ai-booking-prereg-form-card .component-title{font-size:32px;line-height:1.08;letter-spacing:-.04em;margin:0;}
.ai-booking-prereg-form-card .contact-form-intro{margin-top:12px;font-size:14px;line-height:1.72;}
.ai-booking-prereg-form{margin-top:24px;}
.ai-booking-step + .ai-booking-step{margin-top:24px;padding-top:24px;border-top:1px solid var(--line);}
.ai-booking-step .event-submit-step-title{margin:0 0 9px;font-size:21px;line-height:1.15;letter-spacing:-.03em;}
.ai-booking-step .event-submit-step-help{margin:0 0 14px;font-size:14px;line-height:1.7;color:var(--muted);max-width:64ch;}
.ai-booking-step .field-label{display:block;margin:0 0 8px;font-size:12px;line-height:1.25;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);font-weight:600;}
.ai-booking-step .field-grid{gap:18px;}
.ai-booking-radio-group{display:grid;gap:9px;margin-top:16px;}
.ai-booking-radio-group:first-of-type{margin-top:0;}
.ai-booking-radio-group + .ai-booking-radio-group{margin-top:18px;}
.ai-booking-radio-group label,.ai-booking-method-panel label{font-size:14px;line-height:1.55;padding:12px;border-radius:4px;}
.ai-booking-method-select{position:relative;display:block;margin-top:0;margin-bottom:0;}
.ai-booking-method-toggle{display:flex;align-items:center;width:100%;min-height:50px;height:auto;text-align:left;white-space:normal;line-height:1.35;padding-top:12px;padding-bottom:12px;cursor:pointer;background:#fff;}
.ai-booking-method-panel{position:static!important;display:grid;gap:8px;max-height:none;overflow:visible;margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:4px;background:rgba(0,26,57,.03);box-shadow:none;}
.ai-booking-method-panel[hidden]{display:none!important;}
.ai-booking-method-panel label{background:#fff;}
.ai-booking-method-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;min-height:0;clear:both;}
.ai-booking-method-chip{display:inline-flex;align-items:center;min-height:28px;padding:7px 10px;border-radius:4px;background:var(--navy);color:#fff;font-size:12px;line-height:1.1;font-weight:500;}
.ai-booking-other-system{margin-top:16px;}
.ai-booking-submit-row{margin-top:26px;}
.ai-booking-submit-row .fineprint{font-size:13px;line-height:1.65;max-width:62ch;}
.ai-booking-prereg-side{padding:24px!important;border-radius:4px;}
.ai-booking-prereg-side .kicker{display:block;margin:0 0 10px;}
.ai-booking-prereg-side .side-title{margin:0 0 12px;font-size:26px;line-height:1.12;letter-spacing:-.03em;}
.ai-booking-prereg-side .side-copy{margin:0 0 14px;font-size:14px;line-height:1.72;}
.ai-booking-prereg-side .bullet-list{display:grid;gap:8px;margin:0;padding-left:18px;}
.ai-booking-prereg-side .bullet-list li{margin:0;font-size:14px;line-height:1.65;}
@media (max-width:980px){
  .ai-booking-prereg-stats{grid-template-columns:1fr;gap:18px;}
  .ai-booking-prereg-grid{grid-template-columns:1fr;}
}
@media (max-width:760px){
  .ai-booking-prereg-stat,.ai-booking-prereg-form-card,.ai-booking-prereg-side{padding:16px!important;}
  .ai-booking-prereg-form-card .component-title{font-size:28px;}
  .ai-booking-prereg-form{margin-top:20px;}
  .ai-booking-step + .ai-booking-step{margin-top:20px;padding-top:20px;}
  .ai-booking-step .event-submit-step-title{font-size:19px;}
  .ai-booking-step .event-submit-step-help,.ai-booking-prereg-form-card .contact-form-intro,.ai-booking-prereg-side .side-copy,.ai-booking-submit-row .fineprint{font-size:13px;line-height:1.68;}
  .ai-booking-step .field-grid{grid-template-columns:1fr;gap:14px;}
  .ai-booking-radio-group{gap:8px;}
  .ai-booking-radio-group label,.ai-booking-method-panel label{font-size:13px;padding:11px;}
  .ai-booking-method-toggle{min-height:48px;}
  .ai-booking-method-panel{max-height:none;padding:10px;}
  .ai-booking-prereg-side .side-title{font-size:22px;}
  .ai-booking-prereg-side .bullet-list li{font-size:13px;}
}


/* AV1.174 AI concierge early adopters reset */
.ai-concierge-early-page{padding-top:var(--section-y);overflow-x:hidden;}
.ai-concierge-early-page *{box-sizing:border-box;}
.ai-concierge-early-page .container,.ai-concierge-early-grid,.ai-concierge-early-form,.ai-concierge-early-form-card,.ai-concierge-early-side,.ai-concierge-venue-grid{min-width:0;}
.ai-concierge-early-page .section-header{max-width:860px;}
.ai-concierge-early-page .section-title,
.ai-concierge-early-form-card .component-title,
.ai-concierge-early-side .side-title,
.ai-concierge-early-step .event-submit-step-title,
.ai-concierge-early-counter-number,
.ai-concierge-early-emphasis{font-family:var(--font-display);font-weight:400;color:var(--navy);letter-spacing:-.04em;}
.ai-concierge-early-page .section-title{font-size:clamp(30px,2.2vw,34px);line-height:1.08;}
.ai-concierge-early-header .section-intro,.ai-concierge-early-form-card .contact-form-intro,.ai-concierge-early-side .side-copy{font-size:15px;line-height:1.76;color:var(--muted);}
.ai-concierge-early-actions{margin-top:22px;}
.ai-concierge-early-stats{display:grid;grid-template-columns:1.08fr .96fr .96fr;gap:24px;align-items:stretch;margin-top:28px;}
.ai-concierge-early-stat{border-radius:var(--radius);display:flex;flex-direction:column;gap:12px;padding:30px;min-width:0;}
.ai-concierge-early-stat .meta-line{margin:0;color:var(--gold);font-size:12px;line-height:1.1;letter-spacing:.14em;text-transform:uppercase;font-weight:700;}
.ai-concierge-early-stat p{margin:0;font-size:14px;line-height:1.76;color:var(--muted);max-width:46ch;}
.ai-concierge-early-stat--availability{background:var(--navy);border-color:var(--navy);color:#fff;}
.ai-concierge-early-stat--availability .meta-line,.ai-concierge-early-stat--availability p{color:rgba(255,255,255,.76);}
.ai-concierge-early-counter{display:grid;gap:4px;align-content:start;}
.ai-concierge-early-counter-number{display:block;font-size:clamp(54px,5.8vw,74px);line-height:.9;color:#fff;}
.ai-concierge-early-counter-copy{display:block;font-size:14px;line-height:1.2;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#fff;}
.ai-concierge-early-counter small{display:block;font-size:14px;line-height:1.4;color:rgba(255,255,255,.72);font-weight:500;}
.ai-concierge-early-emphasis{font-size:30px;line-height:1.05;margin:0;}
.ai-concierge-early-grid{align-items:start;margin-top:34px;}
.ai-concierge-early-form-card,.ai-concierge-early-side,.ai-concierge-early-eligibility-panel{border-radius:var(--radius);}
.ai-concierge-early-form-card.surface-pad,.ai-concierge-early-side.surface-pad{padding:34px;}
.ai-concierge-early-form-card .kicker,.ai-concierge-early-side .kicker{margin-bottom:14px;}
.ai-concierge-early-form-card .component-title{font-size:clamp(31px,3vw,40px);line-height:1.05;margin:0;}
.ai-concierge-early-form-card .contact-form-intro{margin-top:12px;max-width:66ch;}
.ai-concierge-early-form{margin-top:24px;}
.ai-concierge-early-step + .ai-concierge-early-step{border-top:1px solid var(--line);margin-top:28px;padding-top:28px;}
.ai-concierge-early-step .event-submit-step-title{font-size:22px;line-height:1.12;margin:0 0 14px;}
.ai-concierge-early-step .event-submit-step-help{font-size:14px;line-height:1.7;margin:0 0 16px;color:var(--muted);max-width:62ch;}
.ai-concierge-early-form-card .field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.ai-concierge-early-form-card .field,.ai-concierge-early-form-card .field--full{min-width:0;width:100%;}
.ai-concierge-early-form-card .field-label{display:block;margin:0 0 8px;font-size:12px;line-height:1.35;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);}
.ai-concierge-early-form-card .field-input{width:100%;min-height:52px;padding:14px 16px;border-radius:var(--radius);box-sizing:border-box;font-size:15px;line-height:1.4;}
.ai-concierge-textarea{min-height:170px;resize:vertical;}
.ai-concierge-radio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.ai-concierge-radio-grid label{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;cursor:pointer;min-width:0;}
.ai-concierge-radio-grid label span{display:block;font-size:15px;line-height:1.55;color:var(--text);}
.ai-concierge-radio-grid input{margin-top:3px;flex:0 0 auto;}
.ai-concierge-inline-note{margin:14px 0 0;font-size:14px;line-height:1.7;color:var(--navy);background:rgba(1,0,84,.04);border-left:3px solid var(--navy);padding:10px 12px;border-radius:var(--radius);}
.ai-concierge-early-eligibility-panel{display:grid;gap:8px;background:rgba(1,0,84,.04);margin-bottom:24px;padding:24px;}
.ai-concierge-early-eligibility-panel p{margin:0;font-size:14px;line-height:1.7;color:var(--muted);max-width:72ch;}
.ai-concierge-venues-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:18px;}
.ai-concierge-venue-counter{display:flex;align-items:baseline;gap:6px;white-space:nowrap;color:var(--navy);}
.ai-concierge-venue-counter strong{font-family:var(--font-display);font-weight:400;font-size:28px;line-height:1;letter-spacing:-.04em;}
.ai-concierge-venue-counter span{font-size:12px;line-height:1.4;text-transform:uppercase;letter-spacing:.14em;color:var(--navy);font-weight:700;}
.ai-concierge-venue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;width:100%;}
.ai-concierge-venue-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;min-width:0;}
.ai-concierge-venue-card:hover{transform:translateY(-1px);}
.ai-concierge-venue-card.is-selected{border-color:var(--navy);box-shadow:0 0 0 1px var(--navy) inset;background:rgba(1,0,84,.03);}
.ai-concierge-venue-card.is-locked{opacity:.58;}
.ai-concierge-venue-media{display:block;aspect-ratio:4/3;background:#eef0f7;overflow:hidden;}
.ai-concierge-venue-media img{width:100%;height:100%;object-fit:cover;display:block;}
.ai-concierge-venue-body{position:relative;display:grid;gap:5px;padding:12px;min-width:0;}
.ai-concierge-venue-body strong{display:block;font-size:15px;line-height:1.32;color:var(--navy);}
.ai-concierge-venue-body small{display:block;font-size:12px;line-height:1.55;color:var(--muted);}
.ai-concierge-venue-card.is-selected .ai-concierge-venue-body{background:var(--navy);}
.ai-concierge-venue-card.is-selected .ai-concierge-venue-body strong,.ai-concierge-venue-card.is-selected .ai-concierge-venue-body small{color:#fff;opacity:1;}
.ai-concierge-venue-check{position:absolute;top:10px;right:10px;width:24px;height:24px;border-radius:999px;background:rgba(1,0,84,.92);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:1;opacity:0;transform:scale(.92);transition:opacity .18s ease,transform .18s ease;box-shadow:0 2px 8px rgba(0,0,0,.14);}
.ai-concierge-venue-card.is-selected .ai-concierge-venue-check{opacity:1;transform:scale(1);}
.ai-concierge-word-count{margin:10px 0 0;font-size:13px;line-height:1.55;color:var(--muted);}
.ai-concierge-word-count strong{color:var(--navy);font-weight:700;}
.ai-concierge-checkboxes{display:grid;gap:12px;}
.ai-concierge-submit-row{margin-top:26px;padding-top:0;border-top:0;display:flex;justify-content:flex-end;}
.ai-concierge-submit-row .button{min-width:190px;}
.ai-concierge-early-side{position:sticky;top:calc(var(--header-desktop) + 24px);}
.ai-concierge-early-side .side-title{font-size:30px;line-height:1.08;margin:0 0 12px;}
.ai-concierge-early-side .side-copy{margin:0 0 16px;max-width:46ch;}
.ai-concierge-early-side .bullet-list{display:grid;gap:10px;margin:0;padding-left:18px;}
.ai-concierge-early-side .bullet-list li{margin:0;font-size:14px;line-height:1.7;color:var(--muted);}
.ai-concierge-early-status--rejected{margin-top:24px;}
@media (max-width:980px){
  .ai-concierge-early-stats{grid-template-columns:1fr;gap:18px;}
  .ai-concierge-early-grid{margin-top:28px;}
  .ai-concierge-early-side{position:static;}
  .ai-concierge-venue-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:760px){
  html,body{overflow-x:hidden;}
  .ai-concierge-early-page{padding-top:var(--section-y-mobile);}
  .ai-concierge-early-page .container{padding-left:var(--shell-x-mobile);padding-right:var(--shell-x-mobile);}
  .ai-concierge-early-actions{margin-top:18px;}
  .ai-concierge-early-stats{margin-top:22px;gap:16px;}
  .ai-concierge-early-stat{padding:16px;gap:10px;}
  .ai-concierge-early-counter-number{font-size:48px;}
  .ai-concierge-early-emphasis{font-size:26px;}
  .ai-concierge-early-grid{margin-top:24px;gap:18px;}
  .ai-concierge-early-form-card.surface-pad,.ai-concierge-early-side.surface-pad{padding:16px;}
  .ai-concierge-early-form-card .component-title{font-size:28px;}
  .ai-concierge-early-form{margin-top:22px;}
  .ai-concierge-early-step + .ai-concierge-early-step{margin-top:22px;padding-top:22px;}
  .ai-concierge-early-step .event-submit-step-title{font-size:19px;margin-bottom:12px;}
  .ai-concierge-early-header .section-intro,.ai-concierge-early-form-card .contact-form-intro,.ai-concierge-early-side .side-copy{font-size:14px;line-height:1.72;}
  .ai-concierge-early-form-card .field-grid,.ai-concierge-radio-grid{grid-template-columns:1fr;gap:14px;}
  .ai-concierge-early-form-card .field-input{min-height:50px;padding:13px 14px;}
  .ai-concierge-radio-grid label{padding:13px 14px;}
  .ai-concierge-venues-head{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:14px;}
  .ai-concierge-venue-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  .ai-concierge-venue-body{padding:10px;}
  .ai-concierge-venue-body strong{font-size:14px;}
  .ai-concierge-venue-body small{font-size:11px;}
  .ai-concierge-venue-counter{white-space:normal;}
  .ai-concierge-submit-row .button{width:100%;}
  .ai-concierge-early-side .side-title{font-size:24px;}
}


/* AV1.174 AI concierge hero kicker white and remove header CTA */
.page-template-page-ai-concierge-early-adopters .hero .kicker{color:#fff;}
.page-template-page-ai-concierge-early-adopters .hero .label-row .label--gold{background:#fff;color:var(--navy);border-color:#fff;}
.page-template-page-ai-concierge-early-adopters .ai-concierge-early-actions{display:none!important;}


/* AV1.175 AI concierge selected venue cards full blue overlay */
.ai-concierge-venue-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(1,0,84,.10);
  box-shadow:none;
}
.ai-concierge-venue-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(1,0,84,.82);
  opacity:0;
  transition:opacity .2s ease;
  z-index:2;
  pointer-events:none;
}
.ai-concierge-venue-card:hover,
.ai-concierge-venue-card.is-selected{
  transform:none;
  box-shadow:none;
}
.ai-concierge-venue-card.is-selected{
  border-color:rgba(1,0,84,.10);
  background:#fff;
}
.ai-concierge-venue-card.is-selected::after{
  opacity:1;
}
.ai-concierge-venue-card.is-selected .ai-concierge-venue-body{
  background:transparent;
}
.ai-concierge-venue-card.is-selected .ai-concierge-venue-body strong,
.ai-concierge-venue-card.is-selected .ai-concierge-venue-body small{
  color:inherit;
  opacity:1;
}
.ai-concierge-venue-check{
  position:absolute;
  top:50%;
  left:50%;
  right:auto;
  width:44px;
  height:44px;
  border-radius:999px;
  background:#fff;
  color:var(--navy);
  transform:translate(-50%,-50%) scale(.92);
  z-index:3;
  font-size:22px;
  line-height:1;
  font-weight:600;
  box-shadow:none;
  opacity:0;
}
.ai-concierge-venue-card.is-selected .ai-concierge-venue-check{
  opacity:1;
  transform:translate(-50%,-50%) scale(1);
}


/* AV1.176 AI concierge validation and country code field */
.ai-concierge-phone-field{display:grid;grid-template-columns:minmax(150px,.42fr) 1fr;gap:10px;min-width:0;}
.ai-concierge-phone-field .field-input{min-width:0;}
.ai-concierge-validation-summary{margin:0 0 22px;border-radius:4px;}
.ai-concierge-validation-summary[hidden]{display:none!important;}
.ai-concierge-validation-summary strong{display:block;margin:0 0 8px;color:var(--navy);font-size:18px;line-height:1.25;font-weight:500;}
.ai-concierge-validation-summary ul{margin:0;padding-left:18px;display:grid;gap:5px;}
.ai-concierge-validation-summary li{font-size:14px;line-height:1.6;}
.ai-concierge-early-form .field-input.is-error,
.ai-concierge-early-form .has-error>.field-input,
.ai-concierge-early-form .has-error .field-input{border-color:rgba(180,40,40,.65);box-shadow:0 0 0 1px rgba(180,40,40,.10);}
.ai-concierge-early-form .ai-concierge-venue-grid.has-error{outline:1px solid rgba(180,40,40,.35);outline-offset:6px;border-radius:4px;}
@media (max-width:760px){.ai-concierge-phone-field{grid-template-columns:1fr;gap:10px;}}

/* AV1.177 AI concierge mobile overflow, counter alignment and hidden-state fix */
body.page-template-page-ai-concierge-early-adopters{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}
.page-template-page-ai-concierge-early-adopters .site,
.page-template-page-ai-concierge-early-adopters .site-main,
.page-template-page-ai-concierge-early-adopters .hero,
.page-template-page-ai-concierge-early-adopters .hero-shell,
.page-template-page-ai-concierge-early-adopters .ai-concierge-early-page,
.page-template-page-ai-concierge-early-adopters .ai-concierge-early-page .container,
.page-template-page-ai-concierge-early-adopters .ai-concierge-early-stats,
.page-template-page-ai-concierge-early-adopters .ai-concierge-early-grid,
.page-template-page-ai-concierge-early-adopters .ai-concierge-early-form-card,
.page-template-page-ai-concierge-early-adopters .ai-concierge-early-side,
.page-template-page-ai-concierge-early-adopters .ai-concierge-venue-grid{
  max-width:100%;
  min-width:0;
}
.ai-concierge-early-eligibility-panel[hidden],
.ai-concierge-inline-note[hidden],
[data-ai-concierge-ineligible-panel][hidden],
[data-ai-concierge-frequency-note][hidden],
[data-ai-concierge-booking-note][hidden]{
  display:none!important;
}
.ai-concierge-early-counter{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  column-gap:14px;
  row-gap:2px;
  align-items:end;
  max-width:100%;
}
.ai-concierge-early-counter-number{
  grid-row:1 / span 2;
  align-self:center;
}
.ai-concierge-early-counter-copy{
  align-self:end;
  margin:0 0 2px;
  max-width:13ch;
}
.ai-concierge-early-counter small{
  grid-column:2;
  align-self:start;
  margin:0;
}
@media (max-width:760px){
  html,
  body.page-template-page-ai-concierge-early-adopters{
    width:100%;
    max-width:100%;
    overflow-x:hidden!important;
  }
  .page-template-page-ai-concierge-early-adopters .hero,
  .page-template-page-ai-concierge-early-adopters .hero > .container,
  .page-template-page-ai-concierge-early-adopters .hero-shell,
  .page-template-page-ai-concierge-early-adopters .ai-concierge-early-page,
  .page-template-page-ai-concierge-early-adopters .ai-concierge-early-page .container,
  .page-template-page-ai-concierge-early-adopters .ai-concierge-early-stats,
  .page-template-page-ai-concierge-early-adopters .ai-concierge-early-stat,
  .page-template-page-ai-concierge-early-adopters .ai-concierge-early-grid,
  .page-template-page-ai-concierge-early-adopters .ai-concierge-early-form,
  .page-template-page-ai-concierge-early-adopters .ai-concierge-early-form-card,
  .page-template-page-ai-concierge-early-adopters .ai-concierge-early-side,
  .page-template-page-ai-concierge-early-adopters .ai-concierge-venues-head,
  .page-template-page-ai-concierge-early-adopters .ai-concierge-venue-grid,
  .page-template-page-ai-concierge-early-adopters .ai-concierge-phone-field{
    width:100%;
    max-width:100%;
    min-width:0;
    overflow-x:hidden;
  }
  .ai-concierge-early-counter{
    grid-template-columns:auto minmax(0,1fr);
    column-gap:10px;
    align-items:center;
  }
  .ai-concierge-early-counter-number{
    font-size:44px;
    line-height:.9;
  }
  .ai-concierge-early-counter-copy{
    font-size:12px;
    line-height:1.15;
    letter-spacing:.1em;
    max-width:10ch;
  }
  .ai-concierge-early-counter small{
    font-size:12px;
    line-height:1.25;
  }
  .ai-concierge-venue-counter{
    width:100%;
    justify-content:flex-start;
  }
  .ai-concierge-venue-counter span{
    white-space:normal;
    overflow-wrap:anywhere;
  }
}
@media (max-width:420px){
  .page-template-page-ai-concierge-early-adopters .ai-concierge-venue-grid{
    grid-template-columns:1fr;
  }
}



/* AV1.178 AI concierge final venue selection and mobile alignment fixes */
body.page-template-page-ai-concierge-early-adopters,
body.page-template-page-ai-concierge-early-adopters .site,
body.page-template-page-ai-concierge-early-adopters .site-main{
  overflow-x:clip!important;
  max-width:100vw!important;
}
body.page-template-page-ai-concierge-early-adopters *{
  box-sizing:border-box;
}
.page-template-page-ai-concierge-early-adopters img,
.page-template-page-ai-concierge-early-adopters input,
.page-template-page-ai-concierge-early-adopters select,
.page-template-page-ai-concierge-early-adopters textarea,
.page-template-page-ai-concierge-early-adopters button{
  max-width:100%;
}
.page-template-page-ai-concierge-early-adopters .hero-shell,
.page-template-page-ai-concierge-early-adopters .container{
  width:100%;
  max-width:100%;
  min-width:0;
}
.ai-concierge-early-counter{
  display:flex!important;
  align-items:baseline!important;
  gap:8px!important;
  flex-wrap:wrap;
  max-width:100%;
  min-width:0;
}
.ai-concierge-early-counter-number{
  grid-row:auto!important;
  align-self:baseline!important;
  line-height:.92!important;
}
.ai-concierge-early-counter-copy{
  margin:0!important;
  max-width:none!important;
  white-space:nowrap;
  align-self:baseline!important;
}
.ai-concierge-early-counter small{
  grid-column:auto!important;
  margin:0 0 0 2px!important;
  align-self:baseline!important;
  white-space:nowrap;
}
.ai-concierge-venue-body small{
  display:none!important;
}
.ai-concierge-venue-card::after{
  background:rgba(0,26,57,.84)!important;
}
.ai-concierge-venue-card.is-selected{
  border-color:var(--line)!important;
  box-shadow:none!important;
}
.ai-concierge-venue-card.is-selected .ai-concierge-venue-body{
  background:transparent!important;
}
.ai-concierge-venue-check{
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#fff!important;
  font-size:28px!important;
  line-height:1!important;
  font-weight:400!important;
  box-shadow:none!important;
  opacity:0!important;
  text-shadow:none!important;
}
.ai-concierge-venue-card.is-selected .ai-concierge-venue-check{
  opacity:.82!important;
}
@media (max-width:760px){
  body.page-template-page-ai-concierge-early-adopters{
    overflow-x:clip!important;
    touch-action:pan-y;
  }
  .page-template-page-ai-concierge-early-adopters .hero-shell{
    padding-left:var(--shell-x-mobile)!important;
    padding-right:var(--shell-x-mobile)!important;
  }
  .page-template-page-ai-concierge-early-adopters .ai-concierge-early-page .container{
    padding-left:var(--shell-x-mobile)!important;
    padding-right:var(--shell-x-mobile)!important;
  }
  .ai-concierge-early-counter{
    column-gap:7px!important;
    row-gap:0!important;
  }
  .ai-concierge-early-counter-copy,
  .ai-concierge-early-counter small{
    font-size:12px!important;
    line-height:1.2!important;
    letter-spacing:.08em!important;
  }
  .ai-concierge-early-counter small{
    flex-basis:100%;
    margin-left:0!important;
  }
  .page-template-page-ai-concierge-early-adopters .ai-concierge-venue-grid{
    overflow:visible!important;
  }
}


/* AV1.179 AI concierge counter one-line, mobile 3 cards, centered check */
.ai-concierge-early-counter{
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  white-space:nowrap!important;
}
.ai-concierge-early-counter-number,
.ai-concierge-early-counter-copy,
.ai-concierge-early-counter small{
  flex:0 0 auto!important;
  align-self:baseline!important;
  white-space:nowrap!important;
}
.ai-concierge-early-counter small{
  flex-basis:auto!important;
  margin-left:2px!important;
}
.ai-concierge-venue-check{
  position:absolute!important;
  top:50%!important;
  left:50%!important;
  right:auto!important;
  bottom:auto!important;
  transform:translate(-50%,-50%)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  z-index:4!important;
  pointer-events:none!important;
}
.ai-concierge-venue-card.is-selected .ai-concierge-venue-check{
  transform:translate(-50%,-50%)!important;
}
@media (max-width:760px){
  .ai-concierge-early-counter{
    flex-wrap:nowrap!important;
    gap:6px!important;
    white-space:nowrap!important;
  }
  .ai-concierge-early-counter-number{
    font-size:38px!important;
  }
  .ai-concierge-early-counter-copy,
  .ai-concierge-early-counter small{
    flex-basis:auto!important;
    margin-left:0!important;
    font-size:10px!important;
    line-height:1.15!important;
    letter-spacing:.06em!important;
  }
  .page-template-page-ai-concierge-early-adopters .ai-concierge-venue-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .page-template-page-ai-concierge-early-adopters .ai-concierge-venue-media{
    aspect-ratio:1 / 1!important;
  }
  .page-template-page-ai-concierge-early-adopters .ai-concierge-venue-body{
    padding:7px 5px 8px!important;
  }
  .page-template-page-ai-concierge-early-adopters .ai-concierge-venue-body strong{
    font-size:11px!important;
    line-height:1.22!important;
  }
  .ai-concierge-venue-check{
    font-size:24px!important;
  }
}
@media (max-width:420px){
  .page-template-page-ai-concierge-early-adopters .ai-concierge-venue-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}


/* AV1.180 AI concierge venue check exact visual center */
.ai-concierge-venue-card .ai-concierge-venue-check{
  position:absolute!important;
  top:50%!important;
  left:50%!important;
  right:auto!important;
  bottom:auto!important;
  width:28px!important;
  height:28px!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#fff!important;
  font-size:0!important;
  line-height:1!important;
  font-weight:500!important;
  transform:translate(-50%,-50%)!important;
  z-index:5!important;
  pointer-events:none!important;
}
.ai-concierge-venue-card .ai-concierge-venue-check::before{
  content:"✓";
  display:block;
  font-size:24px;
  line-height:1;
  color:#fff;
  transform:translateY(1px);
}
.ai-concierge-venue-card.is-selected .ai-concierge-venue-check{
  opacity:1!important;
  transform:translate(-50%,-50%)!important;
}


/* AV1.181 AI concierge venue selection polish: no horizontal overflow, exact selected message, no greyed locked cards, venue title typography */
.page-template-page-ai-concierge-early-adopters .ai-concierge-venues-head,
.page-template-page-ai-concierge-early-adopters .ai-concierge-venue-grid,
.page-template-page-ai-concierge-early-adopters .ai-concierge-venue-card,
.page-template-page-ai-concierge-early-adopters .ai-concierge-venue-media,
.page-template-page-ai-concierge-early-adopters .ai-concierge-venue-body{
  max-width:100%!important;
  min-width:0!important;
}
.page-template-page-ai-concierge-early-adopters .ai-concierge-venue-grid{
  width:100%!important;
  overflow-x:hidden!important;
}
.page-template-page-ai-concierge-early-adopters .ai-concierge-venue-card,
.page-template-page-ai-concierge-early-adopters .ai-concierge-venue-card.is-locked{
  opacity:1!important;
  filter:none!important;
}
.page-template-page-ai-concierge-early-adopters .ai-concierge-venue-card.is-locked .ai-concierge-venue-media,
.page-template-page-ai-concierge-early-adopters .ai-concierge-venue-card.is-locked img{
  opacity:1!important;
  filter:none!important;
}
.page-template-page-ai-concierge-early-adopters .ai-concierge-venue-body strong{
  font-family:var(--font-display)!important;
  font-weight:400!important;
  letter-spacing:-.035em!important;
  color:var(--navy)!important;
  max-width:100%!important;
  min-width:0!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.page-template-page-ai-concierge-early-adopters .ai-concierge-venue-card.is-selected .ai-concierge-venue-body strong{
  color:var(--navy)!important;
}
.ai-concierge-venue-complete-message{
  margin:0 0 14px;
  padding:10px 12px;
  border:1px solid rgba(181,138,73,.26);
  border-radius:var(--radius);
  background:rgba(181,138,73,.08);
  color:var(--navy);
  font-size:13px;
  line-height:1.35;
  font-weight:600;
}
.ai-concierge-venue-complete-message[hidden]{display:none!important;}
.ai-concierge-venue-counter span[data-ai-concierge-count-label]{white-space:normal;}
@media (max-width:760px){
  .page-template-page-ai-concierge-early-adopters .ai-concierge-venue-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
  }
  .page-template-page-ai-concierge-early-adopters .ai-concierge-venue-body strong{
    font-size:12px!important;
    line-height:1.14!important;
  }
  .ai-concierge-venue-complete-message{
    margin-bottom:12px;
    font-size:12px;
  }
}
@media (max-width:380px){
  .page-template-page-ai-concierge-early-adopters .ai-concierge-venue-grid{
    gap:6px!important;
  }
  .page-template-page-ai-concierge-early-adopters .ai-concierge-venue-body{
    padding-left:4px!important;
    padding-right:4px!important;
  }
  .page-template-page-ai-concierge-early-adopters .ai-concierge-venue-body strong{
    font-size:11px!important;
  }
}


/* AV1.182 AI concierge venue grid hard fix */
.ai-concierge-early-page,
.ai-concierge-early-page *,
.ai-concierge-early-page *::before,
.ai-concierge-early-page *::after{
  box-sizing:border-box;
}
.ai-concierge-early-page,
.ai-concierge-early-page .container,
.ai-concierge-early-form,
.ai-concierge-early-form-card,
.ai-concierge-early-step,
.ai-concierge-venues-head,
.ai-concierge-venue-grid{
  max-width:100%!important;
  min-width:0!important;
  overflow-x:hidden!important;
}
.ai-concierge-venues-head{
  width:100%!important;
}
.ai-concierge-venues-head > *{
  min-width:0!important;
  max-width:100%!important;
}
.ai-concierge-venue-grid{
  display:grid!important;
  width:100%!important;
  max-width:100%!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  padding:0!important;
  margin:0!important;
}
.ai-concierge-venue-card,
.ai-concierge-venue-card.is-locked{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  opacity:1!important;
  filter:none!important;
  transform:none!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.ai-concierge-venue-card.is-locked,
.ai-concierge-venue-card.is-locked .ai-concierge-venue-media,
.ai-concierge-venue-card.is-locked img{
  opacity:1!important;
  filter:none!important;
}
.ai-concierge-venue-card:hover{
  transform:none!important;
}
.ai-concierge-venue-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(0,26,57,.76)!important;
  opacity:0;
  transition:opacity .18s ease;
  pointer-events:none;
  z-index:2;
}
.ai-concierge-venue-card.is-selected::after{
  opacity:1!important;
}
.ai-concierge-venue-media,
.ai-concierge-venue-body{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
.ai-concierge-venue-body{
  background:#fff!important;
  padding:8px 6px!important;
}
.ai-concierge-venue-body strong{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  font-family:var(--font-display)!important;
  font-size:13px!important;
  line-height:1.12!important;
  font-weight:400!important;
  letter-spacing:-.035em!important;
  color:var(--navy)!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.ai-concierge-venue-card.is-selected .ai-concierge-venue-body,
.ai-concierge-venue-card.is-selected .ai-concierge-venue-body strong{
  background:#fff!important;
  color:var(--navy)!important;
}
.ai-concierge-venue-card .ai-concierge-venue-check{
  position:absolute!important;
  top:50%!important;
  left:50%!important;
  right:auto!important;
  bottom:auto!important;
  width:32px!important;
  height:32px!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#fff!important;
  font-size:0!important;
  line-height:1!important;
  opacity:0!important;
  transform:translate3d(-50%,-50%,0)!important;
  z-index:5!important;
  pointer-events:none!important;
}
.ai-concierge-venue-card .ai-concierge-venue-check::before{
  content:"✓";
  display:block;
  color:#fff!important;
  font-family:Arial, sans-serif!important;
  font-size:24px!important;
  line-height:1!important;
  font-weight:400!important;
  transform:none!important;
}
.ai-concierge-venue-card.is-selected .ai-concierge-venue-check{
  opacity:.86!important;
  transform:translate3d(-50%,-50%,0)!important;
}
.ai-concierge-venue-complete-message{
  width:100%!important;
  max-width:100%!important;
  margin:0 0 12px!important;
  padding:9px 10px!important;
  border:1px solid var(--line)!important;
  border-radius:var(--radius)!important;
  background:#fff!important;
  color:var(--navy)!important;
  font-family:var(--font-body)!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:600!important;
  box-shadow:none!important;
}
.ai-concierge-venue-complete-message[hidden]{
  display:none!important;
}
@media (max-width:760px){
  html,
  body,
  body.page-template-page-ai-concierge-early-adopters{
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  .ai-concierge-early-page,
  .ai-concierge-early-page .container{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  .ai-concierge-venue-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
  }
  .ai-concierge-venue-media{
    aspect-ratio:1 / 1!important;
  }
  .ai-concierge-venue-body{
    padding:6px 4px 7px!important;
  }
  .ai-concierge-venue-body strong{
    font-size:11px!important;
    line-height:1.12!important;
    letter-spacing:-.025em!important;
  }
  .ai-concierge-venue-card .ai-concierge-venue-check::before{
    font-size:22px!important;
  }
}


/* AV1.177 homepage hero video support */
.hero.has-video{background-color:var(--navy);}
.hero.has-video .hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;pointer-events:none;display:block;}
.hero.has-video.has-overlay::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,26,57,.30),rgba(0,26,57,.82));pointer-events:none;}
.hero.has-video:not(.has-overlay)::after{display:none;}
.hero.has-video .hero-shell{position:relative;z-index:2;}
@media (prefers-reduced-motion:reduce){.hero.has-video .hero-video{display:none;}}


/* AV1.178 homepage mobile hero video and height */
.hero.has-video .hero-video--mobile{display:none;}
@media (max-width:760px){
  body.home .hero,
  body.home .hero-shell{
    min-height:60vh;
  }
  body.home .hero-shell{
    padding-top:24px;
    padding-bottom:40px;
  }
  .hero.has-video.has-mobile-video .hero-video--desktop{display:none;}
  .hero.has-video.has-mobile-video .hero-video--mobile{display:block;}
}


/* AV1.179 homepage location category slider mobile sizing */
@media (max-width:760px){
  body.home #home-location-category-slider .category-scroller .category-card,
  body.home #home-location-category-slider .category-scroller .ui-card{
    width:150px!important;
    min-width:150px!important;
  }
  body.home #home-location-category-slider .category-card .media{
    aspect-ratio:5 / 4!important;
  }
  body.home #home-location-category-slider .category-card .card-body{
    padding:10px!important;
  }
  body.home #home-location-category-slider .category-card .meta-line{
    font-size:9px!important;
    line-height:1.25!important;
  }
  body.home #home-location-category-slider .category-card .card-title{
    margin-top:6px!important;
    font-size:16px!important;
    line-height:1.08!important;
    min-height:2.15em!important;
    max-width:11ch!important;
  }
}


/* AV1.180 location overview category slider mobile sizing */
@media (max-width:760px){
  body.post-type-archive-locatie #location-category-slider .category-scroller .category-card,
  body.post-type-archive-locatie #location-category-slider .category-scroller .ui-card{
    width:150px!important;
    min-width:150px!important;
  }
  body.post-type-archive-locatie #location-category-slider .category-card .media{
    aspect-ratio:5 / 4!important;
  }
  body.post-type-archive-locatie #location-category-slider .category-card .card-body{
    padding:10px!important;
  }
  body.post-type-archive-locatie #location-category-slider .category-card .meta-line{
    font-size:9px!important;
    line-height:1.25!important;
  }
  body.post-type-archive-locatie #location-category-slider .category-card .card-title{
    margin-top:6px!important;
    font-size:16px!important;
    line-height:1.08!important;
    min-height:2.15em!important;
    max-width:11ch!important;
  }
}


/* AV1.181 hard homepage breadcrumb removal + location overview category mobile sizing */
body.home .hero .breadcrumb,
body.front-page .hero .breadcrumb,
body.page-template-front-page .hero .breadcrumb,
.hero .breadcrumb:empty{
  display:none!important;
}
@media (max-width:760px){
  #location-category-slider .category-scroller,
  .post-type-archive-locatie #location-category-slider .category-scroller,
  .archive-locatie #location-category-slider .category-scroller{
    overflow-x:auto!important;
  }
  #location-category-slider .category-scroller .card-track,
  .post-type-archive-locatie #location-category-slider .category-scroller .card-track,
  .archive-locatie #location-category-slider .category-scroller .card-track{
    gap:12px!important;
    width:max-content!important;
  }
  #location-category-slider .category-scroller .ui-card,
  #location-category-slider .category-scroller .category-card,
  .post-type-archive-locatie #location-category-slider .category-scroller .ui-card,
  .post-type-archive-locatie #location-category-slider .category-scroller .category-card,
  .archive-locatie #location-category-slider .category-scroller .ui-card,
  .archive-locatie #location-category-slider .category-scroller .category-card{
    flex:0 0 150px!important;
    width:150px!important;
    min-width:150px!important;
    max-width:150px!important;
  }
  #location-category-slider .category-card .media{
    aspect-ratio:5 / 4!important;
  }
  #location-category-slider .category-card .card-body{
    padding:10px!important;
  }
  #location-category-slider .category-card .meta-line{
    font-size:9px!important;
    line-height:1.25!important;
  }
  #location-category-slider .category-card .card-title{
    margin-top:6px!important;
    font-size:16px!important;
    line-height:1.08!important;
    min-height:2.15em!important;
    max-width:11ch!important;
  }
}

/* AV1.182 homepage hero centering and overview category slider mobile sizing */
body.home .hero-shell,
body.front-page .hero-shell,
body.page-template-front-page .hero-shell{
  grid-template-rows:1fr auto 1fr!important;
  align-items:center!important;
}
body.home .hero-content,
body.front-page .hero-content,
body.page-template-front-page .hero-content{
  grid-row:2!important;
  align-self:center!important;
}
body.home .hero-meta,
body.front-page .hero-meta,
body.page-template-front-page .hero-meta{
  grid-row:3!important;
}
@media (max-width:760px){
  #category-slider .category-scroller,
  #event-category-slider .category-scroller,
  #rental-category-slider .category-scroller{
    overflow-x:auto!important;
  }
  #category-slider .category-scroller .card-track,
  #event-category-slider .category-scroller .card-track,
  #rental-category-slider .category-scroller .card-track{
    gap:12px!important;
    width:max-content!important;
  }
  #category-slider .category-scroller .ui-card,
  #category-slider .category-scroller .category-card,
  #event-category-slider .category-scroller .ui-card,
  #event-category-slider .category-scroller .category-card,
  #rental-category-slider .category-scroller .ui-card,
  #rental-category-slider .category-scroller .category-card{
    flex:0 0 150px!important;
    width:150px!important;
    min-width:150px!important;
    max-width:150px!important;
  }
  #category-slider .category-card .media,
  #event-category-slider .category-card .media,
  #rental-category-slider .category-card .media{
    aspect-ratio:5 / 4!important;
  }
  #category-slider .category-card .card-body,
  #event-category-slider .category-card .card-body,
  #rental-category-slider .category-card .card-body{
    padding:10px!important;
  }
  #category-slider .category-card .meta-line,
  #event-category-slider .category-card .meta-line,
  #rental-category-slider .category-card .meta-line{
    font-size:9px!important;
    line-height:1.25!important;
  }
  #category-slider .category-card .card-title,
  #event-category-slider .category-card .card-title,
  #rental-category-slider .category-card .card-title{
    margin-top:6px!important;
    font-size:16px!important;
    line-height:1.08!important;
    min-height:2.15em!important;
    max-width:11ch!important;
  }
}

/* AV2.050 submit-location opening hours and category request fields */
.location-submit-hours{display:grid;gap:10px;width:100%;}
.location-submit-hours-row{display:grid;grid-template-columns:minmax(90px,1fr) minmax(96px,.85fr) minmax(105px,1fr) minmax(105px,1fr);gap:10px;align-items:end;padding:12px;border:1px solid rgba(0,26,57,.12);border-radius:4px;background:#fff;min-width:0;}
.location-submit-hours-day{font:inherit;font-weight:600;color:var(--color-heading,#001a39);line-height:1.25;}
.location-submit-hours-row label{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:12px;line-height:1.25;color:var(--color-muted,#667085);}
.location-submit-hours-row .location-submit-hours-closed{display:flex;flex-direction:row;align-items:center;gap:8px;color:var(--color-heading,#001a39);font-size:13px;line-height:1.25;}
.location-submit-hours-row .field-select{width:100%;min-width:0;}
.location-submit-hours-row select:disabled{opacity:.55;background:#f6f7f8;}
@media (max-width:700px){
  .location-submit-hours-row{grid-template-columns:1fr 1fr;gap:9px;padding:10px;}
  .location-submit-hours-day{grid-column:1 / -1;}
  .location-submit-hours-closed{grid-column:1 / -1;}
}


/* AV1 3.010 Submit Location isolated form UX, safer spacing and loader */
.location-submit-page-section{
  --submit-field-h:50px;
  --submit-gap:14px;
  --submit-step-gap:22px;
  --submit-pad:28px;
}
.location-submit-page-section .section-header{
  margin:0 0 28px!important;
  max-width:760px;
}
.location-submit-page-section .location-submit-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(300px,380px)!important;
  gap:20px!important;
  align-items:start!important;
}
.location-submit-page-section .location-submit-form-card,
.location-submit-page-section .location-submit-guidance{
  min-width:0!important;
  width:100%!important;
  border-radius:4px!important;
  padding:var(--submit-pad)!important;
}
.location-submit-page-section .location-submit-form-card>.kicker,
.location-submit-page-section .location-submit-guidance>.kicker{
  margin:0 0 10px!important;
}
.location-submit-page-section .location-submit-form-card .component-title,
.location-submit-page-section .location-submit-guidance .component-title{
  margin:0 0 12px!important;
  line-height:1.08!important;
}
.location-submit-page-section .contact-form-intro,
.location-submit-page-section .location-submit-guidance p{
  margin:0!important;
  font-size:14px!important;
  line-height:1.72!important;
  color:var(--muted)!important;
}
.location-submit-page-section .location-submit-error-summary{
  margin:18px 0 0!important;
  padding:14px 16px!important;
  border-radius:4px!important;
  border:1px solid rgba(176,42,42,.28)!important;
  background:#fff8f7!important;
  color:#8a2626!important;
  font-size:14px!important;
  line-height:1.55!important;
}
.location-submit-page-section .location-submit-error-summary[hidden]{display:none!important;}
.location-submit-page-section .location-submit-error-summary strong{margin:0 0 7px!important;font-size:14px!important;line-height:1.3!important;}
.location-submit-page-section .location-submit-error-summary ul{margin:0!important;padding-left:18px!important;}
.location-submit-page-section .location-submit-form{
  margin-top:20px!important;
}
.location-submit-page-section .location-submit-step{
  margin:0!important;
  padding:0 0 var(--submit-step-gap)!important;
  border:0!important;
  border-bottom:1px solid rgba(0,26,57,.10)!important;
}
.location-submit-page-section .location-submit-step+.location-submit-step,
.location-submit-page-section .location-submit-disclaimer,
.location-submit-page-section .form-actions{
  margin-top:var(--submit-step-gap)!important;
}
.location-submit-page-section .location-submit-step:last-of-type{
  padding-bottom:0!important;
  border-bottom:0!important;
}
.location-submit-page-section .event-submit-step-title,
.location-submit-page-section .location-submit-disclaimer h4{
  margin:0 0 12px!important;
  font-family:var(--font-display)!important;
  font-size:21px!important;
  line-height:1.12!important;
  letter-spacing:-.035em!important;
  font-weight:400!important;
  color:var(--navy)!important;
}
.location-submit-page-section .event-submit-step-help,
.location-submit-page-section .help{
  margin:0 0 12px!important;
  max-width:68ch!important;
  font-size:13px!important;
  line-height:1.58!important;
  color:rgba(24,33,45,.62)!important;
  font-style:normal!important;
}
.location-submit-page-section .field-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  min-width:0!important;
  width:100%!important;
}
.location-submit-page-section .field,
.location-submit-page-section .field-grid>*{
  min-width:0!important;
  max-width:100%!important;
}
.location-submit-page-section .field--full{
  grid-column:1 / -1!important;
}
.location-submit-page-section .field-label,
.location-submit-page-section .location-submit-time-field>span{
  display:block!important;
  margin:0 0 8px!important;
  font-size:11px!important;
  line-height:1.25!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
  font-weight:700!important;
  color:var(--navy)!important;
}
.location-submit-page-section .field-input,
.location-submit-page-section .field-select,
.location-submit-page-section .field-textarea,
.location-submit-page-section .location-submit-time-select,
.location-submit-page-section select.location-submit-time-select{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  border:1px solid rgba(0,26,57,.14)!important;
  border-radius:4px!important;
  background-color:#fff!important;
  color:var(--text)!important;
  font-size:14px!important;
  font-weight:400!important;
  line-height:1.4!important;
  box-shadow:none!important;
  outline:none!important;
}
.location-submit-page-section .field-input,
.location-submit-page-section .field-select,
.location-submit-page-section .location-submit-time-select,
.location-submit-page-section select.location-submit-time-select{
  height:var(--submit-field-h)!important;
  min-height:var(--submit-field-h)!important;
  padding:0 14px!important;
}
.location-submit-page-section .field-select,
.location-submit-page-section .location-submit-time-select,
.location-submit-page-section select.location-submit-time-select{
  padding-right:42px!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'><path d='M5 7.5l5 5 5-5' stroke='%23001A39' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>")!important;
  background-repeat:no-repeat!important;
  background-position:right 14px center!important;
  background-size:16px 16px!important;
}
.location-submit-page-section .field-textarea{
  height:auto!important;
  min-height:118px!important;
  padding:13px 14px!important;
  resize:vertical!important;
}
.location-submit-page-section #location-description{
  min-height:190px!important;
}
.location-submit-page-section .field-input:focus,
.location-submit-page-section .field-select:focus,
.location-submit-page-section .field-textarea:focus,
.location-submit-page-section .location-submit-time-select:focus{
  border-color:rgba(0,26,57,.38)!important;
}
.location-submit-page-section input[type="file"].field-input{
  height:auto!important;
  min-height:var(--submit-field-h)!important;
  padding:10px 12px!important;
  line-height:1.4!important;
}
.location-submit-page-section input[type="file"]::file-selector-button{
  min-height:32px;
  margin-right:12px;
  padding:7px 12px;
  border:1px solid rgba(0,26,57,.18);
  border-radius:4px;
  background:#f7f8fa;
  color:var(--navy);
  font:inherit;
  font-size:13px;
}
.location-submit-page-section .location-submit-checkbox,
.location-submit-page-section .checkbox-line.location-submit-checkbox{
  display:flex!important;
  align-items:flex-start!important;
  gap:10px!important;
  margin:0!important;
  padding:0!important;
  font-size:14px!important;
  line-height:1.55!important;
  color:var(--text)!important;
}
.location-submit-page-section .location-submit-checkbox input{
  flex:0 0 auto!important;
  margin:3px 0 0!important;
}
.location-submit-page-section .location-submit-hours{
  display:grid!important;
  gap:10px!important;
  width:100%!important;
}
.location-submit-page-section .location-submit-hours-row{
  display:grid!important;
  grid-template-columns:minmax(96px,.8fr) minmax(96px,.65fr) minmax(260px,1.8fr)!important;
  gap:12px!important;
  align-items:center!important;
  padding:12px!important;
  border:1px solid rgba(0,26,57,.10)!important;
  border-radius:4px!important;
  background:#fff!important;
  min-width:0!important;
}
.location-submit-page-section .location-submit-hours-day{
  font-family:var(--font-body,inherit)!important;
  font-size:14px!important;
  line-height:1.25!important;
  font-weight:600!important;
  color:var(--navy)!important;
}
.location-submit-page-section .location-submit-hours-closed{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0!important;
  font-size:13px!important;
  line-height:1.3!important;
  color:rgba(24,33,45,.78)!important;
}
.location-submit-page-section .location-submit-hours-closed input{margin:0!important;}
.location-submit-page-section .location-submit-hours-times{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  min-width:0!important;
}
.location-submit-page-section .location-submit-time-field{
  display:block!important;
  min-width:0!important;
  color:var(--navy)!important;
}
.location-submit-page-section .location-submit-time-field>span{
  margin-bottom:7px!important;
  font-size:10px!important;
  letter-spacing:.12em!important;
}
.location-submit-page-section .location-submit-hours-row.is-closed{
  background:rgba(0,26,57,.025)!important;
}
.location-submit-page-section .location-submit-hours-row.is-closed .location-submit-hours-times{
  opacity:.45!important;
}
.location-submit-page-section .location-submit-disclaimer{
  padding:18px!important;
  border-radius:4px!important;
  background:rgba(0,26,57,.035)!important;
  border:1px solid rgba(0,26,57,.09)!important;
}
.location-submit-page-section .location-submit-disclaimer p{
  margin:0 0 16px!important;
  font-size:14px!important;
  line-height:1.7!important;
  color:var(--muted)!important;
}
.location-submit-page-section .form-actions{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  padding-top:0!important;
}
.location-submit-page-section .form-actions .button{
  min-height:48px!important;
}
.location-submit-page-section .field.is-invalid .field-input,
.location-submit-page-section .field.is-invalid .field-select,
.location-submit-page-section .field.is-invalid .field-textarea,
.location-submit-page-section .location-submit-hours-row.is-invalid,
.location-submit-page-section .location-submit-time-field.is-invalid .location-submit-time-select,
.location-submit-page-section [aria-invalid="true"]{
  border-color:rgba(176,42,42,.72)!important;
  box-shadow:0 0 0 1px rgba(176,42,42,.12)!important;
}
.location-submit-page-section [data-location-word-count].is-ok,
.location-submit-page-section [data-location-image-count].is-ok{
  color:var(--green,#00AF54)!important;
  font-weight:700!important;
}
.location-submit-page-section .location-submit-actions{
  flex-wrap:wrap!important;
}
.location-submit-page-section .location-submit-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  position:relative!important;
}
.location-submit-page-section .location-submit-button[disabled]{
  cursor:progress!important;
  opacity:.78!important;
}
.location-submit-page-section .location-submit-button-spinner{
  display:none;
  width:15px;
  height:15px;
  border:2px solid currentColor;
  border-right-color:transparent;
  border-radius:999px;
  animation:av1-submit-spin .75s linear infinite;
}
.location-submit-page-section .location-submit-button.is-loading .location-submit-button-spinner{
  display:inline-block;
}
.location-submit-page-section .location-submit-loading-text{
  font-size:13px!important;
  line-height:1.5!important;
  color:var(--muted)!important;
}
.location-submit-page-section .location-submit-loading-text[hidden]{display:none!important;}
.location-submit-page-section .location-submit-form.is-submitting{
  pointer-events:none;
}
.location-submit-page-section .location-submit-form.is-submitting .location-submit-actions{
  pointer-events:auto;
}
@keyframes av1-submit-spin{to{transform:rotate(360deg);}}
.location-submit-page-section .event-submit-guidance-list{
  margin:18px 0 0!important;
  display:grid!important;
  gap:10px!important;
}
.location-submit-page-section .event-submit-guidance-list li{
  font-size:14px!important;
  line-height:1.6!important;
  color:var(--muted)!important;
}
@media (max-width:980px){
  .location-submit-page-section .location-submit-grid{
    grid-template-columns:1fr!important;
  }
}
@media (max-width:760px){
  .location-submit-page-section{
    --submit-field-h:48px;
    --submit-step-gap:18px;
    --submit-pad:18px;
  }
  .location-submit-page-section .section-header{
    margin-bottom:22px!important;
  }
  .location-submit-page-section .location-submit-grid{
    gap:18px!important;
  }
  .location-submit-page-section .location-submit-form-card,
  .location-submit-page-section .location-submit-guidance{
    padding:20px!important;
  }
  .location-submit-page-section .location-submit-form{
    margin-top:20px!important;
  }
  .location-submit-page-section .event-submit-step-title,
  .location-submit-page-section .location-submit-disclaimer h4{
    font-size:20px!important;
    margin-bottom:12px!important;
  }
  .location-submit-page-section .field-grid{
    grid-template-columns:1fr!important;
    gap:13px!important;
  }
  .location-submit-page-section #location-description{
    min-height:170px!important;
  }
  .location-submit-page-section .location-submit-hours-row{
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:12px!important;
  }
  .location-submit-page-section .location-submit-hours-times{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .location-submit-page-section .location-submit-time-field>span{
    margin-bottom:6px!important;
  }
  .location-submit-page-section .form-actions,
  .location-submit-page-section .form-actions .button{
    width:100%!important;
  }
  .location-submit-page-section .location-submit-loading-text{
    width:100%!important;
    text-align:center!important;
  }
}
@media (max-width:390px){
  .location-submit-page-section .location-submit-hours-times{
    grid-template-columns:1fr!important;
  }
}


/* AV1 3.008 Submit Location refinements: no custom image-size validation, phone code combo, mobile overflow guard */
@media (max-width: 782px){
  html,
  body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  body{ position:relative!important; }
  .site,
  .site-main,
  main,
  .page-section,
  .container,
  .location-submit-page-section,
  .location-submit-page-section *{
    max-width:100%!important;
    box-sizing:border-box!important;
  }
}
.location-submit-page-section .location-submit-phone-combo{
  display:grid!important;
  grid-template-columns:minmax(190px,.8fr) minmax(0,1.2fr)!important;
  gap:12px!important;
  align-items:start!important;
  width:100%!important;
  min-width:0!important;
}
.location-submit-page-section .location-submit-phone-code,
.location-submit-page-section .location-submit-phone-number{ min-width:0!important; }
.location-submit-page-section .location-submit-phone-field.is-invalid .location-submit-phone-combo .field-select,
.location-submit-page-section .location-submit-phone-field.is-invalid .location-submit-phone-combo .field-input{
  border-color:rgba(176,42,42,.72)!important;
  box-shadow:0 0 0 1px rgba(176,42,42,.12)!important;
}
@media (max-width:760px){
  .location-submit-page-section .location-submit-phone-combo{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .location-submit-page-section .location-submit-hours-times{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* AV1 3.017: tighten blog-detail H3 spacing inside imported SEO text blocks.
   H2 spacing stays unchanged. This only targets single blog article text components. */
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3{
  margin-top:20px;
}
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) > h3:first-child,
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) > .wp-block-group__inner-container > h3:first-child{
  margin-top:0;
}
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) :where(.wp-block-image,figure) + h3{
  margin-top:16px;
}
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + h3{
  margin-top:16px;
}
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + p,
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + ul,
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + ol{
  margin-top:12px;
}
@media (max-width:760px){
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3{
    margin-top:18px;
    font-size:24px;
    line-height:1.12;
  }
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) > h3:first-child,
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) > .wp-block-group__inner-container > h3:first-child{
    margin-top:0;
  }
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) :where(.wp-block-image,figure) + h3,
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + h3{
    margin-top:14px;
  }
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + p,
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + ul,
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + ol{
    margin-top:10px;
  }
}

/* AV1 3.018: tighten only the space below H3 titles in blog text blocks.
   This leaves H2 spacing and all importer/category/event behaviour unchanged. */
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + p,
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + ul,
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + ol{
  margin-top:8px;
}
@media (max-width:760px){
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + p,
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + ul,
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + ol{
    margin-top:7px;
  }
}


/* AV1 3.019: final H3-to-body spacing for imported blog text blocks.
   Keep H2 spacing unchanged; only tighten the immediate gap below H3 headings. */
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3{
  margin-bottom:0;
}
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + p,
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + ul,
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + ol,
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + .wp-block-paragraph,
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + .wp-block-list{
  margin-top:6px !important;
}
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + .wp-block-group{
  margin-top:6px !important;
}
.single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + .wp-block-group > :first-child{
  margin-top:0 !important;
}
@media (max-width:760px){
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + p,
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + ul,
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + ol,
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + .wp-block-paragraph,
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + .wp-block-list,
  .single-article :where(.av1-article-intro-block,.article-content .av1-content-block,.article-content .wp-block-group.av1-content-block) h3 + .wp-block-group{
    margin-top:6px !important;
  }
}

/* AV1 4.003: render reusable location slider components in blog content as the same full-width rail used on the homepage, never as a boxed text surface. */
.single-article .article-content > .location-inline-slider-shortcode,
.single-article .article-content > .wp-block-shortcode > .location-inline-slider-shortcode{
  width:100vw;
  max-width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  background:transparent;
  border:0;
  border-radius:0;
  padding-top:var(--section-y);
  padding-left:0;
  padding-right:0;
}
.single-article .article-content > .location-inline-slider-shortcode:first-child,
.single-article .article-content > .wp-block-shortcode:first-child > .location-inline-slider-shortcode:first-child{
  padding-top:0;
}
.single-article .article-content > .location-inline-slider-shortcode .container,
.single-article .article-content > .location-inline-slider-shortcode .scroller,
.single-article .article-content > .wp-block-shortcode > .location-inline-slider-shortcode .container,
.single-article .article-content > .wp-block-shortcode > .location-inline-slider-shortcode .scroller{
  width:80vw!important;
  max-width:none!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
.single-article .article-content > .location-inline-slider-shortcode .card-track,
.single-article .article-content > .wp-block-shortcode > .location-inline-slider-shortcode .card-track{
  padding-left:0!important;
  padding-right:0!important;
}
.single-article .article-content > .location-inline-slider-shortcode + .av1-content-block,
.single-article .article-content > .location-inline-slider-shortcode + .wp-block-group.av1-content-block{
  margin-top:0;
}
@media (max-width:760px){
  .single-article .article-content > .location-inline-slider-shortcode,
  .single-article .article-content > .wp-block-shortcode > .location-inline-slider-shortcode{
    width:100%;
    max-width:100%;
    margin-left:0;
    margin-right:0;
    padding-top:var(--section-y-mobile);
  }
  .single-article .article-content > .location-inline-slider-shortcode .container,
  .single-article .article-content > .location-inline-slider-shortcode .scroller,
  .single-article .article-content > .wp-block-shortcode > .location-inline-slider-shortcode .container,
  .single-article .article-content > .wp-block-shortcode > .location-inline-slider-shortcode .scroller{
    width:100%!important;
    max-width:100%!important;
    padding-left:0!important;
    padding-right:0!important;
  }
}

/* AV1 4.004: location slider in blog content must sit between text components without breaking saved editor typography. */
.single-article .article-content > .wp-block-shortcode{
  display:block;
  width:100%;
  max-width:100%;
  margin:0;
  padding:0;
  background:transparent;
  border:0;
}
.single-article .article-content > .location-inline-slider-shortcode,
.single-article .article-content > .wp-block-shortcode > .location-inline-slider-shortcode{
  padding-top:0!important;
  margin-top:0!important;
  margin-bottom:0!important;
}
.single-article .article-content > .location-inline-slider-shortcode + .av1-content-block,
.single-article .article-content > .location-inline-slider-shortcode + .wp-block-group.av1-content-block,
.single-article .article-content > .wp-block-shortcode + .av1-content-block,
.single-article .article-content > .wp-block-shortcode + .wp-block-group.av1-content-block{
  margin-top:0!important;
}
@media (max-width:760px){
  .single-article .article-content > .location-inline-slider-shortcode,
  .single-article .article-content > .wp-block-shortcode > .location-inline-slider-shortcode{
    padding-top:0!important;
  }
}

/* AV1 4.005: keep edited blog text stable after adding reusable sliders.
   If WordPress saves a slider inside an imported text component, the PHP renderer
   now breaks it out. These rules keep the resulting blog text at the approved
   mobile/desktop typography regardless of minor editor wrapper changes. */
.single-article .article-content > :where(.av1-content-block, .wp-block-group.av1-content-block, section.av1-content-block) :where(p, li){
  font-size:16px;
  line-height:1.7;
}
.single-article .article-content > :where(.av1-content-block, .wp-block-group.av1-content-block, section.av1-content-block) h2{
  font-size:clamp(31px,3vw,40px);
  line-height:1.05;
}
@media (max-width:760px){
  .single-article .article-content > :where(.av1-content-block, .wp-block-group.av1-content-block, section.av1-content-block) :where(p, li){
    font-size:15px!important;
    line-height:1.76!important;
  }
  .single-article .article-content > :where(.av1-content-block, .wp-block-group.av1-content-block, section.av1-content-block) h2{
    font-size:30px!important;
    line-height:1.08!important;
  }
  .single-article .article-content > :where(.av1-content-block, .wp-block-group.av1-content-block, section.av1-content-block) h3{
    font-size:24px!important;
    line-height:1.12!important;
  }
}


/* AV1 4.006: edited/saved blog fallback typography.
   Gutenberg can re-save imported content as plain top-level headings/paragraphs
   or differently wrapped WordPress blocks. Keep those saved blogs identical to
   imported AV1 text blocks, without touching location-slider card typography. */
.single-article .article-content > :where(h2,h3,p,ul,ol,blockquote,.wp-block-heading,.wp-block-paragraph,.wp-block-list){
  max-width:100%;
  text-align:left;
}
.single-article .article-content > :where(p,.wp-block-paragraph),
.single-article .article-content > :where(ul,ol,.wp-block-list),
.single-article .article-content > :where(ul,ol,.wp-block-list) li{
  font-size:16px;
  line-height:1.7;
  color:var(--muted);
}
.single-article .article-content > :where(h2,.wp-block-heading):is(h2),
.single-article .article-content > h2.wp-block-heading,
.single-article .article-content > h2{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(31px,3vw,40px);
  line-height:1.05;
  font-weight:400;
  letter-spacing:-.042em;
  color:var(--navy);
}
.single-article .article-content > :where(h3,.wp-block-heading):is(h3),
.single-article .article-content > h3.wp-block-heading,
.single-article .article-content > h3{
  margin:18px 0 0;
  font-family:var(--font-display);
  font-size:clamp(24px,2.2vw,30px);
  line-height:1.12;
  font-weight:400;
  letter-spacing:-.042em;
  color:var(--navy);
}
.single-article .article-content > h3 + :where(p,ul,ol,.wp-block-paragraph,.wp-block-list){
  margin-top:6px!important;
}
.single-article .article-content > h2 + :where(p,ul,ol,.wp-block-paragraph,.wp-block-list){
  margin-top:24px;
}
@media (max-width:760px){
  .single-article .article-content > :where(p,.wp-block-paragraph),
  .single-article .article-content > :where(ul,ol,.wp-block-list),
  .single-article .article-content > :where(ul,ol,.wp-block-list) li{
    font-size:15px!important;
    line-height:1.76!important;
  }
  .single-article .article-content > h2,
  .single-article .article-content > h2.wp-block-heading{
    font-size:30px!important;
    line-height:1.08!important;
  }
  .single-article .article-content > h3,
  .single-article .article-content > h3.wp-block-heading{
    font-size:24px!important;
    line-height:1.12!important;
  }
}

/* AV1 4.008: blog-inserted location sliders are standalone page components, not rich-copy text blocks. */
.single-article > .av1-article-location-slider{
  width:100%;
  max-width:100%;
  margin:0;
  background:transparent;
  border:0;
  border-radius:0;
}
.single-article > .av1-article-location-slider + .article-content-section{
  padding-top:24px;
}
.single-article .av1-article-location-slider .container,
.single-article .av1-article-location-slider .scroller{
  width:80vw;
  max-width:none;
  margin-left:auto;
  margin-right:auto;
}
.single-article .av1-article-location-slider .section-title{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(30px,2.2vw,34px);
  line-height:1.08;
  font-weight:400;
  letter-spacing:-.042em;
  color:var(--navy);
}
.single-article .av1-article-location-slider .section-intro{
  margin:12px 0 0;
  max-width:66ch;
  font-size:15px;
  line-height:1.76;
  color:var(--muted);
}
.single-article .location-inline-slider-shortcode .ui-card,
.single-article .location-inline-slider-shortcode .ui-card *{
  text-align:left;
}
.single-article .location-inline-slider-shortcode .ui-card .card-title{
  margin-top:10px!important;
  font-family:var(--font-display)!important;
  font-size:clamp(23px,2vw,28px)!important;
  line-height:1.08!important;
  font-weight:400!important;
  letter-spacing:-.042em!important;
  color:var(--navy)!important;
}
.single-article .location-inline-slider-shortcode .ui-card .card-copy,
.single-article .location-inline-slider-shortcode .ui-card .card-copy p{
  margin:10px 0 0!important;
  font-size:14px!important;
  line-height:1.68!important;
  color:var(--muted)!important;
}
.single-article .location-inline-slider-shortcode .ui-card .meta-line,
.single-article .location-inline-slider-shortcode .ui-card .card-date{
  font-size:11px!important;
  line-height:1.4!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  font-weight:600!important;
  color:rgba(24,33,45,.55)!important;
}
@media (max-width:760px){
  .single-article > .av1-article-location-slider{
    padding-top:var(--section-y-mobile);
  }
  .single-article > .av1-article-location-slider:first-child{
    padding-top:0;
  }
  .single-article > .av1-article-location-slider + .article-content-section{
    padding-top:18px;
  }
  .single-article .av1-article-location-slider .container,
  .single-article .av1-article-location-slider .scroller{
    width:100%;
    max-width:100%;
    padding-left:var(--shell-x-mobile);
    padding-right:var(--shell-x-mobile);
  }
  .single-article .av1-article-location-slider .section-title{
    font-size:30px!important;
    line-height:1.08!important;
  }
  .single-article .location-inline-slider-shortcode .ui-card .card-title{
    font-size:23px!important;
    line-height:1.08!important;
  }
  .single-article .location-inline-slider-shortcode .ui-card .card-copy,
  .single-article .location-inline-slider-shortcode .ui-card .card-copy p{
    font-size:14px!important;
    line-height:1.68!important;
  }
}

/* AV1.151 reusable location image sliders. */
.av1-location-image-slider-component .av1-location-image-slider-track{
  align-items:stretch;
}
.av1-location-image-slider-component .av1-location-image-slide{
  flex:0 0 clamp(260px,32vw,440px);
  margin:0;
  overflow:hidden;
  border-radius:var(--radius-card,4px);
  background:#f5f5f5;
  box-shadow:none;
}
.av1-location-image-slider-component .av1-location-image-slide a{
  display:block;
  height:100%;
  color:inherit;
  text-decoration:none;
}
.av1-location-image-slider-component .av1-location-image-slide img{
  display:block;
  width:100%;
  aspect-ratio:4/3;
  height:auto;
  object-fit:cover;
  border-radius:inherit;
}
.single-article .av1-location-image-slider-component .av1-location-image-slide,
.single-article .av1-location-image-slider-component .av1-location-image-slide *{
  font-size:initial;
  line-height:normal;
  letter-spacing:normal;
}
@media (max-width:760px){
  .av1-location-image-slider-component .av1-location-image-slide{
    flex-basis:min(82vw,340px);
  }
}


/* AV1.044 sitewide mobile table of content fix */
@media (max-width:760px){
  .article-toc-section.page-section{
    padding-top:0 !important;
    margin-top:0 !important;
  }
  .article-toc-section .container{
    width:100% !important;
    max-width:100% !important;
    padding-left:0 !important;
    padding-right:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }
  .article-toc-section .article-toc{
    width:100% !important;
    max-width:100% !important;
    border-left:0;
    border-right:0;
    border-radius:0;
  }
  .article-toc-section .disclosure-panel[hidden]{
    display:none !important;
  }
}

/* AV1.045 mobile gallery slider: hide image-slider title sitewide to save vertical space */
@media (max-width:760px){
  .av1-location-image-slider-component > .slider-section-head,
  .av1-location-image-slider-component .slider-section-head{
    display:none !important;
  }
  .av1-location-image-slider-component .av1-location-image-slider-scroller{
    margin-top:0 !important;
  }
}

/* AV1 4.047 mobile location detail order: TOC, gallery slider, intro, review, booking form, single image */
@media (max-width:760px){
  .single-location{
    display:flex;
    flex-direction:column;
  }
  .single-location > .page-section{
    order:100;
  }
  .single-location > .article-toc-section{
    order:10;
  }
  .single-location > #location-image-gallery,
  .single-location > .av1-location-image-slider-component{
    order:20;
  }
  .single-location > .location-intro-content-section{
    order:30;
  }
  .single-location > .location-review-section{
    order:40;
  }
  .single-location > .location-reservation-form-section{
    order:50;
  }
  .single-location > .article-featured-image-section{
    order:60;
  }
}


/* AV1 4.058: single blog mobile layout guard after inserting AV1 location components.
   Keeps dynamic location slider/image-slider blocks outside text surfaces and prevents
   edited Gutenberg wrappers from changing the approved mobile article typography. */
.single-article .article-content-section,
.single-article .article-content-section .container,
.single-article .article-content,
.single-article .article-content > *{
  min-width:0;
  box-sizing:border-box;
}
.single-article .article-content .location-inline-slider-shortcode{
  width:100%;
  max-width:100%;
  min-width:0;
}
.single-article .article-content .location-inline-slider-shortcode > .container{
  width:100%;
  max-width:100%;
}
@media (max-width:760px){
  .single-article .article-content-section .container{
    width:100%!important;
    max-width:100%!important;
    padding-left:var(--shell-x-mobile)!important;
    padding-right:var(--shell-x-mobile)!important;
  }
  .single-article .article-content.rich-copy{
    width:100%!important;
    max-width:100%!important;
    display:grid!important;
    gap:18px!important;
  }
  .single-article .article-content > .av1-content-block,
  .single-article .article-content > .wp-block-group.av1-content-block,
  .single-article .article-content > section.av1-content-block{
    width:100%!important;
    max-width:100%!important;
    padding:22px 16px!important;
  }
  .single-article .article-content > .av1-content-block p,
  .single-article .article-content > .wp-block-group.av1-content-block p,
  .single-article .article-content > section.av1-content-block p,
  .single-article .article-content > .av1-content-block li,
  .single-article .article-content > .wp-block-group.av1-content-block li,
  .single-article .article-content > section.av1-content-block li{
    font-size:15px!important;
    line-height:1.76!important;
  }
  .single-article .article-content > .av1-content-block h2,
  .single-article .article-content > .wp-block-group.av1-content-block h2,
  .single-article .article-content > section.av1-content-block h2{
    font-size:30px!important;
    line-height:1.08!important;
  }
  .single-article .article-content > .av1-content-block h3,
  .single-article .article-content > .wp-block-group.av1-content-block h3,
  .single-article .article-content > section.av1-content-block h3{
    font-size:24px!important;
    line-height:1.12!important;
  }
  .single-article .article-content .location-inline-slider-shortcode{
    margin-left:0!important;
    margin-right:0!important;
    overflow:hidden;
  }
  .single-article .article-content .location-inline-slider-shortcode > .container{
    padding-left:0!important;
    padding-right:0!important;
  }
}


/* AV1.073 homepage FAQ spacing lock: keep section rhythm intact. */
.home-faq-section.page-section{padding-top:68px;}
@media (max-width:760px){.home-faq-section.page-section{padding-top:40px;}}

/* AV1.074 homepage FAQ to next component spacing: keep one normal section gap only. */
.home-faq-section + .home-seo-section.editorial-block{
  margin-top:0;
}
