/* Outer WordPress frame for the reference configurator only. */
body:has(#gen4smshrs-configurator) {
  margin: 0;
  background: #092a43 url('img/reference-20261024/stadium.png') center top / 100vw 100vh fixed no-repeat;
}
body:has(#gen4smshrs-configurator) .g4s-site-main { width: 100%; max-width: none; margin: 0; padding: 0; }
body:has(#gen4smshrs-configurator) .g4s-site-header { position: relative; z-index: 3; width: 100%; margin: 0; background: transparent; border: 0; box-shadow: none; }
body:has(#gen4smshrs-configurator) .g4s-site-header .g4s-mainbar { width: 100%; max-width: none; min-height: 74px; padding: 10px 8%; background: transparent; }
body:has(#gen4smshrs-configurator) .g4s-site-header .g4s-brand img { width: 172px; max-height: 58px; filter: none; }
body:has(#gen4smshrs-configurator) .g4s-site-header .g4s-cart-link { color: white; border: 0; background: rgba(8,44,68,.3); border-radius: 50%; }
body:has(#gen4smshrs-configurator) .g4s-site-header .g4s-cart-count { background: #00e8fe; color: white; }
body.g4s-configurator-workspace-active .g4s-site-header { display: none; }
body:has(#gen4smshrs-configurator) .g4s-site-footer { display:flex; position: relative; width: 100%; max-width: none; padding: 11px 42px; gap: 12px; margin: 0; background: rgba(0,8,13,.9); color: #fff; border: 0; box-shadow:none; clip-path:none; font-size:14px; }
body:has(#gen4smshrs-configurator) .g4s-test-log-disclosure { flex: 0 1 auto; position: absolute; right: 42px; top: 100%; z-index: 4; max-width: 600px; background: rgba(0,8,13,.95); padding:5px 12px; }
body:has(#gen4smshrs-configurator) .g4s-test-log-disclosure[open] { position: static; flex-basis: 100%; }
body:has(#gen4smshrs-configurator) .g4s-test-log-disclosure summary { cursor:pointer; }
#gen4smshrs-configurator .g4s-reference-shell { background-attachment: fixed; background-size: 100vw 100vh; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start { background: transparent; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-topbar { margin: 0 2%; min-height: 60px; border:1px solid rgba(210,238,255,.65); border-radius:17px; background:rgba(25,83,132,.45); }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-tenant-hero { min-height: calc(100svh - 134px); }
@media (min-width: 961px) {
 #gen4smshrs-configurator .g4s-reference-shell.is-unified { min-height: calc(100svh - 44px); }
 #gen4smshrs-configurator .g4s-reference-shell.is-unified .g4s-multistep-form { min-height: calc(100svh - 114px); }
}
@media (max-width: 960px) {
 body:has(#gen4smshrs-configurator) .g4s-site-footer { padding:16px; font-size:12px; }
 body:has(#gen4smshrs-configurator) .g4s-site-header .g4s-mainbar { padding:10px 16px; min-height:64px; }
 body:has(#gen4smshrs-configurator) .g4s-test-log-disclosure { position:static; flex-basis:100%; }
 #gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-topbar { margin:0 12px; }
}

/* The reference back has transparent margin above the collar. */
#gen4smshrs-configurator img[src*="/reference-20261024/entrada-back-green.png"] { clip-path: inset(2% 0 0); }

/* Flat white/cyan UI mark from the existing vector; production artwork stays unchanged. */
body:has(#gen4smshrs-configurator) .g4s-site-header .g4s-brand img,
#gen4smshrs-configurator .is-tenant-start .g4s-sponsor-topbar img { content: url(../../../themes/gen4smshrs/assets/smshrs-logo-white.svg); }
@media (min-width: 961px) {
 body:has(#gen4smshrs-configurator) .g4s-site-footer { min-height:44px; box-sizing:border-box; align-items:center; }
}
/* Self-hosted OFL Roboto Condensed: reference interface typography. */
@font-face { font-family:'G4S Reference Condensed'; font-style:normal; font-weight:400; font-display:swap; src:url('../../../themes/gen4smshrs/assets/fonts/RobotoCondensed-400.ttf') format('truetype'); }
@font-face { font-family:'G4S Reference Condensed'; font-style:normal; font-weight:600; font-display:swap; src:url('../../../themes/gen4smshrs/assets/fonts/RobotoCondensed-600.ttf') format('truetype'); }
@font-face { font-family:'G4S Reference Condensed'; font-style:normal; font-weight:700; font-display:swap; src:url('../../../themes/gen4smshrs/assets/fonts/RobotoCondensed-700.ttf') format('truetype'); }

/* Reference body: regular-width Roboto; condensed face remains for wordmarks. */
@font-face { font-family:'G4S Reference Sans'; font-style:normal; font-weight:400; font-display:swap; src:url('../../../themes/gen4smshrs/assets/fonts/Roboto-400.ttf') format('truetype'); }
@font-face { font-family:'G4S Reference Sans'; font-style:normal; font-weight:600; font-display:swap; src:url('../../../themes/gen4smshrs/assets/fonts/Roboto-600.ttf') format('truetype'); }
@font-face { font-family:'G4S Reference Sans'; font-style:normal; font-weight:700; font-display:swap; src:url('../../../themes/gen4smshrs/assets/fonts/Roboto-700.ttf') format('truetype'); }

/* Match the 1578 × 816 content area inside the supplied Safari screenshot. */
@media (min-width:1280px) and (max-height:860px) {
 #gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-tenant-copy { transform:translateY(calc(1.1svh - 26px)); }
 #gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-tenant-visual { transform:translateY(calc(12px - 5svh)); }
}
#gen4smshrs-configurator .g4s-reference-shell .g4s-sponsor-topbar .g4s-sponsor-topbar-brand .g4s-reference-top-wordmark > strong > span { font-size:1em; line-height:inherit; }
#gen4smshrs-configurator .g4s-reference-shell .g4s-sport-brand-badge { display:none; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-start-actions .g4s-btn.secondary { text-transform:uppercase; }

/* V11: screenshot 07 desktop geometry; all existing fields and validation retained. */
@media (min-width:1280px) and (min-height:860px) {
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) { height:calc(100svh - 64px); min-height:calc(100svh - 64px); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-multistep-form { height:calc(100svh - 134px); min-height:0; grid-template-columns:218px minmax(0,1fr); gap:19px; padding:21px 42px 20px 37px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-stepper { margin-top:46px; height:calc(100% - 58px); padding:16px 0 20px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-step-tab { min-height:56px; height:56px; padding:6px 10px; gap:10px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-step-tab strong { font-size:16px; font-weight:400; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-step-tab.is-active { background:linear-gradient(90deg,rgba(0,43,57,.8),rgba(0,199,230,.7)); box-shadow:inset 0 0 18px #00d8ee,0 0 12px #00d8ee66; border-radius:14px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-stack { grid-template-rows:minmax(0,1fr) 62px; gap:12px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-logo-placement-step { grid-template-columns:minmax(0,34.2%) minmax(0,1fr); grid-template-rows:48px minmax(0,1fr); gap:19px 16px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-reference-no-logo { margin-left:-19px; width:calc(100% + 19px); border-radius:14px; padding-left:52px; position:relative; font-size:16px; font-weight:400; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-reference-no-logo::before { content:"ⓘ"; position:absolute; left:16px; font-size:25px; color:#00e8fe; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-logo-placement-panel { height:100%; min-height:0; flex:1; display:flex; flex-direction:column; gap:10px; padding:20px 16px 64px; border-radius:15px; background:linear-gradient(145deg,rgba(10,69,112,.52),rgba(9,46,62,.58)); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-logo-placement-panel > h2 { font-size:34px; line-height:1.15; letter-spacing:0; margin:0 0 2px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-plus-toggle { min-height:66px; flex-shrink:0; grid-template-columns:42px 1fr; gap:2px 11px; padding:9px 15px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-plus-toggle > span { width:36px; height:36px; font-size:24px; box-shadow:0 0 15px #00e8fe88; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-plus-toggle > strong { font-size:18px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-plus-toggle > small { font-size:13px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-club-name-control { min-height:144px; flex-shrink:0; padding:20px 17px 14px; margin:0 13px 0; box-shadow:0 0 11px #00e8fe55; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-club-name-control h3 { font-size:20px; margin-bottom:10px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-club-name-control .g4s-field label { font-size:14px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-reference-print-info { flex-shrink:0; border-color:#00bfd8; border-radius:13px; background:linear-gradient(130deg,rgba(0,103,139,.5),rgba(10,40,56,.7)); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-reference-print-info summary { min-height:66px; display:grid; grid-template-columns:1fr 24px; grid-template-rows:1fr 1fr; gap:2px 8px; padding:10px 15px 10px 68px; position:relative; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-reference-print-info summary strong { grid-column:1; font-size:18px; font-weight:400; align-self:end; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-reference-print-info summary small { grid-column:1; grid-row:2; font-size:13px; align-self:start; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-reference-print-info summary::before { content:""; position:absolute; width:34px; height:34px; left:16px; top:15px; border:1px solid #d7f9ff; border-radius:50%; background:rgba(103,158,181,.2); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-reference-print-info summary::after { grid-column:2; grid-row:1 / 3; align-self:center; color:#fff; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-confirm-configuration { margin-top:auto; min-height:54px; flex-shrink:0; border-radius:15px; font-size:16px; box-shadow:inset 0 0 14px #00e8feaa,0 0 15px #00e8fe99; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-placement-preview-panel { padding:15px 15px 11px; border-radius:14px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-form-step-head h2 { font-size:34px; line-height:1.2; letter-spacing:0; border:0; margin:0 0 5px 12px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-form-step-head > span { font-size:14px; background:transparent; border:0; box-shadow:none; color:#fff; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-placement-stage { padding:10px 10px 0; border:1px solid #a4d9ef99; border-radius:12px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-placement-stage-head strong { font-size:18px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-placement-stage .g4s-canvas-wrap { background:linear-gradient(0deg,rgba(4,23,32,.06),rgba(4,23,32,.13)),url("img/reference-20261024/stadium.png") center bottom / cover no-repeat; border-radius:13px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-view-tabs { width:334px; display:flex; justify-content:center; border:1px solid #bbdceaaa; border-radius:13px; transform:translateY(-22px); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-view-tabs button { flex:1; font-size:14px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-view-tabs button.is-active { border:1px solid #beffff; border-radius:13px; box-shadow:inset 0 0 16px #00cfeaaa,0 0 14px #00e8feaa; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-reference-step-nav { min-height:62px; height:62px; padding:6px 12px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-reference-step-nav .g4s-reference-back { position:absolute; width:213px; left:18px; bottom:74px; min-height:46px; height:46px; padding:6px 14px; font-size:14px; border-radius:14px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-reference-step-nav .g4s-reference-next { min-height:48px; height:48px; min-width:268px; font-size:16px; border-radius:20px; box-shadow:inset 0 0 12px #00e8feaa,0 0 12px #00e8feaa; grid-column:3; }
}

@media (min-width:1280px) and (min-height:860px) {
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-step-tab { flex:0 0 61px; height:61px; min-height:61px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-step-tab:nth-of-type(-n + 6) > span { font-size:0; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-step-tab:nth-of-type(-n + 6) > span::after { content:"✓"; font-size:24px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-reference-progress > div { position:relative; width:278px; height:16px; justify-content:space-between; align-items:center; gap:0; isolation:isolate; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-reference-progress > div::before { content:""; position:absolute; z-index:-1; height:3px; left:6px; right:6px; background:linear-gradient(to right,#00e8fe 0 72%,#648da4 72%); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-reference-progress i { flex:0 0 15px; width:15px; height:15px; max-width:15px; border-radius:50%; margin:0; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-reference-progress i.is-active { height:17px; width:17px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-sponsor-topbar { grid-template-columns:36.6% 13.35% 31.5% 18.55%; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-sponsor-topbar-brand { padding-left:40px; gap:25px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-sponsor-topbar-brand .g4s-reference-top-wordmark { padding-right:24px; border-right:1px solid #d5edffb3; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-sponsor-topbar-brand .g4s-reference-top-wordmark > strong { transform:scaleY(1.25); transform-origin:center; font-weight:600; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-sponsor-topbar-brand > span:last-child { font-size:20px; letter-spacing:.3em; font-weight:400; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-theme-control-label { display:none; }
}

/* V12: browser-confirmed Step 7 alignment corrections. */
@media (min-width:1280px) and (min-height:860px) {
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-reference-progress { grid-column:2; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-reference-step-nav .g4s-reference-back > span { font-size:14px; white-space:nowrap; line-height:1.2; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-reference-step-nav .g4s-reference-next > span { font-size:16px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-sponsor-topbar-theme { visibility:hidden; pointer-events:none; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] { overflow:visible; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-reference-print-info summary small { position:static; justify-self:start; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-placement-stage .g4s-canvas-wrap { position:relative; grid-template-rows:minmax(0,1fr); padding-top:30px; overflow:visible; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-view-tabs { position:absolute; top:-17px; left:50%; transform:translateX(-50%); z-index:3; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-step-tab.is-active::after { background:transparent; box-shadow:none; }
}
@media (min-width:1280px) and (min-height:860px) {
 body:has(#gen4smshrs-configurator .g4s-config-layer[data-config-step-current="logo-place"]) .g4s-site-main { min-height:calc(100svh - 64px); }
 body:has(#gen4smshrs-configurator .g4s-config-layer[data-config-step-current="logo-place"]) .g4s-site-footer { min-height:64px; }
}

/* V13: source 03 wordmark proportions and regular footer typography. */
@media (min-width:1280px) and (min-height:860px) {
body:has(#gen4smshrs-configurator .g4s-brand-step-panel) .g4s-site-footer {
  font-family: "G4S Reference Sans", Arial, sans-serif;
  font-size:16px;
  font-weight:400;
}
body:has(#gen4smshrs-configurator .g4s-brand-step-panel) .g4s-site-footer nav {
  font-size:14px;
}
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-brand-step-panel) .g4s-sponsor-topbar-brand .g4s-reference-top-wordmark > strong {
  font-weight:400;
  transform:scaleY(1.18);
  transform-origin:center;
}
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-brand-step-panel) .g4s-stepper-wordmark {
  padding-left:19px;
  gap:7px;
}
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-brand-step-panel) .g4s-stepper-wordmark > strong {
  font-weight:400;
  font-size:34px;
  transform:scaleY(1.18);
  transform-origin:left bottom;
}
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-brand-step-panel) .g4s-stepper-wordmark > small {
  font-size:14px;
  font-weight:400;
  letter-spacing:.19em;
}
}

/* V15: wordmark bounds measured against the original PNG. */
@media (min-width:1600px) and (min-height:900px) {
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-brand-step-panel) .g4s-sponsor-topbar-brand .g4s-reference-top-wordmark > strong {
  transform:translate(-3px,3px) scale(.95,1.18);
  transform-origin:left center;
}
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-brand-step-panel) .g4s-stepper-wordmark {
  transform:translateY(8px);
  padding-left:20px;
}
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-brand-step-panel) .g4s-stepper-wordmark > strong {
  transform:translate(-1px,4px) scale(.9,1.10);
}
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-brand-step-panel) .g4s-stepper-wordmark > small {
  letter-spacing:.245em;
}
}

/* V17: source 00 content geometry (1578 × 816, excluding browser chrome). */
@media (min-width:1280px) and (max-height:860px) {
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-tenant-hero { grid-template-columns:minmax(0,590fr) minmax(0,644fr); column-gap:14.58vw; padding-left:3.105vw; padding-right:3.99vw; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-tenant-copy { display:block; height:570px; padding:24px 27px 16px; transform:translateY(-3px); }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-tenant-copy > .g4s-kicker { margin:0; font:400 18px/28px Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-tenant-copy h1 { margin:6px 0 0; font:700 57px/51.4px Arial,sans-serif; letter-spacing:-1.4px; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-tenant-copy > p:not(.g4s-kicker) { max-width:455px; margin:13px 0 0; font:400 17px/23px Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-start-actions { flex-wrap:nowrap; gap:16px; margin:13px 0 0; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-start-actions .g4s-btn { height:54px; min-height:54px; border-radius:18px; font:700 17px/1 Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-start-actions .g4s-btn.success { width:235px; padding-left:42px; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-start-actions .g4s-btn.secondary { width:191px; min-width:191px; justify-content:space-between; padding-left:22px; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-tenant-copy .g4s-sponsor-deal { display:block; width:calc(100% + 20px); height:178px; margin:16px 0 0 -8px; padding:12px 24px; border-radius:15px; background:linear-gradient(120deg,rgba(88,129,153,.36),rgba(84,115,134,.28)); }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-deal > span { display:block; font:700 14px/16px Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-equation { grid-template-columns:minmax(0,220fr) 50px minmax(0,234fr); gap:0; height:76px; margin-top:6px; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-equation b:first-child { padding-left:12px; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-equation b:last-child { padding-left:40px; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-deal .g4s-sponsor-equation strong { font:700 60px/55px 'G4S Reference Condensed',Arial,sans-serif; letter-spacing:-2px; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-deal .g4s-sponsor-equation small { font:700 14px/18px Arial,sans-serif; color:#00e8fe; white-space:nowrap; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-equation em { position:relative; justify-self:center; border:1px solid #00e8fe; background:rgba(0,120,150,.35); box-shadow:0 0 12px #00d8eeb3; color:#00e8fe; font:400 24px/30px Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-equation em::before { content:''; position:absolute; top:-27px; bottom:-27px; left:50%; width:1px; background:#00e8fe; z-index:-1; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-tenant-copy .g4s-sponsor-deal > small { display:block; max-width:465px; padding-left:12px; font:400 13px/16px Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-deal > small:first-of-type { margin-top:4px; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-tenant-visual { height:min(71.45svh,583px); transform:translateY(-14.5px); }
}

@media (min-width:1280px) and (max-height:860px) {
body:has(#gen4smshrs-configurator .is-tenant-start) .g4s-site-header .g4s-mainbar { height:73px; min-height:73px; padding:0 7%; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-topbar { height:60px; min-height:60px; padding:7px 16px; grid-template-columns:24.5% 20.25% 31% 24.25%; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-topbar-brand { position:relative; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-topbar-brand > span { position:absolute; left:0; bottom:0; font:700 9px/10px Arial,sans-serif; letter-spacing:0; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-partner-lockup { transform:translateY(-4px); }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-topbar > div:not(:first-child) > span { font:400 11px/14px Arial,sans-serif; letter-spacing:0; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-topbar > div:not(:first-child) > strong { font:700 14px/18px Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-theme-control-label { font:700 11px/14px Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-theme-options { width:212px; height:38px; border-color:#d5ecff80; padding:0; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-theme-options button { font:400 14px/18px Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-theme-options button.is-active { border:2px solid #00e8fe; background:linear-gradient(140deg,#33849f88,#1a526988); color:white; box-shadow:0 0 9px #00e8feaa,inset 0 0 10px #00e8fe66; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-reference-hero-player { transform:translateY(calc(-7.4svh + 10px)); }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-reference-hero-types { top:66px; right:45px; transform:none; gap:10px; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-reference-hero-types::before { content:''; position:absolute; inset:-4px -17px -57px -16px; border:1px solid #e5f4ff80; border-radius:22px; background:#6089a51a; z-index:-1; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-reference-hero-types button { width:58px; height:54px; border-radius:11px; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-reference-hero-types button svg { width:31px; height:31px; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-tenant-product-tag { padding:10px 18px; min-height:67px; background:#768f9340; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-tenant-product-tag small { font:700 11px/14px Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-tenant-product-tag strong { font:700 20px/26px Arial,sans-serif; }
}

/* V18: measured landing button widths and benefit separator. */
@media (min-width:1280px) and (max-height:860px) {
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-start-actions .g4s-btn.success { min-width:235px; width:235px; flex:0 0 235px; }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-sponsor-equation em { transform:translateY(-10px); }
#gen4smshrs-configurator .g4s-reference-shell.is-tenant-start .g4s-tenant-copy .g4s-sponsor-deal > small:last-child { max-width:340px; }
}

/* V18: visible header, choice frame and navigation proportions from sources 01/02. */
@media(min-width:1600px) and (min-height:900px) {
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel,.g4s-kit-tier-step-panel,.g4s-reference-kit-workspace,.g4s-logo-upload-step)) .g4s-sponsor-topbar { grid-template-columns:570px 218px minmax(0,1fr) 300px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel,.g4s-kit-tier-step-panel,.g4s-reference-kit-workspace,.g4s-logo-upload-step)) .g4s-sponsor-topbar-brand { padding-left:34px; gap:24px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel,.g4s-kit-tier-step-panel,.g4s-reference-kit-workspace,.g4s-logo-upload-step)) .g4s-reference-top-wordmark { flex:0 0 176px; width:176px; padding-right:24px; border-right:1px solid #e5f4ffb3; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel,.g4s-kit-tier-step-panel,.g4s-reference-kit-workspace,.g4s-logo-upload-step)) .g4s-reference-top-wordmark > strong { font:italic 400 42px/42px "G4S Reference Condensed",Arial,sans-serif; width:max-content; max-width:none; overflow:visible; text-overflow:clip; transform:scale(.92,1.1); transform-origin:left center; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel,.g4s-kit-tier-step-panel,.g4s-reference-kit-workspace,.g4s-logo-upload-step)) .g4s-sponsor-topbar-brand > span:not(.g4s-reference-top-wordmark) { font:400 20px/1.1 Arial,sans-serif; letter-spacing:.3em; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel,.g4s-kit-tier-step-panel,.g4s-reference-kit-workspace,.g4s-logo-upload-step)) .g4s-sponsor-topbar > div:not(:first-child) > strong { font:400 20px/1.1 Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel,.g4s-kit-tier-step-panel,.g4s-reference-kit-workspace,.g4s-logo-upload-step)) .g4s-config-step-tab strong { font-family:Arial,sans-serif; font-weight:400; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-config-layer { border:1px solid #d7eeff70; border-radius:20px; background:linear-gradient(145deg,rgba(37,126,184,.2),rgba(29,79,105,.12)); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-reference-step-nav { height:81px; min-height:81px; padding:0 7px 0 1px; grid-template-columns:270px minmax(0,1fr) 283px; gap:0; background:rgba(0,9,14,.8); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-reference-step-nav :is(.g4s-reference-back,.g4s-reference-next) { width:100%; height:78px; min-height:78px; border-radius:40px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-reference-step-nav :is(.g4s-reference-back,.g4s-reference-next) > span { font:400 20px/1.1 Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-reference-step-nav :is(.g4s-reference-back,.g4s-reference-next) > span small { font:400 16px/1.2 Arial,sans-serif; margin-top:4px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-reference-progress strong { font:400 16px/1.1 Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-reference-progress > div { position:relative; width:400px; height:20px; gap:0; justify-content:space-between; align-items:center; isolation:isolate; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-reference-progress > div::before { content:""; position:absolute; height:3px; left:6px; right:6px; background:#7897aa80; z-index:-1; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-reference-progress i { flex:0 0 14px; width:14px; height:14px; max-width:14px; margin:0; border-radius:50%; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-reference-progress i.is-active { height:18px; width:18px; flex-basis:18px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-step-card-action { min-width:206px; min-height:45px; font:400 18px/1.1 Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-step-decision-card > span:last-child strong { font:700 27px/1.1 Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-step-decision-card > span:last-child small { font:400 16px/1.35 Arial,sans-serif; }
}

/* V19: final measured corrections after V18 comparison. */
@media(min-width:1600px) and (min-height:900px) {
#gen4smshrs-configurator .g4s-reference-shell.is-unified .g4s-sport-step-panel .g4s-form-step-head h2 { transform:translate(-26px,-12px); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified .g4s-sport-step-panel .g4s-form-step-head > span { transform:translate(-45px,-10px) scale(1.2,1.15); background:#004b6f99; box-shadow:inset 0 0 14px #00d8ee66; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-sport-step-panel) .g4s-reference-breadcrumb { transform:translate(24px,16px); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified .g4s-sport-step-panel .g4s-step-decision-card > span:last-child:not(.g4s-step-check) { height:172px; min-height:172px; padding-top:15px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified .g4s-sport-step-panel .g4s-step-decision-card > span:last-child small { min-height:43px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified .g4s-audience-step-panel .g4s-step-decision-grid { margin-top:12px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified .g4s-audience-step-panel .g4s-step-decision-card { height:482px; min-height:482px; max-height:482px; grid-template-rows:328px 154px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified .g4s-audience-step-panel .g4s-form-step-head h2 { transform:translateX(10px) scaleX(1.04); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified .g4s-audience-step-panel .g4s-form-step-head > span { transform:translateX(10px) scale(1.16,1.15); background:#004b6f99; box-shadow:inset 0 0 14px #00d8ee66; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-reference-back { position:relative; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-reference-back > b { position:absolute; left:33px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(:is(.g4s-sport-step-panel,.g4s-audience-step-panel)) .g4s-reference-back > span { position:absolute; left:98px; right:30px; text-align:center; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified .g4s-kit-tier-step-panel .g4s-form-step-head .g4s-kicker { visibility:hidden; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-reference-upload-title { transform:translate(1.6px,3px) scaleX(.945); transform-origin:left center; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-sponsor-topbar { grid-template-columns:615px 216px minmax(0,1fr) 300px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-sponsor-topbar-brand { padding-left:44px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-reference-top-wordmark { flex-basis:188px; width:188px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-reference-top-wordmark > strong { font-size:44px; transform:scale(.95,1.1); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-sponsor-topbar-theme { display:none; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer { isolation:isolate; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer::before { content:""; position:absolute; inset:21px 9px 0 0; border:1px solid #d7eeff80; border-radius:20px; background:linear-gradient(145deg,#21689c22,#11416033); z-index:-1; pointer-events:none; }
}

/* V20: source 06 upload cards and navigation at the supplied desktop size. */
@media(min-width:1600px) and (min-height:900px) {
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-reference-breadcrumb { padding-left:29px; transform:translateY(7px); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-logo-upload-step { row-gap:20px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-logo-upload-panel { width:calc(100% - 23px); margin-left:23px; height:579px; padding:14px 15px; overflow:auto; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-upload-primary-block { position:relative; display:block; border:0; padding:0; height:333px; background:transparent; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-upload-primary-block .g4s-field { display:grid; grid-template-rows:22px 76px 156px; gap:8px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-upload-primary-block .g4s-field > label:first-child { font:500 18px/22px Arial,sans-serif; padding-left:4px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-reference-upload-heading { height:73px; min-height:73px; margin:0 0 3px; padding-left:86px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-reference-upload-heading strong { font-size:24px; line-height:28px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-upload-drop.is-primary-upload { width:calc(100% - 30px); min-height:156px; height:156px; margin:0 15px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-upload-primary-block > .g4s-asset-note { position:relative; margin:10px 15px 0; padding-left:40px; font:400 14px/21px Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-upload-primary-block > .g4s-asset-note::before { content:'i'; position:absolute; left:0; top:3px; width:25px; height:25px; border:1px solid #d6edff; border-radius:50%; text-align:center; font:400 20px/25px Arial,sans-serif; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-skip-logo { position:absolute; top:-2px; right:0; min-height:25px; height:25px; padding:4px 8px; font-size:10px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-reference-sleeve-sponsor { margin-top:12px; min-height:66px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-reference-sleeve-sponsor > summary { position:relative; display:grid; padding:8px 38px 8px 74px; min-height:64px; list-style:none; font-size:24px; line-height:28px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-reference-sleeve-sponsor > summary::-webkit-details-marker { display:none; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-reference-sleeve-sponsor > summary::before { content:''; position:absolute; left:9px; top:14px; width:34px; height:34px; border:2px solid #cbe0ee; border-radius:50%; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-reference-sleeve-sponsor > summary::after { content:''; position:absolute; right:21px; top:25px; width:12px; height:12px; border-right:3px solid #e5f4ff; border-bottom:3px solid #e5f4ff; transform:rotate(45deg); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-reference-sleeve-sponsor[open] > summary::after { transform:rotate(225deg); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-reference-sleeve-sponsor > summary small { margin:0; font-size:16px; line-height:20px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-reference-logo-notes { margin-top:11px; min-height:124px; padding:9px 14px; gap:6px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-reference-logo-notes textarea { height:71px; min-height:71px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-logo-upload-preview { position:relative; width:calc(100% - 23px); height:579px; grid-template-rows:minmax(0,1fr); backdrop-filter:none; background:#13395022; overflow:visible; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-reference-preview-title { position:absolute; right:10px; bottom:calc(100% + 16px); margin:0; font-size:18px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-logo-upload-preview .g4s-canvas-wrap { background:url('img/reference-20261024/stadium.png') center center / cover no-repeat; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-config-stack > .g4s-reference-step-nav { width:calc(100% - 9px); height:82px; min-height:82px; max-height:82px; padding:9px 10px; grid-template-columns:368px minmax(0,1fr) 363px; gap:0; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-reference-step-nav > .g4s-btn { width:100%; min-height:64px; height:64px; font-size:18px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-reference-progress strong { font-size:14px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-reference-progress > div { width:240px; height:18px; gap:0; justify-content:space-between; align-items:center; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-reference-progress i { width:12px; height:12px; flex:0 0 12px; border-radius:50%; }
}

/* V21: source 06 navigation baseline and stadium preview crop. */
@media(min-width:1600px) and (min-height:900px) {
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-config-stack { height:818px; max-height:818px; grid-template-rows:723px 82px; gap:13px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-logo-upload-preview .g4s-canvas-wrap { background-size:auto 170%; background-position:center 85%; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-reference-step-nav > .g4s-btn > span { font:700 18px/1.1 'G4S Reference Condensed',Arial,sans-serif; white-space:nowrap; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-reference-progress { transform:translateX(-48px); }
}

/* Source 07 uses the existing, original company footer; other views retain their reference copy. */
body:has(#gen4smshrs-configurator) .g4s-site-footer .g4s-reference-company-footer { display:none; }
body:has(#gen4smshrs-configurator .g4s-config-layer[data-config-step-current="logo-place"]) .g4s-site-footer :is(.g4s-reference-footer-copy,.g4s-reference-general-footer) { display:none; }
body:has(#gen4smshrs-configurator .g4s-config-layer[data-config-step-current="logo-place"]) .g4s-site-footer .g4s-reference-company-footer { display:flex; flex-wrap:wrap; gap:14px; font:400 12px/1.3 Arial,sans-serif; }
@media(min-width:1600px) and (min-height:900px) {
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-config-stepper { padding-top:20px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-config-step-tab { flex-basis:71.6px; height:71.6px; min-height:71.6px; max-height:71.6px; column-gap:18px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-config-step-tab strong { transform:translateX(6px); font:400 20px/1.1 'G4S Reference Condensed',Arial,sans-serif; white-space:nowrap; overflow:visible; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-config-step-tab[data-config-step="kit"] strong { font-size:18px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-config-step-tab.is-active::after { inset:4px -12px 4px -6px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-config-step-tab.is-active > span { width:54px; height:54px; font-size:24px; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-stepper-wordmark { transform:translate(9px,-9px); }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-upload"]) .g4s-stepper-wordmark strong { font-size:40px; }
body:has(#gen4smshrs-configurator .g4s-config-layer[data-config-step-current="logo-place"]) .g4s-site-footer { padding-left:294px; padding-right:292px; }
}

/* V22: source 06's product silhouette fits within the same stadium frame. */
@media(min-width:1600px) and (min-height:900px) {
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-logo-upload-preview .g4s-shirt-editor.has-reference-photo { width:470px; height:470px; max-height:470px; flex:0 0 auto; transform:translateY(14px); }
}

/* V23: dedicated background from the supplied inner-preview arena reference. */
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-logo-upload-step) .g4s-config-layer[data-config-step-current="logo-upload"] .g4s-logo-upload-preview .g4s-canvas-wrap { background-image:url('img/reference-20261024/inner-stadium.png'); background-size:cover; background-position:center; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="logo-place"]) .g4s-config-layer[data-config-step-current="logo-place"] .g4s-placement-stage .g4s-canvas-wrap { background-image:url('img/reference-20261024/inner-stadium.png'); background-size:100% 100%; background-position:center; }
#gen4smshrs-configurator .g4s-reference-shell.is-unified:has(.g4s-config-layer[data-config-step-current="team"]) .g4s-config-layer[data-config-step-current="team"] .g4s-reference-player-preview { background-image:url('img/reference-20261024/inner-stadium.png'); background-size:cover; background-position:center; }
/* Source09 retains its original open-sky stadium background. */
