.home-page{box-sizing:border-box;flex-direction:column;align-items:center;width:100%;max-width:100%;min-height:100vh;padding-top:5%;display:flex;overflow-x:hidden}.carousel-container{text-align:center;background:var(--surface);border:1px solid var(--border);box-sizing:border-box;border-radius:16px;width:70%;height:40vh;min-height:280px;max-height:500px;position:relative;overflow:hidden;box-shadow:0 10px 30px #0f274714}.carousel-track{width:100%;min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.carousel-content{text-align:center;color:#fff;z-index:2;visibility:hidden;opacity:0;box-sizing:border-box;width:80%;max-width:800px;transition:opacity .6s ease-in-out,visibility .6s ease-in-out;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.carousel-content.active{opacity:1;visibility:visible}.carousel-paragraph{color:#fff;margin:0 0 10px;font-size:clamp(.9rem,1.5vw,1.2rem);line-height:1.5}.carousel-header{color:#fff;margin:0;font-size:clamp(1.4rem,3vw,2rem);line-height:1.2}.carousel-image{object-fit:cover;opacity:0;visibility:hidden;background-color:navy;border-radius:16px;width:100%;height:100%;transition:opacity .6s ease-in-out,visibility .6s ease-in-out;position:absolute;inset:0}.carousel-image.active{opacity:.6;visibility:visible}.carousel-container:after{content:"";background:color-mix(in srgb, var(--navy) 55%, transparent);pointer-events:none;z-index:1;position:absolute;inset:0}.carousel-btn{width:40px;height:40px;color:var(--secondary);cursor:pointer;z-index:10;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel-btn.prev{left:15px}.carousel-btn.next{right:15px}.features-section{box-sizing:border-box;width:100%;max-width:100%;padding:30px 24px}.features-container{box-sizing:border-box;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;width:100%;max-width:1296px;margin:0 auto;display:grid}.feature-card{box-sizing:border-box;background:var(--surface);border:3px solid var(--border);text-align:center;border-radius:20px;flex-direction:column;justify-content:flex-start;align-items:center;width:100%;min-width:0;min-height:248px;padding:32px 28px 28px;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex}.feature-card:hover{border-color:var(--amber);transform:translateY(-3px);box-shadow:0 8px 24px #0000000f}.feature-icon{background:var(--navy);width:80px;height:80px;color:var(--amber);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:22px;display:flex}.feature-card h3{color:var(--text-h);margin:0 0 14px;font-size:17px;font-weight:700;line-height:1.3;transition:color .2s}.feature-card p{max-width:230px;color:var(--text-h);margin:0;font-size:14px;font-weight:400;line-height:1.8;transition:color .2s}.feature-card:hover h3,.feature-card:hover p{color:var(--amber)}@media (width<=1000px){.carousel-container{width:85%;height:38vh;min-height:280px}.carousel-content{width:75%}.features-container{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.home-page{width:100%;max-width:100%;padding-top:20%;overflow-x:hidden}.carousel-container{border-radius:14px;width:calc(100% - 32px);height:38vh;min-height:240px;max-height:380px}.carousel-image{border-radius:14px}.carousel-content{width:calc(100% - 80px)}.carousel-paragraph{margin-bottom:8px}.carousel-btn{width:34px;height:34px}.carousel-btn.prev{left:8px}.carousel-btn.next{right:8px}.features-section{box-sizing:border-box;width:100%;max-width:100vw;padding:24px 16px}.features-container{grid-template-columns:minmax(0,1fr);gap:16px;width:100%;max-width:100%}.feature-card{width:100%;min-width:0;min-height:220px;padding:28px 20px}}@media (width<=400px){.carousel-container{border-radius:12px;width:calc(100% - 20px);height:32vh;min-height:210px}.carousel-image{border-radius:12px}.carousel-content{width:calc(100% - 70px)}.carousel-btn{width:30px;height:30px}.carousel-btn.prev{left:6px}.carousel-btn.next{right:6px}}.home-filter-skeleton{box-sizing:border-box;background:var(--surface);border:1px solid var(--border);border-radius:16px;align-items:center;gap:16px;width:70%;max-width:1296px;margin-top:30px;padding:24px;display:flex}.filter-skeleton-line{flex:1;height:42px}.filter-skeleton-button{width:100px;height:42px}@media (width<=1000px){.home-filter-skeleton{width:85%}}@media (width<=600px){.home-filter-skeleton{flex-direction:column;align-items:stretch;width:calc(100% - 32px);padding:16px}.filter-skeleton-button{width:100%}}.skeleton{background:var(--border);border-radius:8px;flex-shrink:0;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(100deg,#0000 20%,#ffffffa6 50%,#0000 80%);animation:1.5s ease-in-out infinite skeleton-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes skeleton-shimmer{to{transform:translate(100%)}}.carousel-skeleton{z-index:5;box-sizing:border-box;background:var(--navy);pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px 80px;display:flex;position:absolute;inset:0}.carousel-skeleton-line{background:#ffffff2e;width:55%;max-width:420px;height:14px}.carousel-skeleton-title{background:#ffffff38;border-radius:8px;width:70%;max-width:560px;height:34px}.carousel-skeleton-line.short{width:35%;max-width:260px}.feature-skeleton-card{pointer-events:none}.skeleton-icon{border-radius:50%;width:80px;height:80px;margin-bottom:22px}.skeleton-title{width:65%;max-width:200px;height:18px;margin-bottom:18px}.skeleton-description{width:85%;max-width:230px;height:12px;margin-bottom:12px}.skeleton-description.short{width:55%}.carousel-content{overflow-wrap:anywhere;z-index:2;width:calc(100% - 140px);max-width:800px}.carousel-btn{z-index:10}@media (width<=600px){.carousel-content{width:calc(100% - 92px)}.carousel-skeleton{gap:12px;padding:24px 46px}.carousel-skeleton-line{width:85%}.carousel-skeleton-title{width:95%;height:26px}.carousel-skeleton-line.short{width:60%}}@media (width<=400px){.carousel-content{width:calc(100% - 82px)}.carousel-skeleton{gap:10px;padding-inline:40px}.carousel-skeleton-title{height:22px}}@media (prefers-reduced-motion:reduce){.skeleton:after{animation:none;transform:none}}
