/* Promote Your Business (/apply/) — mockup redesign. Scoped to .swfl-ap. */
.swfl-ap{ --ap-navy:#0C2340; --ap-navy2:#14263F; --ap-teal:#2E7F92; --ap-orange:#F58220; --ap-ink:#31415A; --ap-mute:#5A6B82; --ap-line:#E2E9F0; --ap-mist:#F1F7F9; font-family:'DM Sans','Segoe UI',sans-serif; color:var(--ap-ink); background:#fff; }
.swfl-ap *{ box-sizing:border-box; }
.swfl-ap .swfl-ap-shell{ width:min(1200px, 100% - 96px); margin:0 auto; } /* header column: 48px gutters, 20px on phones */
.swfl-ap h2.swfl-ap-h2{ font-family:'Space Grotesk','Segoe UI',sans-serif; font-weight:700; font-size:clamp(26px,3vw,34px); line-height:1.1; letter-spacing:-0.02em; color:var(--ap-navy); margin:0; }

/* HERO */
.swfl-ap-top{ position:relative; background-color:var(--ap-navy); background-image:linear-gradient(90deg,rgba(12,35,64,.86) 0%,rgba(12,35,64,.70) 46%,rgba(12,35,64,.34) 100%), var(--ap-hero); background-size:cover; background-position:center; overflow:hidden; }
.swfl-ap-top__inner{ position:relative; z-index:2; width:min(1424px,100% - 96px); margin:0 auto; padding:clamp(48px,6vw,88px) 0; display:grid; grid-template-columns:1.35fr .9fr; gap:40px; align-items:center; }
.swfl-ap-eyebrow{ display:flex; align-items:center; gap:12px; margin:0 0 14px; font-family:'Space Grotesk',sans-serif; font-size:12.5px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:#FFB547; }
.swfl-ap-eyebrow span{ width:34px; height:2px; background:var(--ap-orange); flex:0 0 auto; }
.swfl-ap-top__copy h1{ margin:0; font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(38px,4.6vw,60px); line-height:1.03; letter-spacing:-0.03em; color:#fff; max-width:15ch; }
.swfl-ap-lead{ margin:20px 0 0; font-size:clamp(15px,1.4vw,17px); line-height:1.6; color:rgba(255,255,255,.82); max-width:60ch; }
.swfl-ap-lead b{ color:#fff; font-weight:600; }
.swfl-ap-top__cta{ display:inline-flex; align-items:center; gap:9px; margin-top:26px; font-family:'Space Grotesk',sans-serif; font-size:16px; font-weight:700; color:#fff; background:var(--ap-orange); border-radius:12px; padding:15px 30px; text-decoration:none; transition:background .15s; }
.swfl-ap-top__cta:hover{ background:#e0741a; }
.swfl-ap-top__card{ background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.28); border-radius:18px; padding:22px 24px; backdrop-filter:blur(7px); -webkit-backdrop-filter:blur(7px); display:flex; flex-direction:column; gap:16px; }
.swfl-ap-top__row{ display:flex; align-items:center; gap:15px; }
.swfl-ap-top__ico{ flex:0 0 auto; width:46px; height:46px; border-radius:12px; background:#fff; color:var(--ap-navy); display:inline-flex; align-items:center; justify-content:center; }
.swfl-ap-top__row div{ display:flex; flex-direction:column; }
.swfl-ap-top__row b{ font-family:'Space Grotesk',sans-serif; font-size:16px; color:#fff; line-height:1.2; }
.swfl-ap-top__row div span{ font-size:13px; color:rgba(255,255,255,.75); line-height:1.3; }
/* Hero video (sponsor overview, application.js): replaces the three-point panel; the benefit strip below carries those points. */
.swfl-ap-top__inner--vid{ grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; }
.swfl-ap-top__vid{ display:flex; flex-direction:column; gap:12px; min-width:0; }
.swfl-ap-top__vstage{ position:relative; border-radius:16px; overflow:hidden; background:#0C2340; border:1px solid rgba(255,255,255,.28); box-shadow:0 22px 48px rgba(4,14,30,.45); }
.swfl-ap-top__video{ display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; background:#0C2340; }
/* brand.css pills every button via button:not([class*=chip]):not([class*=pill]) (0,2,1, !important), so this needs (0,3,1). */
.swfl-ap .swfl-ap-top__vstage > button.swfl-ap-top__vplay{ position:absolute; inset:0; margin:0; padding:0; border:0; border-radius:16px !important; background:transparent !important; box-shadow:none !important; cursor:pointer; }
.swfl-ap .swfl-ap-top__vstage > button.swfl-ap-top__vplay:focus-visible{ outline:3px solid #FFB547; outline-offset:-3px; }
.swfl-ap-top__vcap{ margin:0; font-size:14px; line-height:1.5; color:rgba(255,255,255,.8); }
.swfl-ap-top__vcap b{ display:block; color:#fff; font-weight:600; font-size:15px; }

/* BENEFIT STRIP */
.swfl-ap-benefits{ background:var(--ap-mist); border-bottom:1px solid var(--ap-line); }
.swfl-ap-benefits__grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:0; padding:34px 0; }
.swfl-ap-benefits article{ padding:0 22px; text-align:center; border-right:1px solid var(--ap-line); }
.swfl-ap-benefits article:last-child{ border-right:0; }
.swfl-ap-benefits__ico{ color:var(--ap-teal); display:inline-flex; }
.swfl-ap-benefits b{ display:block; margin:10px 0 4px; font-family:'Space Grotesk',sans-serif; font-size:15px; color:var(--ap-navy); }
.swfl-ap-benefits p{ margin:0; font-size:13.5px; line-height:1.45; color:var(--ap-mute); }

/* MAIN two-column */
.swfl-ap-main{ padding:clamp(48px,5vw,72px) 0 clamp(72px,8vw,120px); }
.swfl-ap-main__grid{ display:grid; grid-template-columns:1fr 420px; gap:44px; align-items:start; }
.swfl-ap-col__lead{ margin:12px 0 24px; font-size:16px; line-height:1.6; color:var(--ap-mute); max-width:52ch; }
.swfl-ap-steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.swfl-ap-step__ico{ width:52px; height:52px; border-radius:50%; background:var(--ap-mist); color:var(--ap-navy); display:inline-flex; align-items:center; justify-content:center; }
.swfl-ap-step b{ display:block; margin:12px 0 5px; font-family:'Space Grotesk',sans-serif; font-size:15px; color:var(--ap-navy); line-height:1.2; }
.swfl-ap-step p{ margin:0; font-size:13.5px; line-height:1.45; color:var(--ap-mute); }
.swfl-ap-callout{ display:flex; align-items:center; gap:14px; margin:28px 0 0; padding:18px 22px; background:var(--ap-mist); border-radius:14px; }
.swfl-ap-callout__ico{ flex:0 0 auto; width:38px; height:38px; border-radius:50%; background:var(--ap-teal); color:#fff; display:inline-flex; align-items:center; justify-content:center; }
.swfl-ap-callout p{ margin:0; font-size:14.5px; line-height:1.5; color:var(--ap-ink); }
.swfl-ap-callout b{ color:var(--ap-navy); }
.swfl-ap-why{ margin-top:34px; padding:26px 26px 30px; background:#FBF3E7; border-radius:16px; }
.swfl-ap-why h3{ margin:0 0 18px; font-family:'Space Grotesk',sans-serif; font-size:20px; color:var(--ap-navy); }
.swfl-ap-why__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.swfl-ap-why__ico{ color:var(--ap-navy); display:inline-flex; }
.swfl-ap-why__item b{ display:block; margin:8px 0 5px; font-family:'Space Grotesk',sans-serif; font-size:14.5px; color:var(--ap-navy); line-height:1.25; }
.swfl-ap-why__item p{ margin:0; font-size:13px; line-height:1.45; color:var(--ap-mute); }
.swfl-ap-quote{ position:relative; margin:64px 0 0; border-radius:16px; overflow:hidden; }
.swfl-ap-quote img{ width:100%; height:340px; object-fit:cover; display:block; }
.swfl-ap-quote figcaption{ position:absolute; left:0; right:0; bottom:0; padding:28px 30px; background:linear-gradient(0deg,rgba(12,35,64,.82) 0%,rgba(12,35,64,0) 100%); color:#fff; font-family:'Space Grotesk',sans-serif; font-weight:600; font-size:clamp(18px,2vw,24px); line-height:1.3; }
.swfl-ap-quote figcaption::before{ content:""; display:block; width:44px; height:3px; background:var(--ap-orange); margin-bottom:12px; }

/* FORM CARD */
.swfl-ap-col--side{ position:sticky; top:88px; }
.swfl-ap-form{ background:var(--ap-mist); border:1px solid var(--ap-line); border-radius:18px; padding:26px 26px 28px; }
.swfl-ap-form__intro{ margin:8px 0 18px; font-size:14px; line-height:1.55; color:var(--ap-mute); }
.swfl-ap-form__note{ display:flex; align-items:center; justify-content:center; gap:7px; margin:16px 0 0; font-size:12.5px; color:var(--ap-mute); }
.swfl-ap-lock{ display:inline-flex; }
/* selectors widget */
.swfl-ap-form .s2-application-selectors{ display:flex; flex-direction:column; gap:14px; margin-bottom:18px; }
.swfl-ap-form .s2-application-category span{ display:block; margin-bottom:6px; font-family:'Space Grotesk',sans-serif; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--ap-navy); }
.swfl-ap-form .s2-application-category span b{ color:var(--ap-orange); }
.swfl-ap-form select, .swfl-ap-form input[type=search]{ width:100%; min-height:48px; border:1px solid #CBD8E2; border-radius:10px; padding:0 13px; font:400 15px/1.3 'DM Sans',sans-serif; color:var(--ap-navy); background:#fff; }
.swfl-ap-form .s2-application-inventory-tools{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.swfl-ap-form .s2-application-inventory{ border:1px solid var(--ap-line); border-radius:10px; background:#fff; padding:14px; max-height:240px; overflow:auto; }
.swfl-ap-form .s2-application-empty b{ display:block; font-family:'Space Grotesk',sans-serif; color:var(--ap-navy); font-size:14px; }
.swfl-ap-form .s2-application-empty p{ margin:4px 0 0; font-size:13px; color:var(--ap-mute); }
.swfl-ap-form .s2-application-selection{ display:flex; align-items:center; gap:10px; font-size:13px; color:var(--ap-mute); }
.swfl-ap-form .s2-application-selection strong{ font-size:18px; color:var(--ap-navy); }
/* Gravity Form skinning inside the card */
.swfl-ap-form .gform_wrapper{ margin:0; }
.swfl-ap-form .gform_wrapper .gform_fields{ display:grid !important; grid-template-columns:1fr; gap:15px !important; }
.swfl-ap-form .gform_wrapper .gfield{ margin:0 !important; }
.swfl-ap-form .gform_wrapper .gfield.s2-application-field--full, .swfl-ap-form .gform_wrapper .gfield.s2-application-source-field, .swfl-ap-form .gform_wrapper .gfield.s2-application-consent, .swfl-ap-form .gform_wrapper .gfield.gfield--width-full{ grid-column:1 / -1; }
.swfl-ap-form .gform_wrapper .gfield_label{ font-family:'Space Grotesk',sans-serif; font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--ap-navy); margin-bottom:6px; }
.swfl-ap-form .gform_wrapper input[type=text], .swfl-ap-form .gform_wrapper input[type=email], .swfl-ap-form .gform_wrapper input[type=tel], .swfl-ap-form .gform_wrapper input[type=url], .swfl-ap-form .gform_wrapper textarea, .swfl-ap-form .gform_wrapper select{ width:100%; min-height:48px; border:1px solid #CBD8E2 !important; border-radius:10px !important; padding:10px 13px !important; font:400 15px/1.3 'DM Sans',sans-serif !important; color:var(--ap-navy) !important; background:#fff !important; box-shadow:none !important; }
.swfl-ap-form .gform_wrapper textarea{ min-height:96px; resize:vertical; }
.swfl-ap-form .gform_wrapper .gform_footer{ margin:16px 0 0 !important; padding:0 !important; }
.swfl-ap-form .gform_wrapper .gform_footer input[type=submit], .swfl-ap-form .gform_wrapper .gform_button{ width:100%; border:0; cursor:pointer; font-family:'Space Grotesk',sans-serif; font-size:16px; font-weight:700; color:#fff; background:var(--ap-orange); border-radius:12px; padding:16px 24px; transition:background .15s; }
.swfl-ap-form .gform_wrapper .gform_footer input[type=submit]:hover{ background:#e0741a; }
.swfl-ap-form .gform_wrapper .gfield_required{ color:var(--ap-orange); }
.swfl-ap-form .gform_wrapper .gform_validation_errors{ border-radius:10px; }

/* FAQ */
.swfl-ap-faq{ margin-top:26px; margin-bottom:8px; }
.swfl-ap-faq .swfl-ap-h2{ font-size:22px; margin-bottom:14px; }
.swfl-ap-faq__item{ border:1px solid var(--ap-line); border-radius:12px; background:#fff; margin-bottom:10px; }
.swfl-ap-faq__item summary{ list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:15px 16px; font-family:'Space Grotesk',sans-serif; font-size:14.5px; font-weight:600; color:var(--ap-navy); }
.swfl-ap-faq__item summary::-webkit-details-marker{ display:none; }
.swfl-ap-faq__chev{ color:var(--ap-teal); display:inline-flex; transition:transform .2s; flex:0 0 auto; }
.swfl-ap-faq__item[open] .swfl-ap-faq__chev{ transform:rotate(180deg); }
.swfl-ap-faq__item p{ margin:0; padding:0 16px 16px; font-size:13.5px; line-height:1.55; color:var(--ap-mute); }

/* CTA band */
.swfl-ap-cta{ background:var(--ap-navy); }
.swfl-ap-cta__inner{ display:flex; align-items:center; justify-content:space-between; gap:30px; flex-wrap:wrap; padding:clamp(36px,4vw,54px) 0; }
.swfl-ap-cta h2{ margin:0; font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(24px,2.6vw,32px); color:#fff; }
.swfl-ap-cta p{ margin:8px 0 0; font-size:15px; color:rgba(255,255,255,.8); max-width:62ch; }
.swfl-ap-cta a{ flex:0 0 auto; display:inline-flex; align-items:center; gap:9px; font-family:'Space Grotesk',sans-serif; font-size:16px; font-weight:700; color:#fff; background:var(--ap-orange); border-radius:12px; padding:16px 32px; text-decoration:none; transition:background .15s; }
.swfl-ap-cta a:hover{ background:#e0741a; }

/* responsive */
@media (max-width:1024px){
  .swfl-ap-top__inner{ grid-template-columns:1fr; }
  .swfl-ap-top__card{ max-width:520px; }
  .swfl-ap-top__inner--vid{ gap:28px; }
  .swfl-ap-top__vid{ max-width:640px; }
  .swfl-ap-main__grid{ grid-template-columns:1fr; }
  .swfl-ap-col--side{ position:static; }
  .swfl-ap-benefits__grid{ grid-template-columns:repeat(3,1fr); gap:24px 0; }
  .swfl-ap-benefits article:nth-child(3){ border-right:0; }
}
@media (max-width:760px){
  .swfl-ap-why__grid{ grid-template-columns:1fr; gap:16px; }
  .swfl-ap-form .gform_wrapper .gform_fields{ grid-template-columns:1fr !important; }
  .swfl-ap-cta__inner{ flex-direction:column; align-items:flex-start; }
}
@media (max-width:560px){
  .swfl-ap-benefits__grid{ grid-template-columns:1fr 1fr; }
  .swfl-ap-benefits article{ border-right:0; }
  .swfl-ap-steps{ grid-template-columns:1fr; }
}

/* form placeholders */
.swfl-ap-form .gform_wrapper input::placeholder, .swfl-ap-form .gform_wrapper textarea::placeholder{ color:#93A2B4; }
.swfl-ap-form .gform_wrapper select:invalid, .swfl-ap-form .gform_wrapper select option[value='']{ color:#93A2B4; }
@media (max-width:860px){ .swfl-ap-top{ background-image:linear-gradient(180deg,rgba(12,35,64,.90) 0%,rgba(12,35,64,.78) 60%,rgba(12,35,64,.60) 100%), var(--ap-hero); } }
@media (max-width:860px){ .swfl-ap .swfl-ap-shell,.swfl-ap-top__inner{ width:calc(100% - 40px); } }
