.line-contact-section {padding:150px 5vw 65px;background:#fffdf8;}
.line-heading {max-width:900px;margin-bottom:38px;}
.line-heading h1 {font-size:clamp(2rem,4.1vw,3.6rem);line-height:1.35;letter-spacing:-.025em;margin:15px 0 25px;}
.line-heading h1 span {display:inline;}
.line-heading h1 span:nth-child(2)::before {content:' ';}
.line-heading p:not(.eyebrow) {font-size:18px;line-height:1.85;}
.line-choices {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
.line-choice {padding:32px;border:2px solid #173746;background:#eaf5f8;min-width:0;scroll-margin-top:160px;}
.line-choice:nth-child(2) {background:#fff0ae;}
.line-choice-label {display:flex;align-items:center;gap:15px;font-weight:800;margin-bottom:16px;}
.line-choice-label span {font-size:32px;line-height:1;color:#0986b2;}
.line-choice h2 {font-size:clamp(1.55rem,2.4vw,2rem);line-height:1.45;margin:0 0 16px;}
.line-choice > p:not(.line-choice-label) {font-size:16px;line-height:1.9;}
.line-button {display:flex;justify-content:center;align-items:center;min-height:60px;padding:16px 20px;background:#067d38;color:#fff;border:2px solid #067d38;text-decoration:none;font-size:18px;font-weight:800;line-height:1.4;margin:26px 0 12px;text-align:center;border-radius:5px;}
.line-button:hover {background:#05632d;border-color:#05632d;}
.line-button:focus-visible,.line-copy:focus-visible {outline:3px solid #173746;outline-offset:4px;}
.line-choice .line-small {font-size:14px!important;line-height:1.75!important;}
.line-template {border-top:1px solid #bcc8cc;margin-top:22px;padding-top:16px;}
.line-template summary,.line-email-fallback>summary {cursor:pointer;font-weight:800;line-height:1.7;}
.line-template pre {font-family:inherit;white-space:pre-wrap;font-size:15px;line-height:1.85;background:#fffdf8;padding:18px;margin-top:16px;}
.line-copy {background:white;color:#173746;border:1px solid #173746;padding:10px 16px;font:inherit;font-size:15px;font-weight:700;border-radius:4px;cursor:pointer;}
.line-copy-status {display:block;font-size:14px;margin-top:8px;}
.line-qr-panel {display:flex;gap:30px;align-items:center;background:white;border:1px solid #ccd6da;padding:28px;margin-top:30px;}
.line-qr-panel img {flex:0 0 auto;width:160px;height:160px;}
.line-qr-panel h2 {font-size:24px;margin:7px 0;}
.line-qr-panel p {font-size:16px;line-height:1.75;}
.line-qr-panel .line-account {font-weight:800;font-size:20px;}
.line-privacy-note {font-size:14px;line-height:1.85;margin-top:24px;color:#526771;}
.line-email-fallback {max-width:var(--max);margin:auto;border-top:1px solid #ccd6da;padding-top:25px;}
.line-email-fallback>summary {font-size:17px;margin-bottom:30px;}
.line-email-fallback .contact-form-heading .lead-copy {font-size:clamp(1.4rem,2.8vw,2rem);}
.concept-two .contact-band .line-band-action.round-arrow {width:auto;min-width:195px;height:auto;min-height:62px;padding:16px 22px;border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:18px;line-height:1.4;font-weight:800;text-align:center;white-space:nowrap;word-break:keep-all;overflow-wrap:normal;}
@media(max-width:760px){
 .line-contact-section {padding:150px 22px 45px;}
 .line-heading h1 {font-size:clamp(1.85rem,7.7vw,2.8rem);line-height:1.4;}
 .line-heading h1 span {display:block;}
 .line-heading h1 span:nth-child(2)::before {content:none;}
 .line-heading p:not(.eyebrow) {font-size:16px;}
 .line-choices {grid-template-columns:1fr;gap:20px;}
 .line-choice {padding:24px 20px;}
 .line-choice h2 {font-size:1.6rem;}
 .line-button {font-size:17px;padding:15px 12px;}
 .line-qr-panel {flex-direction:column;text-align:center;gap:15px;padding:24px 18px;}
 .line-qr-panel h2 {font-size:22px;}
 .line-qr-panel .eyebrow {font-size:13px;letter-spacing:.08em;}
 .mobile-quick a {font-size:clamp(.82rem,3.5vw,1rem);white-space:nowrap;padding-left:8px;padding-right:8px;}
 .concept-two .contact-band .line-band-action.round-arrow {width:auto;min-width:195px;height:auto;max-width:100%;min-height:62px;padding:16px 22px;font-size:18px;justify-self:start;}
}
@media(min-width:761px){.line-qr-panel{max-width:650px;}.line-heading h1 span:last-child{display:block;}}
.line-heading h1.line-invitation {font-size:clamp(1.6rem,2.8vw,2.6rem);line-height:1.55;letter-spacing:-.025em;}
.line-heading h1.line-invitation .line-intro-row {display:block;}
.line-heading h1.line-invitation .line-intro-row > span,
.line-heading h1.line-invitation strong > span {display:inline-block;white-space:nowrap;}
.line-heading h1.line-invitation span::before {content:none;}
.line-heading h1.line-invitation strong {display:block;margin-top:.5em;font-weight:800;}
@media(max-width:760px){
 .line-heading h1.line-invitation {font-size:clamp(1.3rem,5.9vw,1.75rem);line-height:1.65;}
 .line-heading h1.line-invitation strong > span:last-child {display:block;}
}

/* Keep both LINE consultation actions visible on desktop too. */
@media(min-width:921px) {
 .mobile-quick {display:flex;width:min(640px,calc(100% - 48px));left:0;right:0;bottom:24px;margin-inline:auto;}
 .mobile-quick a {min-height:64px;font-size:18px;white-space:nowrap;padding:12px 20px;}
 .mobile-quick a:focus-visible {outline:3px solid var(--ink);outline-offset:-5px;}
 .site-footer {padding-bottom:120px;}
}
