.partnerships-section {
  --partner-ink:#10231b;
  --partner-green:#087f59;
}

.home-main-layout {
  display:grid;
  grid-template-columns:minmax(0,1fr) 230px;
  align-items:start;
  gap:clamp(16px,2vw,28px);
  padding-right:3vw;
}

.home-main-layout > .feature-hero {
  min-width:0;
  padding-right:0;
}

.home-main-layout .feature-intro h1 {
  white-space:normal;
  font-size:clamp(34px,3.25vw,54px);
}

.home-main-layout .feature-card h2 {
  font-size:clamp(24px,2.25vw,34px);
}

.home-partner-ad-rail.partner-ad-rail {
  width:230px;
  padding-top:64px;
  padding-bottom:76px;
  gap:1px;
}

.home-partner-ad-rail .partner-ad-banner {
  width:230px;
  height:430px;
  aspect-ratio:auto;
  border-radius:7px;
  padding:18px 16px;
  box-shadow:0 10px 28px rgba(13,45,33,.14);
}

.home-partner-ad-rail .partner-ad-banner:hover,
.home-partner-ad-rail .partner-ad-banner:focus-visible {
  transform:translateX(-3px);
  box-shadow:0 14px 34px rgba(13,45,33,.2);
}

.home-partner-ad-rail .partner-ad-kicker {
  font-size:11px;
  letter-spacing:.08em;
}

.home-partner-ad-rail .partner-ad-title {
  margin-top:14px;
  font-size:30px;
  line-height:.98;
}

.home-partner-ad-rail .partner-ad-copy {
  margin-top:8px;
  font-size:13px;
  line-height:1.4;
}

.home-partner-ad-rail .fifas-brand-logo {
  width:120px;
  margin-top:12px;
}

.home-partner-ad-rail .fifa-brand-grid {
  gap:6px;
  margin-top:12px;
}

.home-partner-ad-rail .fifa-brand-grid > span {
  min-height:40px;
  padding:6px;
  border-radius:8px;
}

.home-partner-ad-rail .fifa-brand-grid img { height:23px; }

.home-partner-ad-rail .partner-ad-offer {
  margin-top:10px;
  padding:8px 9px;
  border-radius:8px;
  font-size:13px;
  line-height:1.4;
}

.home-partner-ad-rail .partner-ad-cta {
  gap:7px;
  padding-top:9px;
  font-size:12px;
}

.home-partner-ad-rail .skt-brand-logo {
  width:170px;
  margin-top:12px;
  padding:8px 9px;
  border:1px solid rgba(16,35,27,.12);
  border-radius:8px;
}

.home-partner-ad-rail .skt-region-pill {
  margin-top:8px;
  padding:5px 8px;
  font-size:10px;
}

.home-partner-ad-rail .skt-benefit-list {
  gap:5px;
  margin-top:10px;
}

.home-partner-ad-rail .skt-benefit-list > span {
  grid-template-columns:24px 1fr;
  gap:6px;
  padding:6px 8px;
  border-radius:7px;
}

.home-partner-ad-rail .skt-benefit-list b { font-size:10px; }
.home-partner-ad-rail .skt-benefit-list em {
  font-size:10px;
  letter-spacing:-.04em;
  white-space:nowrap;
}

body.section-view .home-main-layout { display:none; }

.partner-ad-rail {
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:clamp(22px,2.2vw,36px);
}

.partner-ad-banner {
  position:relative;
  isolation:isolate;
  width:min(100%,188mm);
  aspect-ratio:188 / 305;
  min-height:0;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(16,35,27,.13);
  border-radius:30px;
  padding:clamp(28px,3vw,54px);
  text-decoration:none;
  color:var(--partner-ink);
  box-shadow:0 28px 80px rgba(13,45,33,.17);
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
}

.partner-ad-banner:hover,
.partner-ad-banner:focus-visible {
  transform:translateY(-7px);
  border-color:var(--partner-green);
  box-shadow:0 36px 95px rgba(13,45,33,.24);
  outline:3px solid rgba(8,127,89,.22);
  outline-offset:4px;
}

