/* KN_PWA_111 */

.knpwa-promo{
 display:flex;align-items:center;gap:20px;
 margin:25px auto 35px;padding:24px;
 border:1px solid #8b7857;border-radius:19px;
 background:linear-gradient(125deg,#153940,#10292e);
 color:#e7f0ec
}
.knpwa-promo img{border-radius:13px}
.knpwa-promo div{flex:1}
.knpwa-promo b{color:#f2cc8b;font-size:22px}
.knpwa-promo p{
 margin:8px 0;color:#c6dad4;font-size:14px
}
.knpwa-promo a,.knpwa-hero button{
 background:#efd091;color:#163136!important;
 border:0;border-radius:12px;padding:13px 19px;
 font:800 14px system-ui;text-decoration:none;
 cursor:pointer
}
.knpwa-page{padding-bottom:70px}
.knpwa-hero{
 padding:clamp(22px,5vw,46px);margin:24px 0;
 border-radius:22px;
 background:linear-gradient(130deg,#173b3d,#0c252e);
 border:1px solid #688177;color:#dfebe6
}
.knpwa-hero span,.knpwa-guides span{
 font-size:11px;color:#efcd8d;
 letter-spacing:.1em;font-weight:800
}
.knpwa-hero h1{
 font-size:clamp(27px,4vw,46px);
 color:#fff;margin:12px 0
}
.knpwa-hero em{color:#efcd8d;font-style:normal}
.knpwa-hero p{line-height:1.6}
.knpwa-anchor{
 display:inline-block;margin:15px;color:#efcd8d
}
.knpwa-guides{
 display:grid;grid-template-columns:1fr 1fr;gap:18px
}
.knpwa-guides section{
 background:#132f35;border:1px solid #57746d;
 padding:23px;border-radius:18px;color:#d5e4db
}
.knpwa-guides h2{color:white}
.knpwa-guides li{margin:12px 0;line-height:1.6}
.knpwa-guides strong{color:#f4d8a7}
.knpwa-note{
 color:#bccfc9;line-height:1.7;font-size:13px
}
.knpwa-mini{
 position:fixed;
 bottom:calc(12px + env(safe-area-inset-bottom));
 left:12px;right:12px;z-index:99;
 background:#163a3d;
 border:1px solid #e4bd7d;
 border-radius:17px;
 padding:15px 42px 15px 16px;
 color:#fff;
 box-shadow:0 15px 40px #0008
}
.knpwa-mini[hidden]{display:none!important}
.knpwa-mini strong{display:block;color:#efcb88}
.knpwa-mini p{font-size:12px;color:#d2dfd8}
.knpwa-mini button{
 background:#e9c487;color:#102b30;
 border:0;border-radius:9px;
 padding:10px 14px;font-weight:800
}
.knpwa-mini #knpwa-close{
 position:absolute;right:8px;top:6px;
 background:transparent;color:white;
 padding:5px;font-size:23px
}
@media(min-width:761px){
 .knpwa-mini{display:none!important}
}
@media(max-width:760px){
 .knpwa-promo{
  display:grid;grid-template-columns:60px 1fr;
  padding:16px;gap:12px
 }
 .knpwa-promo a{
  grid-column:1/-1;text-align:center
 }
 .knpwa-promo img{width:60px}
 .knpwa-guides{grid-template-columns:1fr}
 .knpwa-hero button{width:100%}
}
