/* Scoped additions for the public press service page. */
.press-hero { padding-bottom: 90px; }
.press-hero__grid { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(0,1fr); gap:80px; align-items:center; }
.press-hero h1 { font-size:clamp(3.3rem,6.2vw,6rem); line-height:1.02; margin-bottom:30px; }
.press-hero p { max-width:680px; }
.press-hero .press-intro { color:#111; font-size:clamp(1.15rem,2vw,1.55rem); line-height:1.5; }
.press-hero__note { border:1px solid #ccc; padding:32px; background:#f6f6f6; }
.press-big { display:block; font-size:110px; line-height:1; letter-spacing:-.08em; }
.press-big > span { display:block; font-size:18px; letter-spacing:-.02em; line-height:1.5; margin:18px 0 30px; }
.press-mini-list { font-size:14px; line-height:2.5; border-block:1px solid #ccc; padding:18px 0; }
.press-mini-list span { font-size:10px; color:#666; margin-left:8px; }
.press-hero__note p { font-size:12px; margin:24px 0 0; }
.press-section { padding:100px 0; border-top:1px solid var(--line); }
.press-section h2 { font-size:clamp(2.3rem,4.4vw,4.2rem); }
.press-method { background:#f6f6f6; }
.press-steps { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:28px; }
.press-steps article { border-top:1px solid #aaa; padding-top:24px; }
.press-steps h3 { font-size:23px; margin:18px 0; }
.press-steps p { font-size:14px; }
.press-jump { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:60px; }
.press-jump a { border:1px solid #ccc; padding:12px 20px; font-size:13px; }
.press-jump a:hover { background:#f1f1f1; border-color:#111; }
.press-jump span { margin-left:20px; }
.press-case { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.65fr); gap:90px; padding:65px 0; border-top:1px solid #aaa; scroll-margin-top:140px; }
.press-logo { height:145px; display:flex; align-items:center; margin-bottom:30px; }
.press-logo img { width:auto; max-width:260px; max-height:130px; object-fit:contain; }
.press-case h3 { font-size:32px; margin-bottom:12px; }
.press-meta { font-size:13px; }
.press-count { display:inline-block; border-bottom:1px solid #bbb; padding-bottom:6px; font:11px var(--mono-font); }
.press-case h4 { font-size:clamp(1.8rem,3vw,2.7rem); margin:0 0 24px; }
.press-case__body > p { font-size:15px; margin-bottom:30px; }
.press-links { list-style:none; padding:0; margin:0; }
.press-links a { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 8px; border-bottom:1px solid #ddd; }
.press-links a:hover { color:#111; background:#f5f5f5; }
.press-links small { display:block; font:10px var(--mono-font); text-transform:uppercase; color:#777; margin-bottom:6px; }
.press-links strong { font-size:16px; font-weight:500; overflow-wrap:anywhere; }
.press-more > summary { cursor:pointer; padding:22px 8px; font-size:13px; text-decoration:underline; text-underline-offset:5px; }
.press-more[open] > summary { border-bottom:1px solid #aaa; }
.press-source-note { font-size:12px; max-width:740px; border-top:1px solid #ddd; padding-top:25px; }
.press-faq { max-width:950px; }
@media(max-width:991.98px) {
 .press-hero__grid { grid-template-columns:1fr; gap:45px; }
 .press-hero__note { max-width:600px; }
 .press-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .press-case { gap:40px; }
}
@media(max-width:575.98px) {
 .press-section { padding:65px 0; }
 .press-hero h1 { font-size:clamp(2.6rem,12vw,3.6rem); }
 .press-hero__note { padding:25px; }
 .press-case { grid-template-columns:1fr; gap:32px; padding:45px 0; }
 .press-logo { height:110px; margin-bottom:20px; }
 .press-logo img { max-height:100px; max-width:230px; }
 .press-steps { grid-template-columns:1fr; gap:20px; }
 .press-jump { gap:8px; }
 .press-jump a { padding:10px 12px; }
 .press-jump span { margin-left:8px; }
}
