/* =========================================================
   RADWAN PORTFOLIO V2
   Japanese Contact Pages
========================================================= */


/* =========================================================
   Scope
========================================================= */

html[lang="ja"] .jp-contact-v2 {
    --container-width: 1280px;
}


/* =========================================================
   Japanese Text Flow
========================================================= */

html[lang="ja"] .jp-contact-v2 h1,
html[lang="ja"] .jp-contact-v2 h2,
html[lang="ja"] .jp-contact-v2 h3 {
    word-break: auto-phrase;
    line-break: strict;
    overflow-wrap: normal;

    text-wrap: pretty;

    letter-spacing: -0.025em;
}


html[lang="ja"] .jp-contact-v2 p,
html[lang="ja"] .jp-contact-v2 li,
html[lang="ja"] .jp-contact-v2 small,
html[lang="ja"] .jp-contact-v2 strong,
html[lang="ja"] .jp-contact-v2 label {
    line-break: strict;
}


/* =========================================================
   Hero
========================================================= */

html[lang="ja"] .jp-contact-v2 .contact-v2-hero h1 {
    max-width: 940px;

    font-size:
        clamp(2.9rem, 4.55vw, 4.7rem);

    line-height: 1.22;
}


html[lang="ja"] .jp-contact-v2 .contact-v2-hero-lead {
    max-width: 800px;

    font-size:
        clamp(1rem, 1.35vw, 1.14rem);

    line-height: 2;
}


html[lang="ja"] .jp-contact-v2 .contact-v2-hero-meta p,
html[lang="ja"] .jp-contact-v2 .contact-v2-hero-meta span {
    text-transform: none;

    letter-spacing: 0.1em;
}


/* =========================================================
   Signal Panel
========================================================= */

html[lang="ja"] .jp-contact-v2 .contact-v2-signal-heading > span {
    text-transform: none;

    letter-spacing: 0.08em;
}


html[lang="ja"] .jp-contact-v2 .contact-v2-signal-list strong {
    line-height: 1.55;
}


html[lang="ja"] .jp-contact-v2 .contact-v2-signal-list small {
    line-height: 1.7;
}


/* =========================================================
   Main Headings
========================================================= */

html[lang="ja"] .jp-contact-v2 .contact-v2-section-heading h2,
html[lang="ja"] .jp-contact-v2 .contact-v2-form-heading h2,
html[lang="ja"] .jp-contact-v2 .contact-v2-cta h2 {
    font-size:
        clamp(2.15rem, 3.45vw, 3.6rem);

    line-height: 1.35;
}


html[lang="ja"] .jp-contact-v2 .contact-v2-section-heading > p,
html[lang="ja"] .jp-contact-v2 .contact-v2-form-heading > p:not(.section-label),
html[lang="ja"] .jp-contact-v2 .contact-v2-cta p {
    line-height: 1.95;
}


/* =========================================================
   Direct Contact
========================================================= */

html[lang="ja"] .jp-contact-v2 .contact-v2-direct-grid article > p:first-of-type,
html[lang="ja"] .jp-contact-v2 .contact-v2-opportunity-grid article > p:first-of-type {
    text-transform: none;

    letter-spacing: 0.07em;
}


html[lang="ja"] .jp-contact-v2 .contact-v2-direct-grid article > a,
html[lang="ja"] .jp-contact-v2 .contact-v2-direct-grid article > strong {
    line-height: 1.55;
}


html[lang="ja"] .jp-contact-v2 .contact-v2-direct-grid article > a {
    overflow-wrap: anywhere;
}


html[lang="ja"] .jp-contact-v2 .contact-v2-direct-grid article > p:last-child {
    line-height: 1.9;
}


/* =========================================================
   Form
========================================================= */

html[lang="ja"] .jp-contact-v2 .contact-v2-form-shell-head > div > span {
    text-transform: none;

    letter-spacing: 0.07em;
}


html[lang="ja"] .jp-contact-v2 .contact-v2-form label {
    line-height: 1.55;
}


html[lang="ja"] .jp-contact-v2 .optional-label {
    letter-spacing: 0.05em;
}


html[lang="ja"] .jp-contact-v2 .form-field-note,
html[lang="ja"] .jp-contact-v2 .contact-form-footer p,
html[lang="ja"] .jp-contact-v2 .contact-v2-response-note p {
    line-height: 1.8;
}


/* =========================================================
   Contribution Areas
========================================================= */

html[lang="ja"] .jp-contact-v2 .contact-v2-opportunity-grid h3 {
    font-size:
        clamp(1.45rem, 1.95vw, 1.85rem);

    line-height: 1.5;
}


html[lang="ja"] .jp-contact-v2 .contact-v2-opportunity-grid article > p:last-child {
    line-height: 1.9;
}


/* =========================================================
   Success Page
========================================================= */

html[lang="ja"] .jp-contact-v2 .contact-v2-success-status small {
    text-transform: none;

    letter-spacing: 0.07em;
}


html[lang="ja"] .jp-contact-v2 .contact-v2-success-status strong {
    line-height: 1.55;
}


html[lang="ja"] .jp-contact-v2 .contact-v2-success-panel h1 {
    max-width: 940px;

    font-size:
        clamp(2.75rem, 4.9vw, 4.9rem);

    line-height: 1.25;

    letter-spacing: -0.035em;
}


html[lang="ja"] .jp-contact-v2 .contact-v2-success-panel .large-text {
    line-height: 1.95;
}


html[lang="ja"] .jp-contact-v2 .contact-v2-success-note {
    line-height: 1.9;
}


/* =========================================================
   Tablet
========================================================= */

@media (max-width: 980px) {

    html[lang="ja"] .jp-contact-v2 .contact-v2-hero-grid {
        gap: 4rem;
    }


    html[lang="ja"] .jp-contact-v2 .contact-v2-signal-panel {
        max-width: 720px;
    }

}


/* =========================================================
   Mobile
========================================================= */

@media (max-width: 700px) {

    html[lang="ja"] .jp-contact-v2 .contact-v2-hero h1 {
        font-size:
            clamp(2.1rem, 8.6vw, 2.9rem);

        line-height: 1.42;
    }


    html[lang="ja"] .jp-contact-v2 .contact-v2-hero-lead {
        font-size: 0.98rem;

        line-height: 1.95;
    }


    html[lang="ja"] .jp-contact-v2 .contact-v2-section-heading h2,
    html[lang="ja"] .jp-contact-v2 .contact-v2-form-heading h2,
    html[lang="ja"] .jp-contact-v2 .contact-v2-cta h2 {
        font-size:
            clamp(1.85rem, 7.2vw, 2.45rem);

        line-height: 1.5;
    }


    html[lang="ja"] .jp-contact-v2 .contact-v2-success-panel h1 {
        font-size:
            clamp(2rem, 8vw, 2.8rem);

        line-height: 1.45;
    }


    html[lang="ja"] .jp-contact-v2 .contact-v2-form-shell-head {
        align-items: flex-start;

        flex-direction: column;
    }

}


/* =========================================================
   Small Mobile
========================================================= */

@media (max-width: 420px) {

    html[lang="ja"] .jp-contact-v2 .contact-v2-hero h1 {
        font-size: 2rem;
    }


    html[lang="ja"] .jp-contact-v2 .contact-v2-success-panel h1 {
        font-size: 1.95rem;
    }


    html[lang="ja"] .jp-contact-v2 .contact-v2-direct-grid article > a {
        font-size: 0.98rem;
    }

}
