/* Advertising-only additions; Version E and all shared files stay unchanged. */
[hidden]{display:none!important}
.advertising-page .hero{border-bottom:1px solid var(--line)}
.advertising-page .intro-placeholder{font-size:20px;line-height:1.65;letter-spacing:normal}
.filters{margin:35px 0 0;padding:0;border:0;min-width:0}
.filters legend,.campaign-description h3{font:700 12px/1.5 'Courier New',monospace;letter-spacing:.04em;margin-bottom:18px}
.filter-buttons{display:flex;flex-wrap:wrap;gap:8px}
.filter-buttons button{font:inherit;font-size:15px;color:inherit;background:transparent;border:1px solid var(--line);padding:7px 15px;cursor:pointer}
.filter-buttons button[aria-pressed="true"]{background:var(--accent);border-color:#101010;color:#101010}
button:focus-visible,.asset:focus-visible{outline:3px solid #101010;outline-offset:4px}
.no-js-note{font-size:14px;margin:22px 0 35px}
/* Shared campaign rhythm: a floor, never a fixed height. Media and copy grow normally. */
.advertising-page .campaigns{--campaign-padding:56px;--campaign-heading-gap:32px;--campaign-min-height:560px;border-top:1px solid var(--line)}
.campaign{padding:var(--campaign-padding) 0;min-height:var(--campaign-min-height);border-bottom:1px solid var(--line);scroll-margin-top:32px}
.campaign-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:var(--campaign-heading-gap)}
.advertising-page .campaign h2{font-family:Arial,Helvetica,sans-serif;font-size:clamp(28px,3vw,42px);font-weight:700;letter-spacing:-.045em;line-height:1.15}
.category-labels{display:flex;flex-wrap:wrap;gap:8px 18px;list-style:none;margin:0;padding:0;font:12px/1.5 'Courier New',monospace}
.campaign-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:7%;align-items:start}
.campaign-media,.campaign-description{min-width:0}
.campaign-description h3{margin:0 0 16px}
.campaign-description p{font-size:18px;line-height:1.65}
.campaign-awards{margin:22px 0 0}
.carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scroll-behavior:smooth;scrollbar-width:thin;scroll-padding:0}
.asset{flex:0 0 100%;min-width:0;max-width:100%;margin:0;scroll-snap-align:start;scroll-snap-stop:always;position:relative}
.asset img,.asset video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#ededeb}
.asset figcaption,.media-note{font:12px/1.5 'Courier New',monospace;margin-top:14px}
.campaign-media>.media-note{margin:0 0 15px}
.slide-controls{display:flex;justify-content:space-between;align-items:center;padding:12px 0 10px;gap:15px}
.slide-controls a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);font-size:24px;text-decoration:none}
.slide-controls a:hover{background:var(--accent);color:#101010}
.slide-controls span{font:12px/1.5 'Courier New',monospace}
.youtube-preview{position:relative;background:#ededeb;aspect-ratio:16/9}
.play-video{position:absolute;inset:0;margin:auto;width:min(290px,85%);height:60px;border:1px solid #101010;color:#101010;background:#fff;font:16px/1.4 Arial,sans-serif;padding:10px;cursor:pointer}
.play-video span{font-size:13px;margin-left:8px}
.play-video:disabled{cursor:default;opacity:1}
.youtube-preview iframe{display:block;width:100%;height:100%;border:0}
.youtube-fallback[aria-disabled="true"]{text-decoration:none;cursor:default}
.advertising-page .work-links a[href]{cursor:pointer}
@media(max-width:850px){.advertising-page .campaigns{--campaign-padding:40px;--campaign-heading-gap:24px;--campaign-min-height:0px}.campaign-layout{grid-template-columns:minmax(0,1fr);gap:28px}.campaign-description{max-width:65ch}.campaign-heading{align-items:start}.campaign-description p{font-size:17px}}
@media(max-width:700px){.advertising-page .intro-placeholder{font-size:18px}.campaign-heading{flex-direction:column;gap:14px}.campaign-heading h2{font-size:30px}.filter-buttons{gap:7px}.filter-buttons button{padding:8px 12px}.play-video{height:55px;font-size:14px}.play-video span{font-size:12px}.media-note{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.carousel{scroll-behavior:auto}}

/* Page title hierarchy and compact campaign awards; descriptions are unchanged. */
.advertising-page .creative-work-heading{font-family:Arial,Helvetica,sans-serif;font-size:clamp(30px,3.5vw,46px);font-weight:700;line-height:1.15;letter-spacing:-.045em;margin:35px 0 0}
.creative-work-heading+.filters{margin-top:20px;margin-bottom:20px}
.campaign-awards .awards-list,.campaign-awards .awards-list ul{list-style:none;padding:0;margin:0;font-size:14px;font-weight:400;line-height:1.4}
.campaign-awards .awards-list>li+li{margin-top:6px}
.campaign-awards .awards-list ul>li{margin-top:2px}

/* Overall recognition is separate from the campaign-specific awards. */
.recognition-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:-1px;padding:18px 0;text-align:center;font-size:14px;font-weight:400;line-height:1.6;overflow-wrap:break-word}
.campaign-awards h3{margin-bottom:10px}

/* Announce filter results and detailed awards without occupying visible space. */
.filter-status,.advertising-page .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* Approved single-video treatment shared by Google and five single-video campaigns. */
:is(#google-year-in-search,#nike-running,#dominos-pizza,#microsoft,#burger-king,#lopez-lomong,#dorchester-collection) .youtube-preview{background:#000;overflow:hidden}
:is(#google-year-in-search,#nike-running,#dominos-pizza,#microsoft,#burger-king,#lopez-lomong,#dorchester-collection) .youtube-preview>img{width:100%;height:100%;object-fit:cover;aspect-ratio:16/9}
:is(#google-year-in-search,#nike-running,#dominos-pizza,#microsoft,#burger-king,#lopez-lomong,#dorchester-collection) .youtube-preview iframe{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:16/9}
/* Fallback stays in the accessibility tree; reveal it for keyboard focus. */
.advertising-page .google-video-fallback:focus-within{position:static;width:auto;height:auto;margin:12px 0 0;overflow:visible;clip-path:none;white-space:normal}

/* This dedicated button does not inherit the generic white .play-video style.
   Its transparent hit area covers the thumbnail; only the 68×48 icon is visible. */
:is(#google-year-in-search,#nike-running,#dominos-pizza,#microsoft,#burger-king,#lopez-lomong,#dorchester-collection,#meta-reels,#meta-facebook-app,#meta-community-voices,#meta-full-time-meals) .google-play-video{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:0;appearance:none;background:transparent;box-shadow:none;font-size:0;cursor:pointer}
:is(#google-year-in-search,#nike-running,#dominos-pizza,#microsoft,#burger-king,#lopez-lomong,#dorchester-collection,#meta-reels,#meta-facebook-app,#meta-community-voices,#meta-full-time-meals) .google-play-video::before{content:'';position:absolute;left:50%;top:50%;width:68px;height:48px;transform:translate(-50%,-50%);border-radius:12px;background:#111111}
:is(#google-year-in-search,#nike-running,#dominos-pizza,#microsoft,#burger-king,#lopez-lomong,#dorchester-collection,#meta-reels,#meta-facebook-app,#meta-community-voices,#meta-full-time-meals) .google-play-video::after{content:'';position:absolute;left:50%;top:50%;width:0;height:0;transform:translate(-40%,-50%);border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:17px solid #fff}
:is(#google-year-in-search,#nike-running,#dominos-pizza,#microsoft,#burger-king,#lopez-lomong,#dorchester-collection,#meta-reels,#meta-facebook-app,#meta-community-voices,#meta-full-time-meals) .google-play-video:focus-visible{outline:3px solid #fff;outline-offset:-6px}
:is(#google-year-in-search,#nike-running,#dominos-pizza,#microsoft,#burger-king,#lopez-lomong,#dorchester-collection,#meta-reels,#meta-facebook-app,#meta-community-voices,#meta-full-time-meals) .google-play-video:focus-visible::before{outline:3px solid #fff;outline-offset:4px}

/* Approved single-video play icon: use the site's existing lime accent. */
:is(#google-year-in-search,#nike-running,#dominos-pizza,#microsoft,#burger-king,#lopez-lomong,#dorchester-collection,#meta-reels,#meta-facebook-app,#meta-community-voices,#meta-full-time-meals) .google-play-video:focus-visible::before{background:var(--accent)}
:is(#google-year-in-search,#nike-running,#dominos-pizza,#microsoft,#burger-king,#lopez-lomong,#dorchester-collection,#meta-reels,#meta-facebook-app,#meta-community-voices,#meta-full-time-meals) .google-play-video:focus-visible::after{border-left-color:#111111}
@media(hover:hover){
 :is(#google-year-in-search,#nike-running,#dominos-pizza,#microsoft,#burger-king,#lopez-lomong,#dorchester-collection,#meta-reels,#meta-facebook-app,#meta-community-voices,#meta-full-time-meals) .google-play-video:hover::before{background:var(--accent)}
 :is(#google-year-in-search,#nike-running,#dominos-pizza,#microsoft,#burger-king,#lopez-lomong,#dorchester-collection,#meta-reels,#meta-facebook-app,#meta-community-voices,#meta-full-time-meals) .google-play-video:hover::after{border-left-color:#111111}
}

/* Burger King only: the image's own letterbox area must also be black. */
#burger-king .campaign-media .youtube-preview,
#burger-king .campaign-media .youtube-preview>img,
#burger-king .campaign-media .youtube-preview iframe{background:#000000}
#burger-king .campaign-media .youtube-preview>img{object-fit:contain;object-position:center}

/* Meta Reels only: natural proportions, with the right video about 78% as tall. */
#meta-reels .reels-pair{display:grid;grid-template-columns:minmax(0,45fr) minmax(0,50fr);gap:24px;align-items:end}
#meta-reels .reels-left,#meta-reels .reels-right{min-width:0}
#meta-reels .reels-player{position:relative;background:#000}
#meta-reels .reels-pair video{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;background:#000}
@media(max-width:700px){#meta-reels .reels-pair{grid-template-columns:minmax(0,1fr);gap:20px}}

/* No permanent animation label; an accessible pause/play button appears on focus. */
#meta-reels .reels-right{position:relative}
#meta-reels .reels-right-video{cursor:pointer}
#meta-reels .reels-motion-toggle{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0;margin:0;padding:0;font:12px/1.5 'Courier New',monospace}
#meta-reels .reels-motion-toggle:focus-visible{width:max-content;max-width:100%;height:auto;min-height:44px;overflow:visible;clip-path:none;white-space:normal;padding:8px 12px;background:#111;color:#fff;outline:3px solid #fff;outline-offset:3px;cursor:pointer}



/* Facebook App only: every slide shares World Turtle Day's 1408:1618 frame.
   At desktop maximum this is 560 x 643.52px. The frame scales proportionally
   on narrow screens; media proportions cannot change its height or the nav row. */
#meta-facebook-app .asset{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 66px;align-content:start}
#meta-facebook-app .facebook-post{position:relative;width:100%;max-width:560px;aspect-ratio:1408 / 1618;margin:0 auto}
#meta-facebook-app .facebook-post :is(img,video){position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;aspect-ratio:auto;object-fit:contain;object-position:center;background:transparent}
#meta-facebook-app .slide-controls{grid-row:2;height:66px;margin:0}

/* Community Voices: the same fixed frame and navigation row as Facebook App. */
#meta-community-voices .asset{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 66px;align-content:start}
#meta-community-voices .community-post{position:relative;width:100%;max-width:560px;aspect-ratio:1408 / 1618;margin:0 auto}
#meta-community-voices .community-post :is(img,video){position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;aspect-ratio:auto;object-fit:contain;object-position:center;background:transparent}
#meta-community-voices .slide-controls{grid-row:2;height:66px;margin:0}

/* Full Time Meals: the approved fixed post frame and stable navigation row. */
#meta-full-time-meals .asset{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 66px;align-content:start}
#meta-full-time-meals .meals-post{position:relative;width:100%;max-width:560px;aspect-ratio:1408 / 1618;margin:0 auto}
#meta-full-time-meals .meals-post video{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;aspect-ratio:auto;object-fit:contain;object-position:center;background:transparent}
#meta-full-time-meals .slide-controls{grid-row:2;height:66px;margin:0}

/* Beats B [READY]: one shared frame for all four full, uncropped assets. */
#beats-by-dre .asset{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 66px;align-content:start}
#beats-by-dre .beats-frame{position:relative;width:100%;max-width:560px;aspect-ratio:1408 / 1618;margin:0 auto}
#beats-by-dre .beats-frame :is(img,video){position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;aspect-ratio:auto;object-fit:contain;object-position:center;background:transparent}
#beats-by-dre .slide-controls{grid-row:2;height:66px;margin:0}

/* Whisky Exchange only: preserve the complete portrait advert. */
#whisky-exchange .whisky-enlarge{display:block;width:100%;max-width:560px;margin:0 auto;cursor:zoom-in}
#whisky-exchange .whisky-enlarge img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;background:transparent}
#whisky-lightbox{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;padding:64px 24px 24px;border:0;background:transparent;overflow:auto;color:#fff}
#whisky-lightbox[open]{display:grid;place-items:center}
#whisky-lightbox::backdrop{background:rgba(0,0,0,.9)}
#whisky-lightbox>img{display:block;width:auto;height:auto;max-width:calc(100vw - 48px);max-height:calc(100vh - 88px);max-height:calc(100dvh - 88px);object-fit:contain}
#whisky-lightbox .whisky-lightbox-close{position:fixed;top:12px;right:16px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:#111;color:#fff;font:32px/1 Arial,sans-serif;cursor:pointer}
#whisky-lightbox .whisky-lightbox-close:hover{background:var(--accent);color:#111}
#whisky-lightbox .whisky-lightbox-close:focus-visible{outline:3px solid #fff;outline-offset:3px}

/* Beats image enlargement reuses the existing native image dialog. */
#beats-by-dre .beats-enlarge{position:absolute;inset:0;display:block;width:100%;height:100%;cursor:zoom-in}
#beats-by-dre .beats-enlarge:focus-visible{outline:3px solid #111;outline-offset:4px}
