/* Defensive setup: this client's theme ships global, often !important, rules
   for plain buttons/divs/grids/legends (see the IYC Activity Feedback plugin
   for the specifics: a global clearfix that injects pseudo-element boxes
   into grid/flex layouts, and a bare `legend { line-height: 0 }`). Every
   rule below is written as ".iyc-rf .iyc-rf__x" (two classes' worth of
   specificity) and carries !important on layout-critical properties so it
   reliably wins the cascade regardless of theme/plugin CSS load order. */
.iyc-rf, .iyc-rf *, .iyc-rf *::before, .iyc-rf *::after { box-sizing:border-box!important; }
.iyc-rf { max-width:760px!important; width:100%!important; margin:40px auto!important; padding:0!important; color:var(--ink); font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; -webkit-font-smoothing:antialiased; }
.iyc-rf { --ink:#182238; --muted:#5c6a82; --blue:#2f63ff; --blue-dark:#1444d6; --blue-light:#6b93ff; --red:#d33; --wash:#f4f7ff; --line:#e2e8f4; --surface:#ffffff; --shadow-md:0 16px 40px rgba(25,48,93,.12); --shadow-lg:0 26px 70px rgba(20,40,90,.16); }
.iyc-rf * { position:static!important; float:none!important; top:auto!important; right:auto!important; bottom:auto!important; left:auto!important; width:auto!important; transform:none!important; }
.iyc-rf *::before, .iyc-rf *::after { content:none!important; }
.iyc-rf legend { line-height:1.4!important; }
.iyc-rf button { all:unset!important; box-sizing:border-box!important; }

.iyc-rf .iyc-rf__hero { display:block!important; width:100%!important; padding:40px 7%!important; text-align:center!important; color:#fff!important; background:linear-gradient(135deg,#0f2f85 0%,#2f63ff 55%,#5f9bff 100%)!important; border-radius:20px 20px 0 0!important; }
.iyc-rf .iyc-rf__hero--list { display:flex!important; align-items:center!important; justify-content:space-between!important; gap:16px!important; text-align:left!important; }
.iyc-rf .iyc-rf__hero--list form { display:block!important; flex:0 0 auto!important; }
.iyc-rf .iyc-rf__eyebrow { display:inline-block!important; margin:0 0 12px!important; padding:7px 14px!important; color:#1a3170!important; background:#ffc928!important; border-radius:999px!important; font-size:11px!important; font-weight:900!important; letter-spacing:.14em!important; }
.iyc-rf .iyc-rf__hero h2 { display:block!important; margin:0 0 10px!important; color:#fff!important; font-size:clamp(26px,4vw,38px)!important; line-height:1.1!important; letter-spacing:-.02em!important; }
.iyc-rf .iyc-rf__hero p { display:block!important; margin:0!important; color:#e7efff!important; font-size:15px!important; line-height:1.6!important; }

.iyc-rf .iyc-rf__notice { display:block!important; width:100%!important; padding:14px 7%!important; color:#176b3a!important; background:#eafbf1!important; border-bottom:1px solid #bde8cc!important; font-weight:800!important; text-align:center!important; }
.iyc-rf .iyc-rf__notice--error { color:#7a1420!important; background:#fdeceb!important; border-bottom-color:#f3c5c1!important; }

.iyc-rf .iyc-rf__form { display:block!important; width:100%!important; padding:36px 7% 44px!important; background:var(--surface)!important; border-radius:0 0 20px 20px!important; box-shadow:var(--shadow-lg)!important; }
.iyc-rf .iyc-rf__form--pin { max-width:340px!important; margin:0 auto!important; text-align:center!important; }
.iyc-rf .iyc-rf__grid { display:grid!important; width:100%!important; gap:18px!important; margin-bottom:18px!important; }
.iyc-rf .iyc-rf__grid--2 { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
.iyc-rf .iyc-rf__field { display:block!important; margin-bottom:18px!important; }
.iyc-rf .iyc-rf__grid .iyc-rf__field { margin-bottom:0!important; }
.iyc-rf .iyc-rf__field>span { display:block!important; margin:0 0 8px!important; color:var(--ink)!important; font-size:14px!important; font-weight:800!important; }
.iyc-rf .iyc-rf__field small { color:var(--muted)!important; font-weight:500!important; }
.iyc-rf input[type=text],.iyc-rf input[type=email],.iyc-rf input[type=number],.iyc-rf input[type=password],.iyc-rf select,.iyc-rf textarea { display:block!important; width:100%!important; min-height:50px!important; margin:0!important; padding:12px 14px!important; color:var(--ink)!important; background:#fbfcff!important; border:1.5px solid var(--line)!important; border-radius:12px!important; box-shadow:none!important; font:inherit!important; text-align:left!important; }
.iyc-rf textarea { min-height:100px!important; resize:vertical!important; line-height:1.5!important; }
.iyc-rf input:focus,.iyc-rf select:focus,.iyc-rf textarea:focus { border-color:var(--blue)!important; outline:3px solid rgba(47,99,255,.13)!important; background:#fff!important; }
.iyc-rf .iyc-rf__divider { display:flex!important; align-items:center!important; gap:12px!important; margin:28px 0 20px!important; color:var(--muted)!important; font-size:12px!important; font-weight:800!important; letter-spacing:.08em!important; text-transform:uppercase!important; }
.iyc-rf .iyc-rf__divider::before,.iyc-rf .iyc-rf__divider::after { content:""!important; display:block!important; flex:1 1 auto!important; height:1px!important; background:var(--line)!important; }

.iyc-rf .iyc-rf__button { display:inline-flex!important; align-items:center!important; justify-content:center!important; min-height:52px!important; width:100%!important; padding:12px 18px!important; border-radius:13px!important; font:800 15px/1.2 inherit!important; letter-spacing:-.01em!important; cursor:pointer!important; transition:.18s ease; }
.iyc-rf .iyc-rf__button--primary { color:#fff!important; background:linear-gradient(135deg,var(--blue),var(--blue-dark))!important; box-shadow:0 12px 26px rgba(47,99,255,.28)!important; }
.iyc-rf .iyc-rf__button--primary:hover { transform:translateY(-2px)!important; box-shadow:0 16px 32px rgba(47,99,255,.35)!important; }
.iyc-rf .iyc-rf__button--secondary { width:auto!important; color:#fff!important; background:rgba(255,255,255,.14)!important; border:1.5px solid rgba(255,255,255,.5)!important; padding:10px 16px!important; min-height:auto!important; }
.iyc-rf .iyc-rf__button--secondary:hover { background:rgba(255,255,255,.22)!important; }
.iyc-rf .iyc-rf__privacy { display:block!important; margin:14px 0 0!important; color:var(--muted)!important; font-size:12px!important; text-align:center!important; }

.iyc-rf .iyc-rf__table-wrap { display:block!important; width:100%!important; overflow-x:auto!important; background:var(--surface)!important; border-radius:0 0 20px 20px!important; box-shadow:var(--shadow-lg)!important; }
.iyc-rf .iyc-rf__table { display:table!important; width:100%!important; min-width:900px!important; border-collapse:collapse!important; font-size:13px!important; }
.iyc-rf .iyc-rf__table thead { display:table-header-group!important; }
.iyc-rf .iyc-rf__table tbody { display:table-row-group!important; }
.iyc-rf .iyc-rf__table tr { display:table-row!important; }
.iyc-rf .iyc-rf__table th,.iyc-rf .iyc-rf__table td { display:table-cell!important; padding:12px 14px!important; border-bottom:1px solid var(--line)!important; text-align:left!important; vertical-align:top!important; }
.iyc-rf .iyc-rf__table th { color:var(--muted)!important; background:var(--wash)!important; font-size:11px!important; font-weight:800!important; letter-spacing:.06em!important; text-transform:uppercase!important; }
.iyc-rf .iyc-rf__table tbody tr:hover { background:var(--wash)!important; }
.iyc-rf .iyc-rf__link-button { color:var(--red)!important; font-weight:800!important; font-size:12px!important; cursor:pointer!important; text-decoration:underline!important; }

@media (max-width:640px) {
  .iyc-rf { margin:16px auto!important; }
  .iyc-rf .iyc-rf__hero,.iyc-rf .iyc-rf__form { padding-left:20px!important; padding-right:20px!important; }
  .iyc-rf .iyc-rf__hero--list { flex-direction:column!important; align-items:flex-start!important; }
  .iyc-rf .iyc-rf__grid--2 { grid-template-columns:1fr!important; }
}
