/* ================================================================
   REM Sponsorship Page — rem-sponsorship.css
   Scoped under .rem-sponsorship-page
   ================================================================ */

.rem-sponsorship-page { -webkit-font-smoothing: antialiased; }

/* HERO */
.rem-sponsorship-page .hero { position:relative; height:700px; overflow:hidden; }
.rem-sponsorship-page .hero img { width:100%; height:100%; object-fit:cover; object-position:center 30%; display:block; }
.rem-sponsorship-page .hero-ov { position:absolute; inset:0; background:linear-gradient(100deg,rgba(13,27,42,.92) 0%,rgba(13,27,42,.68) 44%,rgba(13,27,42,.15) 100%); display:flex; align-items:center; padding:0 80px; }
.rem-sponsorship-page .hero-box { max-width:680px; }
.rem-sponsorship-page .hero-eye { font-family:var(--font-body); font-size:16px; font-weight:700; letter-spacing:.22em; text-transform:uppercase; color:var(--primary); display:block; margin-bottom:22px; }
.rem-sponsorship-page .hero-box h1 { font-family:var(--font-display); font-size:clamp(38px,5.2vw,64px); font-weight:800; line-height:1.06; color:#fff; margin:0 0 24px; letter-spacing:-.025em; }
.rem-sponsorship-page .hero-box h1 em { font-style:normal; color:var(--primary); }
.rem-sponsorship-page .hero-box p { font-family:var(--font-body); font-size:19px; color:rgba(255,255,255,.8); line-height:1.7; max-width:560px; margin:0 0 32px; }
.rem-sponsorship-page .btns { display:flex; gap:14px; flex-wrap:wrap; }
.rem-sponsorship-page .btn { display:inline-block; padding:16px 34px; font-family:var(--font-body); font-size:14px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; text-decoration:none; border-radius:4px; border:2px solid transparent; transition:.18s; cursor:pointer; }
.rem-sponsorship-page .btn-p { background:var(--primary); color:#fff; border-color:var(--primary); }
.rem-sponsorship-page .btn-p:hover { background:#1d8ab5; border-color:#1d8ab5; color:#fff; }

/* DECLARATION */
.rem-sponsorship-page .declaration { background:var(--authority,#0D1B2A); border-bottom:3px solid var(--accent,#C9A84C); padding:36px 40px; text-align:center; }
.rem-sponsorship-page .declaration p { font-family:var(--font-display); font-size:clamp(18px,2.2vw,24px); color:rgba(255,255,255,.78); line-height:1.5; max-width:920px; margin:0 auto; }
.rem-sponsorship-page .declaration strong { color:#fff; font-weight:700; }

/* IMAGE ROWS */
.rem-sponsorship-page .imgrow { display:grid; grid-template-columns:repeat(3,1fr); gap:0; }
.rem-sponsorship-page .imgrow-tall .imgrow-i { aspect-ratio:4/5; }
.rem-sponsorship-page .imgrow-short .imgrow-i { aspect-ratio:16/9; }
.rem-sponsorship-page .imgrow-i { overflow:hidden; }
.rem-sponsorship-page .imgrow-i img { width:100%; height:100%; object-fit:cover; display:block; }

/* DARK SECTION (engine grid) */
.rem-sponsorship-page .sec-dark { background:var(--authority,#0D1B2A); border-top:5px solid var(--primary); border-bottom:5px solid var(--primary); padding:96px 40px; }
.rem-sponsorship-page .sec-dark .inn { max-width:1100px; margin:0 auto; }
.rem-sponsorship-page .sys-intro { max-width:780px; margin:0 auto 56px; text-align:center; }
.rem-sponsorship-page .eye { font-family:var(--font-body); font-size:13px; font-weight:700; letter-spacing:.22em; text-transform:uppercase; color:var(--primary); display:block; margin-bottom:18px; }
.rem-sponsorship-page .eye-lt { color:var(--primary); }
.rem-sponsorship-page .sec-dark h2 { font-family:var(--font-display); font-size:clamp(32px,4.4vw,52px); font-weight:800; line-height:1.08; letter-spacing:-.02em; margin:0 0 20px; color:#fff; }
.rem-sponsorship-page .sec-dark h2 em { font-style:normal; color:var(--primary); }
.rem-sponsorship-page .body-lt { font-family:var(--font-body); font-size:18px; color:rgba(255,255,255,.78); line-height:1.7; margin:0; }
.rem-sponsorship-page .feat-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; margin-top:48px; }
.rem-sponsorship-page .feat { background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08); border-radius:6px; padding:32px; }
.rem-sponsorship-page .feat h4 { font-family:var(--font-display); font-size:22px; font-weight:700; color:#fff; margin:0 0 12px; }
.rem-sponsorship-page .feat p { font-family:var(--font-body); font-size:16px; color:rgba(255,255,255,.74); line-height:1.65; margin:0; }

/* SPLIT (light) */
.rem-sponsorship-page .split { display:grid; grid-template-columns:1fr 1fr; align-items:center; }
.rem-sponsorship-page .split-light { background:#F2F4F7; }
.rem-sponsorship-page .split-img img { width:100%; height:100%; object-fit:cover; display:block; min-height:520px; }
.rem-sponsorship-page .split-copy { padding:80px 64px; max-width:620px; }
.rem-sponsorship-page .split-copy .eye { color:var(--primary); }
.rem-sponsorship-page .split-copy h2 { font-family:var(--font-display); font-size:clamp(30px,3.8vw,46px); font-weight:800; line-height:1.1; letter-spacing:-.02em; margin:0 0 20px; color:var(--authority,#0D1B2A); }
.rem-sponsorship-page .split-copy h2 em { font-style:normal; color:var(--primary); }
.rem-sponsorship-page .split-copy .body { font-family:var(--font-body); font-size:17px; line-height:1.7; color:#384352; margin:0 0 24px; }
.rem-sponsorship-page .reach-list { list-style:none; margin:0; padding:0; }
.rem-sponsorship-page .reach-list li { display:flex; gap:18px; padding:14px 0; border-top:1px solid rgba(13,27,42,.08); }
.rem-sponsorship-page .reach-list li:last-child { border-bottom:1px solid rgba(13,27,42,.08); }
.rem-sponsorship-page .reach-list strong { font-family:var(--font-display); font-size:15px; font-weight:700; color:var(--authority,#0D1B2A); min-width:120px; text-transform:uppercase; letter-spacing:.08em; padding-top:2px; }
.rem-sponsorship-page .reach-list span { font-family:var(--font-body); font-size:15px; color:#4a5568; line-height:1.6; }

/* SELECTIVITY (centered cinematic) */
.rem-sponsorship-page .mem-guarantee { background:#fff; padding:120px 40px; text-align:center; }
.rem-sponsorship-page .mem-guarantee__inner { max-width:880px; margin:0 auto; }
.rem-sponsorship-page .mem-guarantee__rule { width:60px; height:3px; background:var(--accent,#C9A84C); margin:0 auto 28px; }
.rem-sponsorship-page .mem-guarantee__badge { display:inline-block; font-family:var(--font-body); font-size:13px; font-weight:700; letter-spacing:.22em; text-transform:uppercase; color:var(--accent,#C9A84C); margin-bottom:24px; }
.rem-sponsorship-page .mem-guarantee__h2 { font-family:var(--font-display); font-size:clamp(32px,4.6vw,54px); font-weight:800; line-height:1.08; letter-spacing:-.02em; margin:0 0 20px; color:var(--authority,#0D1B2A); }
.rem-sponsorship-page .mem-guarantee__h2 em { font-style:normal; color:var(--primary); }
.rem-sponsorship-page .mem-guarantee__sub { font-family:var(--font-display); font-size:20px; color:var(--primary); margin:0 0 32px; font-weight:600; }
.rem-sponsorship-page .mem-guarantee__body { font-family:var(--font-body); font-size:18px; line-height:1.7; color:#384352; margin:0 auto 18px; max-width:720px; }
.rem-sponsorship-page .mem-guarantee__note { font-family:var(--font-body); font-size:14px; color:#6b7280; font-style:italic; margin-top:24px; }

/* SPONSORSHIP FORM */
.rem-sponsorship-page .sponsorship-form { background:var(--authority,#0D1B2A); border-top:5px solid var(--primary); border-bottom:5px solid var(--primary); padding:96px 40px; }
.rem-sponsorship-page .sponsorship-form__inner { max-width:780px; margin:0 auto; }
.rem-sponsorship-page .sponsorship-form .eye { color:var(--primary); text-align:center; }
.rem-sponsorship-page .sponsorship-form h2 { font-family:var(--font-display); font-size:clamp(32px,4.4vw,50px); font-weight:800; line-height:1.08; letter-spacing:-.02em; margin:0 0 20px; color:#fff; text-align:center; }
.rem-sponsorship-page .sponsorship-form h2 em { font-style:normal; color:var(--primary); }
.rem-sponsorship-page .sponsorship-form__lead { font-family:var(--font-body); font-size:17px; color:rgba(255,255,255,.78); line-height:1.7; text-align:center; max-width:620px; margin:0 auto 56px; }
.rem-sponsorship-page .rem-form { background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.08); border-radius:8px; padding:48px; }
.rem-sponsorship-page .rem-form-row { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-bottom:20px; }
.rem-sponsorship-page .rem-form-field { margin-bottom:20px; }
.rem-sponsorship-page .rem-form-field label { display:block; font-family:var(--font-body); font-size:13px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:rgba(255,255,255,.85); margin-bottom:8px; }
.rem-sponsorship-page .rem-form-field .req { color:var(--primary); }
.rem-sponsorship-page .rem-form-field input,
.rem-sponsorship-page .rem-form-field textarea { width:100%; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); border-radius:3px; padding:14px 16px; font-family:var(--font-body); font-size:16px; color:#fff; transition:border-color .18s,background .18s; }
.rem-sponsorship-page .rem-form-field input::placeholder,
.rem-sponsorship-page .rem-form-field textarea::placeholder { color:rgba(255,255,255,.4); }
.rem-sponsorship-page .rem-form-field input:focus,
.rem-sponsorship-page .rem-form-field textarea:focus { outline:none; border-color:var(--primary); background:rgba(255,255,255,.09); }
.rem-sponsorship-page .rem-input--error { border-color:#ff6b6b !important; }
.rem-sponsorship-page .rem-form-error { color:#ff8e8e; font-family:var(--font-body); font-size:14px; padding:12px 16px; background:rgba(255,107,107,.1); border-left:3px solid #ff6b6b; border-radius:3px; margin-bottom:20px; }
.rem-sponsorship-page .sponsorship-form__submit { text-align:center; margin-top:24px; }
.rem-sponsorship-page .sponsorship-form__submit .btn { padding:18px 40px; }
.rem-sponsorship-page .sponsorship-form__submit .btn:disabled { opacity:.6; cursor:not-allowed; }
.rem-sponsorship-page .sponsorship-form__fineprint { font-family:var(--font-body); font-size:13px; color:rgba(255,255,255,.55); margin:18px 0 0; }
.rem-sponsorship-page .rem-form-success { background:rgba(41,171,226,.08); border:1px solid var(--primary); border-radius:8px; padding:48px; text-align:center; }
.rem-sponsorship-page .rem-form-success h3 { font-family:var(--font-display); font-size:32px; color:#fff; margin:0 0 14px; font-weight:700; }
.rem-sponsorship-page .rem-form-success p { font-family:var(--font-body); font-size:17px; color:rgba(255,255,255,.78); line-height:1.65; margin:0; }

/* CLOSING */
.rem-sponsorship-page .mem-closing { background:#F2F4F7; padding:120px 40px; text-align:center; }
.rem-sponsorship-page .mem-closing__inner { max-width:880px; margin:0 auto; }
.rem-sponsorship-page .mem-closing__rule { width:60px; height:3px; background:var(--accent,#C9A84C); margin:0 auto 28px; }
.rem-sponsorship-page .mem-closing__eye { font-family:var(--font-body); font-size:13px; font-weight:700; letter-spacing:.22em; text-transform:uppercase; color:var(--primary); display:block; margin-bottom:24px; }
.rem-sponsorship-page .mem-closing__h2 { font-family:var(--font-display); font-size:clamp(34px,5vw,58px); font-weight:800; line-height:1.06; letter-spacing:-.025em; margin:0 0 28px; color:var(--authority,#0D1B2A); }
.rem-sponsorship-page .mem-closing__h2 em { font-style:normal; color:var(--primary); }
.rem-sponsorship-page .mem-closing__body { font-family:var(--font-body); font-size:18px; line-height:1.7; color:#4a5568; max-width:720px; margin:0 auto 24px; }
.rem-sponsorship-page .mem-closing__bold { font-family:var(--font-display); font-size:clamp(20px,2.6vw,28px); color:var(--authority,#0D1B2A); font-weight:600; line-height:1.3; max-width:720px; margin:0 auto; font-style:italic; }

/* RESPONSIVE */
@media (max-width: 900px) {
  .rem-sponsorship-page .hero { height:auto; min-height:620px; }
  .rem-sponsorship-page .hero-ov { padding:0 28px; }
  .rem-sponsorship-page .split { grid-template-columns:1fr; }
  .rem-sponsorship-page .split-img img { min-height:340px; }
  .rem-sponsorship-page .split-copy { padding:56px 28px; }
  .rem-sponsorship-page .feat-grid { grid-template-columns:1fr; }
  .rem-sponsorship-page .imgrow { grid-template-columns:1fr; }
  .rem-sponsorship-page .imgrow-tall .imgrow-i,
  .rem-sponsorship-page .imgrow-short .imgrow-i { aspect-ratio:16/10; }
  .rem-sponsorship-page .sec-dark,
  .rem-sponsorship-page .mem-guarantee,
  .rem-sponsorship-page .sponsorship-form,
  .rem-sponsorship-page .mem-closing { padding:72px 24px; }
  .rem-sponsorship-page .rem-form { padding:28px; }
  .rem-sponsorship-page .rem-form-row { grid-template-columns:1fr; gap:0; margin-bottom:0; }
  .rem-sponsorship-page .reach-list li { flex-direction:column; gap:6px; }
  .rem-sponsorship-page .reach-list strong { min-width:0; }
}
