.jd_request_page
{
padding:0;
background:#ffffff;
}

/* =========================================================
   BANDS
========================================================= */

.jd_request_band
{
position:relative;
overflow:hidden;
padding:clamp(2.15rem, 3.8vw, 3.5rem) 0;
}

.jd_request_band_top
{
background:
linear-gradient(180deg, #d7efff 0%, #c7e8ff 32%, #d9f1ff 62%, #edf8ff 100%);
box-shadow:0 18px 32px rgba(40, 96, 126, 0.16);
z-index:3;
}

.jd_request_band_form
{
background:
linear-gradient(180deg, #f2de7a 0%, #f7e79d 28%, #fff1bc 62%, #fff8de 100%);
border-top:1px solid rgba(210, 184, 70, 0.20);
border-bottom:1px solid rgba(210, 184, 70, 0.16);
position:relative;
z-index:2;
box-shadow:inset 0 18px 28px rgba(255,255,255,0.26);
}

.jd_request_band_bottom
{
background:linear-gradient(180deg, #dff2e1 0%, #bfe3c3 100%);
padding-bottom:clamp(5rem, 8vw, 7rem);
}

.jd_request_band::before,
.jd_request_band::after
{
content:"";
position:absolute;
border-radius:50%;
pointer-events:none;
}

.jd_request_band_top::before
{
width:460px;
height:460px;
top:-180px;
right:-120px;
background:radial-gradient(circle, rgba(255,255,255,0.55) 0%, rgba(255,255,255,0.18) 42%, rgba(255,255,255,0) 72%);
}

.jd_request_band_top::after
{
width:360px;
height:360px;
bottom:-150px;
left:-90px;
background:radial-gradient(circle, rgba(186,230,255,0.52) 0%, rgba(186,230,255,0.15) 45%, rgba(186,230,255,0) 74%);
}

.jd_request_band_form::before
{
width:320px;
height:320px;
top:-90px;
left:-110px;
background:radial-gradient(circle, rgba(255,255,255,0.32) 0%, rgba(255,255,255,0.10) 45%, rgba(255,255,255,0) 74%);
}

.jd_request_band_form::after
{
width:320px;
height:320px;
bottom:-120px;
right:-130px;
background:radial-gradient(circle, rgba(255,234,159,0.24) 0%, rgba(255,234,159,0.08) 44%, rgba(255,234,159,0) 74%);
}

.jd_request_band_bottom::before
{
width:300px;
height:300px;
top:-120px;
right:-80px;
background:radial-gradient(circle, rgba(255,255,255,0.34) 0%, rgba(255,255,255,0.10) 44%, rgba(255,255,255,0) 74%);
}

.jd_request_band_bottom::after
{
width:340px;
height:340px;
bottom:-150px;
left:-100px;
background:radial-gradient(circle, rgba(188,236,174,0.34) 0%, rgba(188,236,174,0.10) 46%, rgba(188,236,174,0) 72%);
}

/* layered edge shadow */
.jd_request_band_top .page_shell_inner
{
position:relative;
z-index:2;
}

.jd_request_band_top .page_shell_inner::after
{
content:"";
position:absolute;
left:0;
right:0;
bottom:-1.2rem;
height:2.4rem;
pointer-events:none;
background:linear-gradient(180deg, rgba(50,96,120,0.18) 0%, rgba(50,96,120,0.08) 38%, rgba(50,96,120,0) 100%);
filter:blur(8px);
z-index:1;
}

/* =========================================================
   TOP BAND
========================================================= */

.jd_request_intro
{
position:relative;
z-index:2;
display:grid;
gap:1.1rem;
margin-top:0;
}

.jd_request_intro_copy,
.jd_request_trust_card,
.jd_request_info_card,
.jd_request_form_shell,
.jd_request_process_card,
.jd_request_tips_strip
{
position:relative;
z-index:2;
border-radius:1.55rem;
box-shadow:0 24px 50px rgba(17,17,17,0.16);
}

.jd_request_intro_copy
{
padding:1.45rem;
background:linear-gradient(180deg, #ffffff 0%, #f9fdff 100%);
border:2px solid #7db8d3;
}

.jd_request_kicker
{
display:inline-flex;
align-items:center;
justify-content:center;
padding:0.48rem 0.88rem;
border-radius:999px;
background:linear-gradient(180deg, #ffffff 0%, #edf9ff 100%);
border:1px solid rgba(120, 188, 220, 0.18);
color:#23566d;
font-size:0.78rem;
font-weight:var(--weight-bold);
letter-spacing:0.03em;
text-transform:uppercase;
}

.jd_request_kicker_box
{
display:flex;
width:100%;
margin:0 0 1rem;
padding:0.78rem 1rem;
border-radius:1rem;
background:#7db8d3;
border:2px solid #23566d;
color:#ffffff;
box-shadow:0 10px 22px rgba(35,86,109,0.22);
font-size:0.9rem;
font-weight:600;
letter-spacing:0.04em;
text-align:center;
justify-content:center;
}

.jd_request_heading
{
margin:0 0 0.9rem;
font-size:clamp(1.45rem, 2.55vw, 2.2rem);
line-height:1.1;
max-width:none;
white-space:nowrap;
letter-spacing:-0.02em;
text-align:center;
margin-left:auto;
margin-right:auto;
}

.jd_request_lead
{
margin:0 0 0.9rem;
font-size:1.08rem;
line-height:1.72;
color:var(--jd-black);
max-width:56ch;
}

.jd_request_text
{
margin:0;
line-height:1.76;
color:#4f4f4f;
max-width:58ch;
}

.jd_request_trust_card
{
padding:1.3rem 1.45rem 1.25rem;
background:linear-gradient(180deg, #ffffff 0%, #f6fcff 100%);
border:2px solid #7db8d3;
}

.jd_request_trust_card h3,
.jd_request_info_card h3,
.jd_request_process_card h3,
.jd_request_tips_strip h3
{
margin:0 0 0.8rem;
font-size:1.28rem;
line-height:1.24;
text-align:center;
}

.jd_request_tick_list,
.jd_request_plain_list
{
margin:0;
padding:0;
list-style:none;
}

.jd_request_tick_list li,
.jd_request_plain_list li
{
position:relative;
padding-left:1.75rem;
margin-bottom:0.82rem;
line-height:1.64;
color:var(--jd-black);
}

.jd_request_tick_list li:last-child,
.jd_request_plain_list li:last-child
{
margin-bottom:0;
}

.jd_request_tick_list li::before
{
content:"✓";
position:absolute;
left:0;
top:0.02rem;
font-weight:700;
color:#4f93aa;
}

.jd_request_plain_list li::before
{
content:"•";
position:absolute;
left:0;
top:0;
font-weight:700;
font-size:1.15rem;
line-height:1;
color:#67a852;
}

.jd_request_trust_strip
{
position:relative;
z-index:2;
display:grid;
gap:1rem;
margin-top:1.2rem;
}

.jd_request_trust_item
{
padding:1.15rem 1.15rem 1.08rem;
background:#fff1b5;
border:2px solid #7db8d3;
border-radius:1.2rem;
color:#111111;
box-shadow:0 20px 38px rgba(0,0,0,0.18);
text-align:center;
}

.jd_request_trust_item strong
{
display:block;
margin-bottom:0.32rem;
font-size:1rem;
}

.jd_request_trust_item span
{
display:block;
font-size:0.94rem;
line-height:1.55;
color:#494949;
}

/* =========================================================
   FORM BAND
========================================================= */

.jd_request_form_zone
{
position:relative;
z-index:2;
max-width:920px;
margin:0 auto;
}

.jd_request_form_zone::before
{
content:"";
position:absolute;
left:1rem;
right:1rem;
top:-1rem;
height:2rem;
border-radius:1.5rem;
background:linear-gradient(180deg, rgba(116,92,16,0.15) 0%, rgba(116,92,16,0.05) 45%, rgba(116,92,16,0) 100%);
filter:blur(10px);
pointer-events:none;
}

.jd_request_form_header
{
text-align:center;
max-width:760px;
margin:0 auto 1.55rem;
}

.jd_request_formHeader .jd_request_kicker,
.jd_request_form_header .jd_request_kicker
{
display:none;
}

.jd_request_form_header h2
{
margin:0 0 0.8rem;
font-size:clamp(1.9rem, 4.6vw, 2.7rem);
line-height:1.08;
}

.jd_request_form_header p
{
margin:0;
font-size:1.02rem;
line-height:1.72;
color:#5a5a5a;
}

.jd_request_form_shell
{
padding:1.3rem;
background:linear-gradient(180deg, #ffffff 0%, #f6f6f6 100%);
border:2px solid #e0c85e;
box-shadow:
0 26px 50px rgba(90,72,10,0.16),
0 8px 16px rgba(255,255,255,0.55) inset;
}

.jd_repair_form_wrap
{
max-width:none;
}

.jd_repair_form_card
{
box-shadow:none;
border:0;
background:transparent;
padding:0;
}

.jd_repair_form_card .jd_form_section
{
padding:1.15rem;
margin-bottom:1rem;
border:1px solid rgba(125,184,211,0.18) !important;
box-shadow:0 10px 22px rgba(17,17,17,0.05);
border-radius:1.2rem !important;
}

.jd_repair_form_card .jd_form_section:last-child
{
margin-bottom:0;
}

.jd_repair_form_card .jd_form_section_header
{
margin-bottom:1rem;
padding-bottom:0.95rem;
border-bottom:1px solid rgba(17,17,17,0.06);
text-align:center;
}

.jd_repair_form_card .jd_form_section_header h3
{
margin:0 0 0.45rem;
text-align:center;
}

.jd_repair_form_card .jd_form_section_header p
{
max-width:42rem;
margin:0 auto;
text-align:center;
}

.jd_repair_form_card .jd_form_sectionHeader .jd_form_section_kicker,
.jd_repair_form_card .jd_form_section_header .jd_form_section_kicker
{
display:inline-flex;
align-items:center;
justify-content:center;
min-width:7rem;
padding:0.42rem 0.95rem;
margin:0 auto 0.75rem;
border-radius:999px;
background:#fff3bf !important;
border:1px solid #d8b84e !important;
color:#7a5d00 !important;
font-size:0.82rem;
font-weight:700;
letter-spacing:0.03em;
text-transform:uppercase;
box-shadow:0 4px 10px rgba(17,17,17,0.06);
}

.jd_repair_form_card .form_label
{
font-size:0.94rem;
}

.jd_repair_form_card .form_input,
.jd_repair_form_card .form_select,
.jd_repair_form_card .form_textarea
{
border:1px solid #d3d8dc;
background:#ffffff;
box-shadow:inset 0 1px 2px rgba(17,17,17,0.03);
}

.jd_repair_form_card .form_input:focus,
.jd_repair_form_card .form_select:focus,
.jd_repair_form_card .form_textarea:focus
{
border-color:#7db8d3;
box-shadow:0 0 0 0.2rem rgba(125,184,211,0.18);
}

.jd_repair_form_card .form_help
{
color:#666666;
}

.jd_repair_form_card .jd_submit_button
{
box-shadow:0 18px 34px rgba(17,17,17,0.18);
}

.jd_repair_form_card .jd_submit_note
{
text-align:center;
}

.jd_form_message
{
max-width:920px;
margin:0 auto 1rem;
padding:0.95rem 1.1rem;
border-radius:1rem;
font-size:0.95rem;
font-weight:600;
line-height:1.5;
text-align:center;
box-shadow:0 10px 22px rgba(17,17,17,0.08);
}

.jd_form_message_error
{
background:#fff1f1;
border:1px solid #e6b8b8;
color:#8f2d2d;
}

/* floating labels */
.form_field
{
position:relative;
margin-bottom:0;
}

.form_field .form_input,
.form_field .form_textarea,
.form_field .form_select
{
width:100%;
}

.form_field .form_input,
.form_field .form_select
{
padding-top:1.45rem;
padding-bottom:0.55rem;
min-height:3.65rem;
}

.form_field .form_textarea
{
padding-top:1.7rem;
padding-bottom:0.75rem;
min-height:9.25rem;
}

.floating_label
{
position:absolute;
top:50%;
left:0.95rem;
transform:translateY(-50%);
font-size:0.92rem;
line-height:1.2;
color:#707070;
background:transparent;
transition:all 0.18s ease;
pointer-events:none;
max-width:calc(100% - 1.9rem);
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
}

.floating_label_textarea
{
top:1.15rem;
transform:none;
}

.form_field .form_input:focus + .floating_label,
.form_field .form_input:not(:placeholder-shown) + .floating_label,
.form_field .form_textarea:focus + .floating_label,
.form_field .form_textarea:not(:placeholder-shown) + .floating_label,
.form_field .form_select:focus + .floating_label,
.form_field .form_select:valid + .floating_label
{
top:0.52rem;
transform:none;
font-size:0.72rem;
font-weight:700;
letter-spacing:0.01em;
color:#2b6f8f;
}

.form_field .form_select
{
appearance:none;
}

.form_field_select .floating_label
{
top:0.52rem;
transform:none;
font-size:0.72rem;
font-weight:700;
letter-spacing:0.01em;
color:#2b6f8f;
}

.form_help_dual
{
margin-top:0.2rem !important;
}

.form_help_dual .form_help
{
display:block;
}

/* security code box */
.jd_security_panel
{
display:grid;
grid-template-columns:minmax(240px, 1fr) 230px;
gap:1rem;
align-items:center;
padding:0.9rem 1rem !important;
background:#fff9e8 !important;
border:1px solid #efe3ad !important;
border-radius:1rem;
box-shadow:none;
}

.jd_security_panel_code
{
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
text-align:center;
min-height:7.8rem;
padding:0.7rem 1rem;
background:#fffdf3;
border:1px solid #efe3ad;
border-radius:0.95rem;
}

.jd_security_label
{
display:block;
margin:0 0 0.45rem;
font-size:0.92rem;
line-height:1.2;
font-weight:700;
color:#555555;
text-transform:none;
letter-spacing:0;
}

.jd_security_panel_code strong
{
display:block;
margin:0 0 0.45rem;
font-size:3.15rem;
line-height:1;
font-weight:800;
color:#f2b300;
letter-spacing:0.03em;
}

.jd_security_hint
{
display:block;
margin:0;
font-size:0.82rem;
line-height:1.35;
color:#666666;
}

.jd_security_panel_input
{
display:flex;
align-items:center;
justify-content:center;
}

.jd_security_panel_input .form_input
{
width:100%;

max-width:100%;
min-height:7.8rem;
padding:0 1rem;
border:2px solid #d6d6d6;
border-radius:0.95rem;
background:#ffffff;
font-size:3rem;
line-height:1;
font-weight:800;
text-align:center;
letter-spacing:0.03em;
color:#f2b300;
box-shadow:inset 0 1px 2px rgba(17,17,17,0.04);
}

.jd_security_panel_input .form_input::placeholder
{
color:#f2b300;
opacity:0.25;
}

.jd_security_panel_input .form_input:focus
{
border-color:#b9b9b9;
box-shadow:0 0 0 0.2rem rgba(125,184,211,0.12);
color:#f2b300;
}

/* form bottom section polish */
.jd_repair_form_card .jd_form_section_final
{
padding-top:1.35rem !important;
}

.jd_repair_form_card .jd_form_section_final .form_row,
.jd_repair_form_card .jd_form_section_final .jd_security_panel,
.jd_repair_form_card .jd_form_section_final .jd_terms_box,
.jd_repair_form_card .jd_form_section_final .jd_submit_area
{
margin-top:1.15rem;
}

.jd_repair_form_card .jd_form_section_final .form_row:first-of-type
{
margin-top:0;
}

.jd_terms_box
{
border-radius:1rem !important;
padding:1rem 1.1rem !important;
background:linear-gradient(180deg, #fffef8 0%, #fff7dc 100%) !important;
border:1px solid rgba(210, 184, 70, 0.14) !important;
text-align:center;
}

.jd_checkbox_label
{
justify-content:center;
align-items:center;
gap:0.7rem;
}

.jd_checkbox_label span
{
display:inline-block;
text-align:center;
max-width:44rem;
}

.jd_submit_area
{
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
gap:0.8rem;
padding-top:0.35rem;
margin-top:0.35rem;
}

.jd_submit_button
{
display:inline-flex;
align-items:center;
justify-content:center;
min-width:340px;
min-height:4rem;
padding:0 2rem;
font-size:1.16rem;
font-weight:700;
letter-spacing:0.01em;
text-align:center;
border-radius:999px;
border:2px solid #2b2b2b;
box-shadow:0 18px 34px rgba(17,17,17,0.18);
}

.jd_submit_note
{
max-width:none;
font-size:0.84rem;
line-height:1.3;
white-space:nowrap;
}

/* =========================================================
   BOTTOM BAND
========================================================= */

.jd_request_bottom_intro
{
text-align:center;
margin-bottom:2rem;
}

.jd_request_bottom_intro h2
{
font-size:clamp(1.6rem, 2.4vw, 2rem);
margin-bottom:0.5rem;
}

.jd_request_bottom_intro p
{
font-size:1rem;
color:#444444;
}

.jd_request_bottom_layout
{
display:grid;
grid-template-columns:2fr 1fr;
gap:1.5rem;
align-items:stretch;
}

.jd_request_process_card,
.jd_request_info_card_light,
.jd_request_tips_strip
{
background:#ffffff;
border:2px solid #2b6f8f;
border-radius:1.25rem;
box-shadow:0 18px 40px rgba(0,0,0,0.12);
}

.jd_request_process_card
{
padding:1.5rem;
}

.jd_request_steps
{
display:flex;
flex-direction:column;
gap:1.2rem;
}

.jd_request_step
{
display:flex;
gap:0.9rem;
align-items:flex-start;
}

.jd_request_step_no
{
width:34px;
height:34px;
border-radius:50%;
background:#f2b300;
color:#111111;
font-weight:700;
display:flex;
align-items:center;
justify-content:center;
flex-shrink:0;
box-shadow:0 8px 16px rgba(17,17,17,0.12);
}

.jd_request_step strong
{
display:block;
margin-bottom:0.2rem;
}

.jd_request_side_cards
{
display:flex;
flex-direction:column;
gap:1.5rem;
}

/* right side box text alignment */
.jd_request_side_cards .jd_request_info_card,
.jd_request_side_cards .jd_request_info_card_light,
.jd_request_side_cards .jd_request_info_card_dark
{
text-align:center;
}

.jd_request_side_cards .jd_request_info_card p,
.jd_request_side_cards .jd_request_info_card_light p,
.jd_request_side_cards .jd_request_info_card_dark p
{
margin-left:auto;
margin-right:auto;
max-width:36ch;
}

.jd_request_info_card
{
padding:1.45rem;
background:linear-gradient(180deg, #ffffff 0%, #fafffa 100%);
border:1px solid rgba(120, 190, 110, 0.16);
box-shadow:0 22px 44px rgba(17,17,17,0.12);
}

.jd_request_info_card p
{
margin:0;
line-height:1.74;
color:#535353;
}

.jd_request_info_card_light
{
padding:1.4rem;
background:#ffffff;
border:2px solid #2b6f8f;
}

.jd_request_info_card_dark
{
background:#ffffff;
border:2px solid #2b6f8f;
color:#111111;
}

.jd_request_info_card_dark h3,
.jd_request_info_card_dark p
{
color:#111111;
}

.jd_request_step_text strong
{
display:block;
margin-bottom:0.25rem;
line-height:1.42;
}

.jd_request_step_text p
{
margin:0;
line-height:1.68;
color:#575757;
}

.jd_request_tips_strip
{
margin-top:1.5rem;
padding:1.15rem 1.5rem;
text-align:center;
}

.jd_request_tips_strip h3
{
margin:0 0 0.45rem;
font-size:1.15rem;
}

.jd_request_tips_strip p
{
margin:0;
line-height:1.7;
color:#4d4d4d;
}

/* spacing above social bar */
.social_media_bar_section
{
margin-top:2rem;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (min-width: 768px)
{
.jd_request_intro
{
grid-template-columns:minmax(0, 2fr) minmax(0, 1.35fr);
align-items:stretch;
}

.jd_request_trust_strip
{
grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.35fr);
}
}

@media (max-width: 900px)
{
.jd_request_bottom_layout
{
grid-template-columns:1fr;
}

.jd_request_tips_strip
{
padding:1.15rem 1.1rem;
}
}

@media (min-width: 1040px)
{
.jd_request_band
{
padding:clamp(2.6rem, 4.2vw, 4rem) 0;
}

.jd_request_intro_copy
{
padding:1.6rem;
}

.jd_request_trust_card
{
padding:1.3rem 1.45rem 1.3rem;
}

.jd_request_form_shell
{
padding:1.45rem;
}

.jd_request_info_card
{
padding:1.5rem;
}
}

@media (max-width: 1039px)
{
.jd_request_heading
{
white-space:normal;
}

.jd_request_kicker_box
{
width:auto;
}

.jd_request_form_zone::before
{
left:0.5rem;
right:0.5rem;
}
}

@media (max-width: 767px)
{
.jd_security_panel
{
grid-template-columns:1fr;
gap:0.85rem;
}

.jd_security_panel_code,
.jd_security_panel_input .form_input
{
min-height:6.3rem;
}

.jd_security_panel_code strong
{
font-size:2.5rem;
}

.jd_security_panel_input .form_input
{
font-size:2.45rem;
}

.jd_security_hint
{
text-align:center;
}

.jd_submit_button
{
width:100%;
min-width:0;
}

.jd_submit_note
{
white-space:normal;
}

.floating_label
{
font-size:0.88rem;
}

.floating_label_textarea
{
top:1rem;
}
}