[data-site-hidden]{display:none!important}
.site-is-editing [data-site-hidden]{display:revert!important;opacity:.35!important;outline:2px dashed #ce5252}
.site-is-editing .hero-slide[data-site-hidden]{display:none!important}
[data-site-selected]{outline:3px solid #f4964b!important;outline-offset:5px}
.site-has-toolbar{scroll-padding-top:100px}
.site-has-toolbar body{padding-top:64px}
.site-is-editing main,.site-is-editing .site-header,.site-is-editing .site-footer{cursor:crosshair}
/* The settings drawer overlays the canvas; it never reserves page width. */
.site-added-block{padding:clamp(24px,5vw,72px);margin:24px auto;border-radius:20px;background:#edf5f8;color:#123747;max-width:1440px;overflow:hidden}
.site-added-block img,.site-added-block video{display:block;width:100%;max-height:520px;object-fit:contain;border-radius:12px}
.site-added-block h2{font-size:clamp(24px,4vw,48px);line-height:1.15;margin:20px 0}
.site-added-block p{white-space:pre-wrap;line-height:1.8}
.site-added-banner{background:#102e41;color:white;display:flex;align-items:center;gap:40px}
.site-added-banner>img,.site-added-banner>video{max-width:50%}
.site-added-block.hero-slide{margin:0;max-width:none;min-height:650px}
.site-added-card{padding:24px;width:100%;margin:0}
@media(max-width:700px){.site-added-banner{display:block}.site-added-banner>img,.site-added-banner>video{max-width:100%}.site-has-toolbar body{padding-top:112px}}
/* Uploaded carousel media uses the entire stage, with a separate caption rail. */
.hero-slider .hero-slide-track>.hero-slide.site-added-banner{display:block;position:relative;padding:0;gap:0;border-radius:0;background:#091d2c;min-height:650px}
.hero-slider .hero-slide-track>.site-added-banner>img,.hero-slider .hero-slide-track>.site-added-banner>video{position:absolute;inset:0 0 112px;width:100%;height:calc(100% - 112px);max-width:none;max-height:none;margin:0;border-radius:0;object-fit:contain;background:#091d2c}
.hero-slider .site-added-banner>.site-added-copy{position:absolute;inset:auto 0 0;height:112px;padding:20px 190px 20px 32px;display:flex;flex-direction:column;justify-content:center;gap:5px;background:#102e41;overflow:auto}
.hero-slider .site-added-banner>.site-added-copy h2{margin:0;font-size:clamp(24px,3vw,36px);line-height:1.15;overflow-wrap:anywhere}
.hero-slider .site-added-banner>.site-added-copy p{margin:0;font-size:14px;line-height:1.4}
.hero-slider .site-added-banner>.site-added-copy p:empty{display:none}
.hero-slider .site-added-banner>.site-added-copy a{align-self:flex-start;min-height:0;padding:6px 12px;font-size:12px}
@media(max-width:700px){.hero-slider .site-added-banner>.site-added-copy{padding:16px 22px 35px;height:132px}.hero-slider .hero-slide-track>.site-added-banner>img,.hero-slider .hero-slide-track>.site-added-banner>video{bottom:132px;height:calc(100% - 132px)}}

/* A single responsive media ratio for all uploaded carousel adverts. */
.hero-slider{container-type:inline-size}
.hero-slider .hero-slide-track{align-items:flex-start}
.hero-slider .hero-slide-track>.hero-slide.site-added-banner{min-height:0;height:calc(100cqw * var(--site-ad-height,980) / var(--site-ad-width,1920) + 112px)}
@media(max-width:700px){.hero-slider .hero-slide-track>.hero-slide.site-added-banner{height:calc(100cqw * var(--site-ad-height,980) / var(--site-ad-width,1920) + 132px)}}

/* Built-in adverts share the configured minimum stage size; retain room for live text. */
.hero-slider[style*="--site-ad-"] .hero-slide-track>.hero-slide:not(.site-added-banner){min-height:calc(100cqw * var(--site-ad-height,980) / var(--site-ad-width,1920) + 112px);height:auto}
@media(max-width:700px){.hero-slider[style*="--site-ad-"] .hero-slide-track>.hero-slide:not(.site-added-banner){min-height:calc(100cqw * var(--site-ad-height,980) / var(--site-ad-width,1920) + 132px)}}

/* Larger built-in campaign content; keep the mobile layout flexible. */
@media(min-width:801px){
.hero-slider .anniversary-slide .anniversary-copy h1,.hero-slider .company-slide .hero-copy :is(h1,.hero-title){font-size:clamp(48px,5.1vw,74px)}
.hero-slider .anniversary-slide .anniversary-copy .hero-text,.hero-slider .company-slide .hero-text{font-size:17px;line-height:1.8}
.hero-slider .company-promise{font-size:19px}
.hero-slider .celebration-art{height:325px}
.hero-slider .celebration-art .celebration-mascot{width:315px;height:315px;max-width:68%}
.hero-slider .company-art{height:355px}
.hero-slider .company-mascot{width:355px;height:355px}
.hero-slider .celebration-options button{font-size:12px;min-height:112px}
.hero-slider .celebration-threshold strong{font-size:48px}
.hero-slider .anniversary-slide .btn,.hero-slider .company-slide .btn{font-size:14px;min-height:52px}
}

/* Optional inquiry video: append-only markup preserves saved content keys. */
.inquiry-video{display:none;margin:28px 0 0;width:100%;overflow:hidden;border:1px solid #c9dce5;border-radius:16px;background:#102e40;box-shadow:0 12px 28px #123e5012;position:relative}
.inquiry-video:has(video[src]:not([src=""])),.site-is-editing .inquiry-video{display:block}
.inquiry-copy:has(.inquiry-video video[src]:not([src=""]))>img,.site-is-editing .inquiry-copy:has(.inquiry-video)>img{display:none}
.inquiry-video video{display:block;width:100%;height:auto;aspect-ratio:var(--site-ad-width,1920) / var(--site-ad-height,1080);object-fit:contain;background:#091e2b}
.inquiry-video figcaption{padding:12px 18px;font-size:14px;font-weight:650;color:#d7edf4}
.inquiry-video [lang="zh"]{display:none}html[lang^="zh"] .inquiry-video [lang="en"]{display:none}html[lang^="zh"] .inquiry-video [lang="zh"]{display:inline}
.inquiry-video-empty{display:none}.site-is-editing .inquiry-video:not(:has(video[src]:not([src=""]))) .inquiry-video-empty{display:block;position:absolute;inset:0 0 42px;display:grid;place-content:center;text-align:center;padding:20px;color:white;font-size:16px;line-height:1.8;background:#082432b8}
@media(max-width:800px){.inquiry-video{margin-top:22px}}

.inquiry-copy:has(.inquiry-video video[src]:not([src=""]))>img,.site-is-editing .inquiry-copy:has(.inquiry-video)>img{display:none!important}
#inquiry{scroll-margin-top:115px}
@media(max-width:800px){#inquiry .inquiry-video{grid-column:1/-1}#inquiry .inquiry-copy:has(.inquiry-video video[src]:not([src=""]))>p,.site-is-editing #inquiry .inquiry-copy:has(.inquiry-video)>p{grid-column:1/-1}}

/* YouTube shares the existing video size controls. */
.inquiry-video:has(video[data-youtube-id]:not([data-youtube-id=""])){display:block}
.inquiry-video:has(video[data-youtube-id]:not([data-youtube-id=""])) video,.site-is-editing .inquiry-video:has(video[data-youtube-id]:not([data-youtube-id=""])) .inquiry-video-empty{display:none}
.inquiry-copy:has(video[data-youtube-id]:not([data-youtube-id=""]))>img{display:none!important}
.inquiry-youtube{display:block;width:100%;height:auto;aspect-ratio:var(--site-ad-width,1920) / var(--site-ad-height,1080);border:0;background:#091e2b}
.inquiry-video:has(.inquiry-youtube){display:flex;flex-direction:column}.inquiry-youtube{order:-1}
@media(max-width:800px){#inquiry .inquiry-copy:has(video[data-youtube-id]:not([data-youtube-id=""]))>p{grid-column:1/-1}}

.site-is-editing [data-site-selected]{touch-action:none;cursor:move!important}
.site-is-editing :is(main,header,footer) :is(img,h1,h2,h3,h4,p){cursor:move!important;user-select:none}

.site-free-photo{position:absolute;top:0;left:0;display:block;width:320px;height:auto;max-width:none;max-height:none;min-width:0;min-height:0;margin:0;padding:0;object-fit:contain;z-index:30}
.site-independent-slot{overflow:visible!important;box-sizing:border-box}.site-independent-slot:has(>[data-site-hidden]){display:none!important}
.site-free-caption{position:absolute;left:0;top:0;display:block;width:360px;max-width:85vw;height:auto;min-width:0;min-height:0;margin:0;padding:0;color:#ffffff;background:transparent;font:400 24px/1.5 Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;z-index:40}

.site-canvas-text{display:inline-block;position:relative;box-sizing:border-box;max-width:none;min-width:0;margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-decoration:inherit;text-align:inherit;white-space:pre-wrap;overflow-wrap:anywhere;vertical-align:baseline}
.site-canvas-text[data-site-selected]{outline:1px solid #8b3dff!important;outline-offset:0!important}
.site-canvas-text[contenteditable]{user-select:text!important;cursor:text!important;touch-action:auto!important;caret-color:currentColor}
