/* Approved lower-homepage design: generous imagery, compact cards and clear actions. */
.home-page #community{padding-top:36px;padding-bottom:26px}
.home-page #community .section-heading{align-items:center;margin-bottom:20px}
.home-page #community .section-heading p{max-width:65ch;font-size:16px}
.home-page #community .text-link,.home-page #stories .text-link{font-size:14px;min-height:44px}
.home-page .journey-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.home-page .journey-card{min-width:0;border:1px solid #dcecf3;border-radius:12px;box-shadow:0 3px 12px #123d5305}
.home-page .journey-cover{position:relative;background:#e3f3f7}
.home-page .journey-cover .card-image-button{aspect-ratio:1.62}
.home-page .journey-cover .card-image-button img{height:100%;width:100%;object-fit:cover}
.home-page .journey-tag{position:absolute;left:12px;bottom:12px;max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#e2f7ff;color:#00566d;font-size:12px;font-weight:700;line-height:1.4;padding:6px 12px;border-radius:20px;pointer-events:none}
.home-page .journey-bookmark{position:absolute;top:9px;right:9px;display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffffb3;border-radius:50%;background:#073a58b8;color:#fff;backdrop-filter:blur(4px)}
.home-page .journey-bookmark svg{width:21px;height:21px}
.home-page .journey-bookmark:hover,.home-page .journey-bookmark.saved{background:#fff;color:#00758a}
.home-page .journey-bookmark.saved svg{fill:#c7edf3}
.home-page .journey-bookmark:disabled{opacity:.6;cursor:wait}
.home-page .journey-body{padding:14px 13px 16px}
.home-page .journey-body h3{margin:0;font-size:16px;line-height:1.35;letter-spacing:-.02em;overflow-wrap:anywhere}
.home-page .journey-body .card-title{font-size:16px;line-height:1.35;display:block;font-weight:700;color:#062651}
.home-page .journey-body .card-title:hover{color:#00758a}
.home-page .journey-card .author{font-size:14px;line-height:1.4;gap:7px;margin-top:10px;min-height:26px}
.home-page .journey-card .author>span:last-child{min-width:0;overflow-wrap:anywhere}
.home-page .journey-card .avatar{width:26px;height:26px;font-size:12px;background:#e6f4f8}
.home-page .journey-card .editorial-avatar{background:#007f94;color:#fff;font-weight:700}
.home-page .idea-label{white-space:nowrap;color:#486980}
.home-page .journey-meta{display:flex;flex-wrap:wrap;gap:10px 14px;margin-top:16px;font-size:13px;line-height:1.4;color:#4c6886}
.home-page .journey-meta>span{display:inline-flex;align-items:center;gap:6px}
.home-page .journey-meta svg{width:17px;height:17px;flex-shrink:0;color:#35618c}
.home-page .journey-no-photo{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:#35618c;background:linear-gradient(135deg,#e4f3f8,#c9e6ed);font-size:14px}
.home-page .journey-no-photo svg{width:42px;height:42px}
.home-page .journey-note{margin:16px 0 0;color:#526d85;font-size:14px;line-height:1.5;text-align:center}
.home-page .journey-note button{padding:4px;text-decoration:underline;color:#006d80}
.home-page .journey-section-action{display:flex;justify-content:center;margin-top:8px}
.home-page .route-idea-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px}
.home-page .app-banner{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1.05fr) minmax(170px,.65fr);gap:14px;min-height:300px;margin-top:0;margin-bottom:0;padding:0 26px 0 12px;border-radius:18px;background:linear-gradient(110deg,#e9f8fd,#f2fbff 55%,#e6f7fc);border:1px solid #e6f4fa;overflow:hidden}
.home-page .app-art{position:relative;align-self:stretch;padding:0;display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;overflow:hidden}
.home-page .app-art .handwritten{flex:0 1 37%;font-size:24px;line-height:1.35;transform:rotate(-9deg);margin:0 0 12px 7px;color:#07366e}
.home-page .app-art .handwritten::after{content:'';display:block;border-top:3px solid #139fb3;width:85%;margin-top:12px;transform:rotate(-6deg)}
.home-page .app-art img{display:block;width:62%;height:318px;object-fit:contain;object-position:center bottom;margin:22px 0 -16px;max-width:none}
.home-page .app-copy{padding:28px 0;min-width:0}
.home-page .app-brand{display:flex;align-items:center;gap:8px}
.home-page .app-brand img{width:46px;height:52px;object-fit:contain;flex-shrink:0}
.home-page .app-copy h2{font-size:clamp(25px,2.5vw,34px);letter-spacing:-.045em;line-height:1.15}
.home-page .app-copy h2 span{color:#007f94}
.home-page .app-copy h3{font-size:17px;line-height:1.35;letter-spacing:-.015em;margin-top:4px}
.home-page .app-copy p{font-size:16px;line-height:1.5;color:#526d91;margin:16px 0 18px;max-width:37ch}
.home-page .store-badges{display:flex;flex-wrap:wrap;gap:10px}
.home-page .store-badge{background:#061422;color:#fff;border-radius:7px;padding:9px 14px;min-width:132px;text-align:left}
.home-page .store-badge small{display:block;font-size:12px;line-height:1.4;letter-spacing:0}
.home-page .store-badge strong{display:block;font-size:20px;font-weight:600;line-height:1.2;white-space:nowrap}
.home-page .app-benefits{display:grid;gap:18px;padding:20px 0 20px 12px;margin:0;font-size:14px;line-height:1.4}
.home-page .app-benefits li{margin:0;gap:10px}
.home-page .app-benefits li::before{width:24px;height:24px;font-size:14px}
.home-page #stories{padding-top:32px;padding-bottom:36px}
.home-page #stories .section-heading{margin-bottom:18px}
.home-page #stories .section-heading p{font-size:16px}
.home-page .testimonial-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.home-page .testimonial{display:flex;flex-direction:column;padding:22px;border:1px solid #dcecf3;min-width:0;border-radius:12px;background:#fff}
.home-page .testimonial blockquote{font-size:16px;line-height:1.5;color:#526d91;margin:0 0 18px;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.home-page .review-person{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center;margin-top:auto}
.home-page .review-person .avatar{width:36px;height:36px;font-size:14px;background:#e4f1f5}
.home-page .review-person strong{font-size:14px;line-height:1.4;overflow-wrap:anywhere}
.home-page .review-source{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;color:#526d91;font-size:13px;line-height:1.4;text-decoration:underline;text-underline-offset:3px}
.home-page .stars{grid-column:2;margin:0;font-size:18px;line-height:1;letter-spacing:1px;color:#ad7100}
.home-page .reviews-invitation{grid-column:1/-1;display:flex;align-items:center;gap:24px;padding:26px 28px;border:1px solid #dcecf3;border-radius:14px;background:#f7fbfe}
.home-page .reviews-icon{flex-shrink:0;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#e3f3f8;color:#007f94}
.home-page .reviews-icon svg{width:26px;height:26px}
.home-page .reviews-invitation h3{font-size:20px;line-height:1.35;margin:0 0 6px}
.home-page .reviews-invitation p{font-size:16px;color:#526d91;max-width:66ch;line-height:1.5}
.home-page .reviews-invitation .text-link{margin-left:auto;flex-shrink:0;white-space:normal}
@media(max-width:1100px){
 .home-page .app-banner{grid-template-columns:minmax(0,.75fr) minmax(0,1.2fr) minmax(170px,.7fr);padding-left:20px;gap:16px}
 .home-page .app-art .handwritten{display:none}
 .home-page .app-art img{width:100%;height:310px}
 .home-page .journey-body .card-title{font-size:15px}
 .home-page .idea-label{display:block}
}
@media(max-width:900px){
 .home-page .journey-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
 .home-page .journey-body .card-title{font-size:17px}
 .home-page .idea-label{display:inline}
 .home-page .app-banner{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);padding:0 26px 22px;gap:0 20px}
 .home-page .app-art img{height:300px;max-width:235px}
 .home-page .app-benefits{display:grid;grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:12px 0 0}
 .home-page .app-benefits li{align-items:flex-start}
 .home-page .testimonial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-page .testimonial:last-child:nth-child(odd){grid-column:1/-1}
 .home-page .reviews-invitation{flex-wrap:wrap;gap:16px}
 .home-page .reviews-invitation>div{flex:1;min-width:220px}
 .home-page .reviews-invitation .text-link{margin-left:74px}
}
@media(max-width:600px){
 .home-page #community{padding-top:28px;padding-bottom:24px}
 .home-page #community .section-heading{align-items:flex-start;gap:6px}
 .home-page .journey-grid{gap:14px}
 .home-page .journey-tag{left:8px;bottom:8px;font-size:12px;padding:5px 8px;max-width:calc(100% - 16px)}
 .home-page .journey-body{padding:12px}
 .home-page .journey-body .card-title{font-size:16px}
 .home-page .journey-meta{gap:10px;font-size:13px}
 .home-page .idea-label{display:block}
 .home-page .app-banner{grid-template-columns:minmax(0,1fr);padding:0 22px 24px;gap:0}
 .home-page .app-art{height:240px;gap:12px;overflow:visible}
 .home-page .app-art .handwritten{display:block;font-size:23px;flex:0 1 40%;margin-left:0}
 .home-page .app-art img{height:260px;width:55%;margin:18px 0 -10px}
 .home-page .app-copy{padding:18px 0 20px}
 .home-page .app-copy h2{font-size:32px}
 .home-page .app-copy h3{font-size:18px}
 .home-page .app-copy p{max-width:none}
 .home-page .app-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:0}
 .home-page .app-benefits li{font-size:14px;gap:8px}
 .home-page .store-badges{gap:10px}
 .home-page .store-badge{flex:1;min-width:125px;padding:10px 12px}
 .home-page #stories{padding-top:28px;padding-bottom:28px}
 .home-page .testimonial-grid{grid-template-columns:minmax(0,1fr)}
 .home-page .reviews-invitation{padding:22px;display:grid;grid-template-columns:minmax(0,1fr)}
 .home-page .reviews-invitation>div{min-width:0}
 .home-page .reviews-invitation .text-link{margin:0}
}
@media(max-width:420px){
 .home-page .journey-grid{grid-template-columns:minmax(0,1fr)}
 .home-page .journey-cover .card-image-button{aspect-ratio:1.8}
 .home-page .idea-label{display:inline}
 .home-page .journey-body{padding:15px}
 .home-page .journey-body .card-title{font-size:18px}
 .home-page .journey-meta{gap:18px}
 .home-page .app-art .handwritten{font-size:20px}
 .home-page .app-copy h2{font-size:29px}
}
