.ppdb-page { min-height: 100vh; color: #edf3f4; background: radial-gradient(circle at 83% 9%, rgba(98,182,154,.11), transparent 25rem), #0b1720; }
.ppdb-header { width: min(1120px, calc(100% - 48px)); min-height: 86px; margin: auto; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(255,255,255,.09); }
.ppdb-brand { display:flex; align-items:center; gap:12px; }
.ppdb-brand img { width:48px; height:48px; object-fit:contain; }
.ppdb-brand span { display:grid; gap:3px; }
.ppdb-brand strong { font-size:14px; }
.ppdb-brand small,.ppdb-back { color:#aebdc5; font-size:12px; }
.ppdb-back { display:inline-flex; align-items:center; gap:8px; transition:color .2s; }
.ppdb-back:hover,.ppdb-footer a:hover { color:#8ccfbc; }
.ppdb-page main { width:min(920px, calc(100% - 48px)); margin:0 auto; }
.ppdb-hero { padding:64px 0 44px; display:flex; align-items:center; justify-content:space-between; gap:36px; }
.ppdb-hero-copy { max-width:630px; }
.ppdb-eyebrow { display:inline-flex; align-items:center; gap:8px; color:#8ccfbc; font-weight:650; font-size:13px; letter-spacing:.03em; }
.ppdb-hero h1 { max-width:570px; margin:16px 0 14px; color:#f2f6f7; font-size:clamp(34px,5vw,52px); line-height:1.08; letter-spacing:-.04em; }
.ppdb-hero h1 em { color:#83c5b3; font-style:normal; }
.ppdb-hero-copy > p { max-width:600px; color:#b5c1c8; line-height:1.75; font-size:15px; }
.ppdb-note { margin-top:22px; display:flex; align-items:flex-start; gap:10px; max-width:590px; padding:13px 15px; border:1px solid rgba(140,184,204,.17); border-radius:12px; color:#b9c8cf; background:rgba(255,255,255,.035); font-size:12px; line-height:1.6; }
.ppdb-note i { color:#8cb8cc; font-size:15px; }
.ppdb-hero-mark { width:132px; height:150px; flex:none; display:grid; place-content:center; justify-items:center; gap:6px; border:1px solid rgba(140,207,188,.24); border-radius:24px; color:#8ccfbc; background:linear-gradient(145deg,rgba(98,182,154,.12),rgba(255,255,255,.025)); transform:rotate(2deg); }
.ppdb-hero-mark span { font-size:30px; font-weight:800; letter-spacing:.12em; }
.ppdb-hero-mark i { font-size:26px; }
.ppdb-hero-mark small { color:#b5c1c8; font-size:9px; letter-spacing:.15em; }
.ppdb-form-section { padding:30px clamp(20px,4vw,42px) 34px; border:1px solid rgba(255,255,255,.09); border-radius:20px; background:linear-gradient(145deg,rgba(22,41,51,.97),rgba(16,32,41,.97)); box-shadow:0 24px 60px rgba(0,0,0,.18); }
.ppdb-form-heading { display:flex; justify-content:space-between; align-items:end; gap:16px; margin-bottom:26px; }
.ppdb-form-heading > div > span { color:#82c8b4; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; }
.ppdb-form-heading h2 { margin-top:6px; font-size:25px; letter-spacing:-.02em; }
.ppdb-form-heading p { color:#aebdc5; font-size:12px; }
.required-mark,.field > span { color:#8ccfbc; }
.ppdb-form-section fieldset { min-width:0; padding:0; border:0; }
.ppdb-form-section fieldset + fieldset { margin-top:30px; padding-top:26px; border-top:1px solid rgba(255,255,255,.09); }
.ppdb-form-section legend { width:100%; margin-bottom:18px; font-size:15px; font-weight:700; }
.ppdb-form-section legend span { display:inline-grid; place-items:center; width:28px; height:28px; margin-right:8px; border-radius:9px; color:#8ccfbc; background:rgba(98,182,154,.1); font-size:11px; }
.ppdb-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 20px; }
.field { display:grid; align-content:start; gap:8px; color:#dbe4e8; font-size:12px; font-weight:650; }
.field > span { display:inline; }
.field input,.field select,.field textarea { width:100%; min-height:46px; padding:11px 13px; border:1px solid rgba(255,255,255,.13); border-radius:10px; outline:none; color:#edf3f4; background:#0e1c25; font:400 13px var(--body); transition:border-color .2s,box-shadow .2s; }
.field textarea { resize:vertical; min-height:92px; line-height:1.6; }
.field input::placeholder,.field textarea::placeholder { color:#778992; }
.field select:invalid { color:#778992; }
.field option { color:#edf3f4; background:#0e1c25; }
.field input:focus,.field select:focus,.field textarea:focus { border-color:#70bea8; box-shadow:0 0 0 3px rgba(98,182,154,.12); }
.field small { color:#82949e; font-size:11px; font-weight:400; }
.field-wide { grid-column:1/-1; }
.ppdb-consent { display:flex; align-items:flex-start; gap:11px; margin-top:27px; color:#b5c1c8; font-size:12px; line-height:1.65; }
.ppdb-consent input { flex:none; width:16px; height:16px; margin-top:2px; accent-color:#62b69a; }
.ppdb-submit { min-height:48px; margin-top:20px; padding:0 20px; display:inline-flex; align-items:center; justify-content:center; gap:10px; border:0; border-radius:999px; color:#092019; background:linear-gradient(100deg,#75c4ab,#9ac7d2); font:700 13px var(--body); cursor:pointer; transition:transform .2s,filter .2s; }
.ppdb-submit:hover { transform:translateY(-2px); filter:brightness(1.06); }
.ppdb-privacy { display:flex; align-items:flex-start; gap:7px; margin-top:14px; color:#8597a0; font-size:11px; line-height:1.6; }
.ppdb-privacy i { color:#83c5b3; }
.ppdb-feedback { min-height:18px; margin-top:8px; color:#8ccfbc; font-size:12px; }
.ppdb-footer { display:flex; justify-content:space-between; gap:16px; padding:26px 0 36px; color:#8597a0; font-size:11px; }
.ppdb-footer a { color:#b5c1c8; }
@media (max-width:640px) { .ppdb-header { width:calc(100% - 32px); min-height:72px; } .ppdb-brand img { width:40px;height:40px; } .ppdb-brand strong { font-size:12px; } .ppdb-brand small { font-size:10px; } .ppdb-back { font-size:0; } .ppdb-back i { font-size:18px; } .ppdb-page main { width:calc(100% - 32px); } .ppdb-hero { padding:42px 0 28px; gap:14px; } .ppdb-hero h1 { font-size:36px; } .ppdb-hero-copy > p { font-size:13px; } .ppdb-hero-mark { width:70px;height:82px;gap:2px;border-radius:16px; } .ppdb-hero-mark span { font-size:20px; } .ppdb-hero-mark i { font-size:18px; } .ppdb-hero-mark small { font-size:6px; } .ppdb-note { margin-top:16px; padding:11px 12px; } .ppdb-form-section { padding:23px 18px 26px; border-radius:16px; } .ppdb-form-heading { align-items:start; margin-bottom:22px; } .ppdb-form-heading h2 { font-size:21px; } .ppdb-form-heading p { white-space:nowrap; } .ppdb-fields { grid-template-columns:1fr; gap:15px; } .field-wide { grid-column:auto; } .ppdb-form-section fieldset + fieldset { margin-top:24px;padding-top:22px; } .ppdb-consent { margin-top:22px; } .ppdb-submit { width:100%; } .ppdb-footer { flex-direction:column; padding-bottom:26px; } }
@media (max-width:380px) { .ppdb-hero-mark { display:none; } .ppdb-hero h1 { font-size:32px; } }