.partner-ad-banner::before,
.partner-ad-banner::after {
  content:"";
  position:absolute;
  z-index:-1;
  border-radius:50%;
  pointer-events:none;
}

.partner-ad-kicker {
  font:900 clamp(12px,1vw,16px)/1.4 monospace;
  letter-spacing:.12em;
}

.partner-ad-title {
  display:block;
  margin-top:clamp(28px,4vw,62px);
  font:950 clamp(38px,4.1vw,72px)/.98 Arial,sans-serif;
  letter-spacing:-.065em;
}

.partner-ad-copy {
  display:block;
  margin-top:22px;
  font-size:clamp(16px,1.45vw,24px);
  font-weight:800;
  line-height:1.65;
}

.partner-ad-offer {
  display:block;
  margin-top:clamp(28px,3vw,48px);
  padding:22px 24px;
  border-radius:18px;
  font-size:clamp(17px,1.6vw,26px);
  font-weight:800;
  line-height:1.65;
}

.partner-ad-cta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:auto;
  padding-top:28px;
  border-top:1px solid currentColor;
  font-size:clamp(15px,1.3vw,21px);
  font-weight:950;
}

.partner-ad-cta b { font-size:1.35em; }

.fifa-ad-banner {
  background:linear-gradient(155deg,#fff 0%,#f6f1de 58%,#dcefe3 100%);
}

.fifa-ad-banner::before {
  width:72%;
  aspect-ratio:1;
  top:-17%;
  right:-28%;
  background:rgba(255,213,69,.42);
}

.fifa-ad-banner::after {
  width:88%;
  aspect-ratio:1;
  left:-47%;
  bottom:-30%;
  background:rgba(8,127,89,.11);
}

.fifa-ad-banner .partner-ad-kicker { color:var(--partner-green); }

.fifas-brand-logo {
  display:block;
  width:min(56%,260px);
  height:auto;
  margin-top:clamp(24px,3vw,46px);
  object-fit:contain;
}

.fifa-brand-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:clamp(28px,3vw,48px);
}

.fifa-brand-grid > span {
  min-height:74px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:14px;
  border:1px solid rgba(16,35,27,.12);
  border-radius:16px;
  background:rgba(255,255,255,.78);
}

.fifa-brand-grid img {
  display:block;
  max-width:100%;
  width:auto;
  height:42px;
  object-fit:contain;
}

.partner-ad-offer { background:rgba(255,255,255,.76); }
.fifa-ad-banner .partner-ad-cta { color:var(--partner-green); }

.skt-ad-banner {
  color:var(--partner-ink);
  background:#fff;
}

.skt-ad-banner::before {
  width:105%;
  aspect-ratio:1;
  top:-42%;
  right:-48%;
  background:linear-gradient(135deg,rgba(255,119,71,.2),rgba(231,28,45,.1));
  filter:blur(2px);
}

.skt-ad-banner::after {
  width:95%;
  aspect-ratio:1;
  left:-55%;
  bottom:-36%;
  background:rgba(0,181,226,.1);
}

