/* MAKEACHAMP public navigation and campaign discovery. */
.mac-skip-link { position:fixed;top:12px;left:12px;z-index:10000;padding:12px 18px;border-radius:8px;background:#fff;color:#15243a;transform:translateY(-180%); }
.mac-skip-link:focus { transform:translateY(0); }
#home a:focus-visible,#home button:focus-visible,#home input:focus-visible,#home select:focus-visible { outline:2px solid #d99e3e;outline-offset:4px; }
/* Mouse/touch clicks stay clean; keyboard focus remains visible. */
#home :is(a,button,[role="button"],input[type="button"],input[type="submit"],input[type="reset"]):focus:not(:focus-visible) { outline:none!important; }
#home header.front { min-height:500px; }
#home header.front .main-menu { background:rgba(10,24,35,.78);padding-bottom:10px; }
#home header.front .main-menu a:not(.orange),#home header.front .main-menu select { color:#fff; }
#home header.front #carousel-example-generic,#home header.front #carousel-example-generic .item,#home header.front #carousel-example-generic .fill { height:500px; }
#home header.front #carousel-example-generic .fill::before { content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,20,31,.66),rgba(7,20,31,.35));pointer-events:none; }
#home header.front .carousel .carousel-caption.home-caption { top:118px;left:15%;right:15%;padding:0;text-shadow:0 2px 12px rgba(0,0,0,.3); }
#home header.front .home-caption h1 { max-width:850px;margin:0 auto 16px;font-size:clamp(30px,4vw,50px);font-weight:700;line-height:1.15;letter-spacing:-.025em; }
#home header.front .home-caption .home-intro { max-width:620px;margin:0 auto 22px;color:#fff;font-size:18px;line-height:1.55; }
#home header.front .home-actions { display:flex;justify-content:center;align-items:stretch;flex-wrap:wrap;gap:12px; }
#home header.front .home-actions .btn { display:inline-flex;align-items:center;justify-content:center;float:none;margin:0;min-height:50px;padding:13px 24px;border-radius:8px;font-size:16px;font-weight:600;text-shadow:none;white-space:normal; }
#home header.front .home-actions .orange { background:#ffc261;border:1px solid #ffc261;color:#15243a; }
#home header.front .home-actions .orange:hover { background:#ffd18a;border-color:#ffd18a; }
#home header.front .home-actions .home-browse { background:rgba(8,24,38,.5);border:1px solid rgba(255,255,255,.8);color:#fff; }
#home header.front .home-actions .home-browse:hover { background:rgba(8,24,38,.85); }
#home header.front a:focus-visible { outline-color:#fff; }
#home .main-campaigns .card { border-color:#e3e8ed;border-radius:12px;box-shadow:0 5px 20px rgba(23,42,60,.06); }
#home .main-campaigns .card .card-picture { border-radius:12px 12px 0 0; }
#home .main-campaigns .card .card-name a { color:#15243a; }
@media (max-width:767px) {
 #home header.front { min-height:530px;height:auto;padding-left:0;padding-right:0; }
 #home header.front #carousel-example-generic { position:relative;min-height:460px;height:auto; }
 #home header.front #carousel-example-generic .item,#home header.front #carousel-example-generic .fill { min-height:460px;height:auto; }
 #home header.front .carousel .carousel-caption.home-caption { position:relative;top:auto;left:auto;right:auto;padding:48px 28px 72px; }
 #home header.front .home-caption h1 { font-size:32px; }
 #home header.front .home-caption .home-intro { font-size:16px;line-height:1.5;margin-bottom:20px; }
 #home header.front .home-actions { max-width:340px;margin:0 auto; }
 #home header.front .home-actions .btn { width:100%;min-height:48px;font-size:16px; }
 #home header.front .carousel-control { width:24px; }
 #home header.front .main-menu { padding-bottom:12px;margin-left:0;margin-right:0; }
}
@media (prefers-reduced-motion:reduce) {
 #home .carousel .item,#home .slick-track { transition:none!important; }
 html { scroll-behavior:auto; }
}
/* One transparent top-navigation treatment across public pages. */
#home #global > header > .row:has(a.logo) { background:transparent!important;border:0!important;box-shadow:none!important; }
#home #global > header .main-menu { background:transparent!important;border-bottom:0!important;box-shadow:none!important; }
/* Keep hero navigation controls on one shared baseline. */
#home #global > header > .row:has(a.logo) {display:flex;align-items:center;margin:0 -15px;padding:14px 16px!important;min-height:68px;}
#home #global > header > .row:has(a.logo)::before,#home #global > header > .row:has(a.logo)::after {display:none;}
#home #global > header > .row:has(a.logo) > div {float:none;padding:0;min-width:0;}
#home #global > header > .row:has(a.logo) > div:first-child {flex:1;}
#home #global > header > .row:has(a.logo) > div:last-child {display:flex;align-items:center;justify-content:flex-end;gap:20px;width:auto;}
#home #global > header > .row:has(a.logo) .menu {float:none!important;display:flex;align-items:center;gap:20px;margin:0;padding:0;}
#home #global > header > .row:has(a.logo) .menu > li {float:none;margin:0!important;padding:0;border:0;}
#home #global > header > .row:has(a.logo) .sign-up-menu {order:3;}
#home #global > header > .row:has(a.logo) .menu-lang-top {order:2;}
#home #global > header > .row:has(a.logo) .pull-menu-search {order:1;}
#home #global > header > .row:has(a.logo) .menu a,#home #global > header > .row:has(a.logo) .lang-select-top {display:inline-flex;align-items:center;min-height:40px;line-height:20px;margin:0;}
#home #global > header > .row:has(a.logo) #header-search {display:flex;align-items:center;min-height:40px;padding-top:0;padding-bottom:0;margin:0;}
@media(max-width:767px){
 #home #global > header > .row:has(a.logo) {padding:12px 16px!important;}
 #home #global > header > .row:has(a.logo) .logo img {width:148px;max-width:100%;height:auto;}
 #home #global > header > .row:has(a.logo) > div:last-child,#home #global > header > .row:has(a.logo) .menu {gap:12px;}
}

#home #global > header > .row:has(a.logo) a.logo {display:inline-flex;align-items:center;min-height:40px;vertical-align:middle;top:0;}
/* Full site navigation needs its own flex layout, including account controls. */
@media(min-width:992px){
 #home #global > header > .row.main-menu:has(a.logo) {gap:24px;}
 #home #global > header > .row.main-menu:has(a.logo) > div:first-child {flex:0 0 auto;width:185px;}
 #home #global > header > .row.main-menu:has(a.logo) > #menu {display:flex;align-items:center;justify-content:flex-end;gap:20px;flex:1;width:auto;min-width:0;}
 #home #global > header > .row.main-menu:has(a.logo) > #menu > .pull-left {float:none!important;flex:1;min-width:0;}
 #home #global > header .main-menu #menu > .sign-in-out-menu {order:3;flex:none;}
 #home #global > header .main-menu #menu > .pull-menu-lang {order:2;flex:none;}
 #home #global > header .main-menu #menu > .pull-menu-search {order:1;flex:none;}
 #home #global > header .main-menu #menu-lang-select {height:40px;margin:0;padding:0;line-height:20px;}
}
#home #global > header .main-menu #cover-dropdown {position:relative;inset:auto;display:inline-flex;margin:0;padding:0;width:auto;}
#home #global > header .main-menu #cover-dropdown > button {display:inline-flex;align-items:center;gap:8px;min-height:40px;margin:0;padding:0 8px;position:relative;top:0;background:transparent;border:0;box-shadow:none;color:#fff;}
#home #global > header .main-menu #cover-dropdown .avatar {width:24px;height:24px;flex:none;float:none;margin:0;}
#home #global > header .main-menu #cover-dropdown .cover-name {float:none;margin:0;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:20px;}
#home #global > header .main-menu #cover-dropdown .caret {margin:0;}
#home #global > header .main-menu #cover-dropdown .dropdown-menu {top:calc(100% + 8px);right:0;left:auto;min-width:210px;padding:8px;background:#fff;border:1px solid #e1e7ed;border-radius:8px;box-shadow:0 10px 30px rgba(0,0,0,.16);}
#home #global > header .main-menu #cover-dropdown .dropdown-menu a {color:#172b42!important;padding:8px 12px;border-radius:5px;}
#home #global > header .main-menu #cover-dropdown .dropdown-menu a:hover {background:#edf1f6;}
@media(min-width:992px) and (max-width:1199px){
 #home #global > header > .row.main-menu:has(a.logo) {gap:16px;}
 #home #global > header > .row.main-menu:has(a.logo) > div:first-child {width:165px;}
 #home #global > header > .row.main-menu:has(a.logo) > #menu,#home #global > header > .row.main-menu:has(a.logo) .menu {gap:10px;}
 #home #global > header > .row.main-menu:has(a.logo) .menu a {font-size:13px;}
 #home #global > header .main-menu #cover-dropdown .cover-name {max-width:100px;}
}
#home #global > header .main-menu #menu > .pull-left > .moduletable {float:none!important;}
#home #global > header .main-menu #menu > .pull-menu-search,#home #global > header .main-menu #header-search {min-width:20px;}
#home #global > header .main-menu #header-search > i {position:static;inset:auto;}
#home #global > header .main-menu #cover-dropdown > button {width:auto;max-width:220px;font-size:14px;}
#home #global > header .main-menu #cover-dropdown .caret {position:static;top:auto;}
#home #global > header .main-menu #cover-dropdown .dropdown-menu::before,#home #global > header .main-menu #cover-dropdown .dropdown-menu::after {display:none;}
#home #global > header .main-menu #cover-dropdown .dropdown-menu a {display:flex;width:100%;}
#home #global > header > .row.main-menu:has(a.logo) a.logo {max-width:100%;}
#home #global > header > .row.main-menu:has(a.logo) .logo img {min-width:0!important;max-width:100%;height:auto;}
@media(max-width:767px){#home #global > header.front > .row.main-menu:has(a.logo) {margin-left:0;margin-right:0;}}
/* The collapsed site menu is an overlay, independent of the desktop flex row. */
@media(max-width:991px){
 #home #global > header > .row.main-menu:has(a.logo) > div:first-child {flex:1;min-width:148px;width:auto;}
 #home #global > header > .row.main-menu:has(a.logo) > #mobileMenu {position:relative;flex:0 0 40px;width:40px;min-width:40px;}
 #home #global > header .main-menu #mobileMenu .slicknav_menu {width:40px;padding:0;background:transparent;}
 #home #global > header .main-menu #mobileMenu .slicknav_btn {float:none;display:flex;align-items:center;justify-content:center;margin:0;padding:10px;width:40px;height:40px;}
 #home #global > header .main-menu #mobileMenu .slicknav_nav {position:absolute;top:calc(100% + 12px);right:0;width:min(360px,calc(100vw - 32px));max-width:none;margin:0;padding:12px;background:#172b42;border-radius:8px;box-shadow:0 12px 30px rgba(0,0,0,.2);z-index:1000;}
 #home #global > header .main-menu #mobileMenu .slicknav_nav .pull-left,#home #global > header .main-menu #mobileMenu .slicknav_nav .moduletable {float:none!important;width:100%;}
 #home #global > header .main-menu #mobileMenu .slicknav_nav .menu {display:block;float:none!important;overflow:visible;width:100%;gap:0;}
 #home #global > header .main-menu #mobileMenu .slicknav_nav .menu > li {display:block;width:100%;}
 #home #global > header .main-menu #mobileMenu .slicknav_nav .menu > li > a {display:flex;width:100%;min-height:44px;padding:10px 12px;margin:0;white-space:normal;}
 #home #global > header .main-menu #mobileMenu .slicknav_nav .sign-in-out-menu {display:none!important;}
 #home #global > header .main-menu #mobileMenu .slicknav_nav .pull-menu-lang {margin-top:10px;}
 #home #global > header .main-menu #mobileMenu .slicknav_nav select {width:100%;height:44px;}
 #home #global > header .main-menu #mobileMenu .slicknav_nav #header-search {width:100%!important;padding:8px 12px;gap:10px;}
 #home #global > header .main-menu #mobileMenu .slicknav_nav #header-search input {display:block!important;width:calc(100% - 26px);max-width:100%;}
}
@media(max-width:767px){
 #home #global > header.front > .row.main-menu:has(a.logo) {position:absolute;inset:0 0 auto;z-index:50;}
 #home header.front #carousel-example-generic,#home header.front #carousel-example-generic .item,#home header.front #carousel-example-generic .fill {min-height:530px;}
 #home header.front .carousel .carousel-caption.home-caption {padding-top:112px;}
}
