/* Original duck illustrations match the existing storybook banners. */
.feature-line .feature-artwork {background:#e7efdf;border:0}
.feature-line .line-feature-scene {display:block;width:100%;height:100%;object-fit:cover}
.feature-line .line-feature-design {position:absolute;inset:0;color:#1f3a5f}
.feature-line .line-feature-logo {position:absolute;top:7%;right:7%;display:block;width:clamp(40px,12cqw,64px);height:auto}
.feature-banners .line-feature-heading {position:absolute;top:7%;left:7%;right:calc(7% + clamp(40px,12cqw,64px) + 12px);border:0;padding:0;margin:0;font-family:inherit;font-weight:700;font-size:clamp(19px,6.8cqw,34px);line-height:1.55;letter-spacing:0;color:#1f3a5f;text-wrap:initial}
.feature-line .line-feature-registration {position:absolute;left:7%;bottom:7%;padding:7px 18px;border:1px solid #bed2c3;border-radius:999px;background:#fff;color:#173c35;font-size:clamp(13px,4cqw,19px);font-weight:700;line-height:1.5;letter-spacing:0}
.feature-line .feature-banner:is(:hover,:focus-visible) .line-feature-registration {background:#edf7ef}
.line-announcement {position:fixed;z-index:70;right:24px;bottom:max(24px,env(safe-area-inset-bottom));display:grid;grid-template-columns:minmax(0,1fr) 138px;gap:12px 16px;width:360px;max-width:calc(100% - 24px);max-height:calc(100svh - 24px);overflow:auto;padding:20px;border:1px solid #b9d4c1;border-radius:18px;background:#fff;color:#1f3a5f;box-shadow:0 5px 28px #1f3a5f20;font-family:inherit}
.line-announcement[hidden] {display:none!important}
.line-announcement-close {position:absolute;z-index:2;right:3px;top:3px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #d5e1d9;border-radius:50%;background:#fff;color:#37465b;font:300 26px/1 Arial,sans-serif;cursor:pointer}
.line-announcement .line-announcement-scene {grid-column:2;grid-row:1;align-self:stretch;min-height:146px;margin:0;overflow:hidden;border-radius:12px;background:#e8f0e0}
.line-announcement-scene img {display:block;width:100%;height:100%;min-height:146px;object-fit:cover;object-position:65% center;max-width:none}
.line-announcement-content {display:contents}
.line-announcement-heading {grid-column:1;grid-row:1;display:grid;grid-template-columns:40px minmax(0,1fr);align-content:center;align-items:center;gap:8px 10px;min-width:0}
.line-announcement-heading>img {display:block;grid-column:1;grid-row:1;width:40px;height:40px}
.line-announcement-heading>div {display:contents}
.line-announcement .line-announcement-heading p {grid-column:2;grid-row:1;margin:0;font-size:11px;line-height:1.5;font-weight:600;letter-spacing:0;color:#42664c}
.line-announcement .line-announcement-heading h2 {grid-column:1/-1;grid-row:2;margin:0;padding:0;border:0;font-family:inherit;font-size:21px;font-weight:700;line-height:1.5;letter-spacing:0;color:#1f3a5f}
.line-announcement .line-announcement-copy {grid-column:1/-1;grid-row:2;margin:0;font-size:14px;line-height:1.7;letter-spacing:0}
.line-announcement .line-add-button {grid-column:1/-1;grid-row:3}
.line-add-button,.rich-content .line-news-button .wp-block-button__link {display:flex;justify-content:center;align-items:center;min-height:48px;padding:11px 18px;border:1px solid #06c755;border-radius:8px;background:#06c755;color:#103b22;font-family:inherit;font-size:17px;font-weight:700;line-height:1.6;letter-spacing:0;text-decoration:none;text-align:center}
.line-add-button:hover,.rich-content .line-news-button .wp-block-button__link:hover {background:#05b84f;color:#103b22;text-decoration:none}
.line-add-button:focus-visible,.line-announcement-close:focus-visible,.rich-content .line-news-button a:focus-visible {outline:3px solid #1f3a5f;outline-offset:3px}
.rich-content .line-news-buttons {margin:28px 0;display:flex;justify-content:flex-start}
.rich-content .line-news-button {width:min(100%,340px)}
body.menu-open .line-announcement,body:has(.cocoro-menu-panel[data-state="open"]) .line-announcement {visibility:hidden;pointer-events:none}
@media(max-width:700px) {
 .line-announcement {right:12px;bottom:max(12px,env(safe-area-inset-bottom));width:342px;grid-template-columns:minmax(0,1fr) 128px;padding:18px;gap:12px 14px}
 .line-announcement .line-announcement-heading h2 {font-size:20px;line-height:1.5}
}
@media(max-width:360px) {
 .line-announcement {grid-template-columns:minmax(0,1fr) 106px;padding:16px;gap:11px 12px}
 .line-announcement .line-announcement-heading h2 {font-size:19px}
 .line-announcement-heading {gap:7px 8px}
 .line-announcement .line-announcement-scene,.line-announcement-scene img {min-height:132px}
}
@media(max-height:480px) and (min-width:600px) {
 .line-announcement {width:420px;grid-template-columns:minmax(0,1fr) 130px;padding:16px;gap:10px 14px}
 .line-announcement .line-announcement-scene,.line-announcement-scene img {min-height:120px}
 .line-announcement .line-announcement-heading h2 {font-size:19px}
}