.skt-ad-banner .partner-ad-kicker { color:#0877bd; }

.skt-brand-logo {
  display:block;
  width:min(76%,340px);
  height:auto;
  margin-top:clamp(28px,3vw,50px);
  padding:17px 20px;
  border-radius:17px;
  background:#fff;
  object-fit:contain;
}

.skt-region-pill {
  align-self:flex-start;
  margin-top:18px;
  padding:9px 15px;
  border:1px solid rgba(8,119,189,.3);
  border-radius:99px;
  color:#0877bd;
  font-size:clamp(13px,1.1vw,18px);
  font-weight:900;
}

.skt-benefit-list {
  display:grid;
  gap:12px;
  margin-top:clamp(28px,3vw,46px);
}

.skt-benefit-list > span {
  display:grid;
  grid-template-columns:48px 1fr;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  border:1px solid rgba(16,35,27,.12);
  border-radius:15px;
  background:#f4f8fb;
  backdrop-filter:blur(5px);
}

.skt-benefit-list b {
  color:#0877bd;
  font:900 14px/1 monospace;
}

.skt-benefit-list em {
  font-size:clamp(15px,1.25vw,20px);
  font-style:normal;
  font-weight:850;
}

@media (max-width:1120px) {
  .home-main-layout { grid-template-columns:minmax(0,1fr) 189px; gap:12px; padding-right:2vw; }
  .home-main-layout > .feature-hero { padding-right:0; }
  .home-partner-ad-rail.partner-ad-rail { width:189px; padding-top:50px; padding-bottom:60px; align-items:flex-start; }
  .home-partner-ad-rail .partner-ad-banner { zoom:.82; }
}

@media (max-width:820px) {
  body { overflow-x:hidden; }
  .desktop-nav { visibility:hidden; }
  .desktop-nav.open { visibility:visible; }
  .home-main-layout { grid-template-columns:minmax(0,1fr) 150px; gap:10px; padding-right:12px; }
  .home-main-layout > .feature-hero { padding-left:20px; padding-right:0; }
  .home-partner-ad-rail.partner-ad-rail { width:150px; padding-top:46px; padding-bottom:50px; }
  .home-partner-ad-rail .partner-ad-banner { zoom:.65; }
}

@media (max-width:560px) {
  .home-main-layout { grid-template-columns:minmax(0,1fr) 129px; gap:8px; padding-right:8px; }
  .home-main-layout > .feature-hero { padding-left:12px; padding-right:0; }
  .home-partner-ad-rail.partner-ad-rail { width:129px; padding-top:46px; padding-bottom:42px; }
  .home-partner-ad-rail .partner-ad-banner { zoom:.56; }
  .partner-ad-banner { border-radius:22px; padding:18px 16px; }
  .partner-ad-kicker { font-size:9px; }
  .partner-ad-title { margin-top:16px; font-size:32px; }
  .partner-ad-copy { margin-top:10px; font-size:13px; line-height:1.45; }
  .fifas-brand-logo { width:42%; margin-top:12px; }
  .fifa-brand-grid { gap:6px; margin-top:14px; }
  .fifa-brand-grid > span { min-height:42px; padding:6px; border-radius:11px; }
  .fifa-brand-grid img { height:25px; }
  .partner-ad-offer { margin-top:12px; padding:10px 12px; border-radius:12px; font-size:13px; line-height:1.45; }
  .partner-ad-cta { padding-top:12px; font-size:12px; }
  .skt-brand-logo { width:68%; margin-top:14px; padding:8px 10px; border-radius:11px; }
  .skt-region-pill { margin-top:8px; padding:5px 9px; font-size:10px; }
  .skt-benefit-list { gap:6px; margin-top:12px; }
  .skt-benefit-list > span { grid-template-columns:28px 1fr; gap:7px; padding:8px 10px; border-radius:10px; }
  .skt-benefit-list b { font-size:10px; }
  .skt-benefit-list em { font-size:11px; }
}

@media print {
  .partner-ad-banner,
  .home-partner-ad-rail .partner-ad-banner { width:188mm; height:305mm; aspect-ratio:auto; break-inside:avoid; }
}

.home-partner-ad-rail .skt-ad-banner .partner-ad-title{
  margin-top:18px;
  font-size:30px;
  line-height:1;
  letter-spacing:-.075em;
}

.home-partner-ad-rail .skt-ad-banner .skt-benefit-list{
  gap:5px;
  margin-top:12px;
}

.home-partner-ad-rail .skt-ad-banner .skt-benefit-list > span{
  grid-template-columns:22px minmax(0,1fr);
  gap:4px;
  padding:4px 6px;
}

.home-partner-ad-rail .skt-ad-banner .skt-benefit-list b,
.home-partner-ad-rail .skt-ad-banner .skt-benefit-list em{
  font-size:14px;
}

.home-partner-ad-rail .skt-ad-banner .skt-benefit-list em{
  letter-spacing:-.07em;
  white-space:nowrap;
}

.home-partner-ad-rail .skt-ad-banner .skt-benefit-list > span:nth-child(2) em{
  width:125%;
  transform:scaleX(.8);
  transform-origin:left center;
}
