/* ===== NOMAD Holidays — «Вебинары» ===== */

/* filter bar */
.web-filter{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-sm);padding:22px;margin-bottom:28px}
.web-filter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;align-items:end}
@media(max-width:900px){.web-filter-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.web-filter-grid{grid-template-columns:1fr}}
.web-filter .field{margin:0}
.web-filter-actions{display:flex;gap:10px;margin-top:16px;justify-content:flex-end}
@media(max-width:560px){.web-filter-actions{flex-direction:column}.web-filter-actions .btn{width:100%}}

/* webinar grid */
.web-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:1000px){.web-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.web-grid{grid-template-columns:1fr}}
.web{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s}
.web:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}
.web-cover{height:170px;position:relative;overflow:hidden;background:var(--bg-1)}
.web-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.web:hover .web-cover img{transform:scale(1.06)}
.web-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(31,46,114,.5))}
.web-cat{position:absolute;top:12px;left:12px;background:rgba(255,255,255,.95);color:var(--navy);font-size:11px;font-weight:700;padding:5px 11px;border-radius:999px;z-index:2}
.web-badge{position:absolute;top:12px;right:12px;font-size:10.5px;font-weight:700;padding:5px 10px;border-radius:999px;z-index:2;color:#fff}
.web-badge.up{background:#1f8a4c}.web-badge.rec{background:#7a5cc4}.web-badge.past{background:#808284}
.web-play{position:absolute;left:50%;top:calc(50% - 12px);transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--navy);display:flex;align-items:center;justify-content:center;z-index:2;transition:.2s}
.web:hover .web-play{transform:translate(-50%,-50%) scale(1.1);background:#fff}
.web-play svg{width:22px;height:22px;margin-left:2px}
.web-body{padding:20px;display:flex;flex-direction:column;flex:1}
.web-body h3{font-size:16.5px;margin-bottom:10px;text-wrap:pretty}
.web-meta{display:flex;flex-direction:column;gap:7px;margin-bottom:14px}
.web-meta .m{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--gray-dark)}
.web-meta .m svg{width:15px;height:15px;color:var(--blue);flex:0 0 auto}
.web-body p{font-size:13px;color:var(--gray-dark);line-height:1.55;margin-bottom:16px;flex:1}
.web-actions{display:flex;gap:8px}
.web-actions .btn{flex:1;padding:9px 12px;font-size:13px}
.web-actions .btn svg{width:15px;height:15px}
.web-empty{display:none;text-align:center;padding:56px 20px;color:var(--gray-mid);grid-column:1/-1}
.web-empty.show{display:block}
.web-empty .we-ic{width:66px;height:66px;border-radius:50%;background:var(--bg-1);color:var(--gray-light);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.web-empty .we-ic svg{width:32px;height:32px}
.web-empty h3{font-size:18px;color:var(--navy)}

/* materials */
.mat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:900px){.mat-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.mat-grid{grid-template-columns:1fr}}
.mat{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow-sm);transition:transform .3s var(--ease),box-shadow .3s}
.mat:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.mat .mat-ic{width:48px;height:48px;border-radius:13px;background:linear-gradient(135deg,#eaf6fd,#e7ecfa);color:var(--navy);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.mat .mat-ic svg{width:23px;height:23px}
.mat .mat-body{flex:1;min-width:0}
.mat .mat-body b{font-size:14.5px;color:var(--navy);display:block}
.mat .mat-body span{font-size:12px;color:var(--gray-mid)}
.mat .mat-go{width:36px;height:36px;border-radius:10px;background:var(--bg-1);color:var(--navy);display:flex;align-items:center;justify-content:center;flex:0 0 auto;transition:.2s}
.mat:hover .mat-go{background:var(--navy);color:#fff}.mat .mat-go svg{width:17px;height:17px}

/* ===== NOMAD Holidays — «О нас в СМИ» ===== */

/* featured media */
.media-feat{display:grid;grid-template-columns:1.15fr .85fr;gap:0;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow-md)}
.media-feat-img{position:relative;min-height:320px;overflow:hidden;background:var(--bg-1)}
.media-feat-img img{width:100%;height:100%;object-fit:cover}
.media-feat-img .mf-cat{position:absolute;top:16px;left:16px;background:rgba(255,255,255,.95);color:var(--navy);font-size:12px;font-weight:700;padding:6px 13px;border-radius:999px}
.media-feat-body{padding:clamp(26px,3.5vw,42px);display:flex;flex-direction:column;justify-content:center}
.media-feat-body .mf-meta{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--gray-mid);margin-bottom:14px;flex-wrap:wrap}
.media-feat-body .mf-meta .src{color:var(--blue);font-weight:600}
.media-feat-body h2{font-size:clamp(22px,2.6vw,32px);margin-bottom:14px;text-wrap:balance}
.media-feat-body p{font-size:15px;color:var(--gray-dark);line-height:1.65;margin-bottom:22px}
.media-feat-body .mf-actions{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:820px){.media-feat{grid-template-columns:1fr}.media-feat-img{min-height:220px}}

/* media grid */
.media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:1000px){.media-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.media-grid{grid-template-columns:1fr}}
.mcard{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s}
.mcard:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}
.mcard-img{height:170px;position:relative;overflow:hidden;background:var(--bg-1)}
.mcard-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.mcard:hover .mcard-img img{transform:scale(1.06)}
.mcard-cat{position:absolute;top:12px;left:12px;background:rgba(255,255,255,.95);color:var(--navy);font-size:11px;font-weight:700;padding:5px 11px;border-radius:999px;z-index:2}
.mcard-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--navy);display:flex;align-items:center;justify-content:center;z-index:2;transition:.2s}
.mcard:hover .mcard-play{transform:translate(-50%,-50%) scale(1.1);background:#fff}
.mcard-play svg{width:20px;height:20px;margin-left:2px}
.mcard-body{padding:20px;display:flex;flex-direction:column;flex:1}
.mcard-meta{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--gray-mid);margin-bottom:10px;flex-wrap:wrap}
.mcard-meta .src{color:var(--blue);font-weight:600}
.mcard-body h3{font-size:16px;margin-bottom:8px;text-wrap:pretty}
.mcard-body p{font-size:13px;color:var(--gray-dark);line-height:1.55;margin-bottom:16px;flex:1}
.mcard-actions{display:flex;gap:8px}
.mcard-actions .btn{flex:1;padding:9px 12px;font-size:13px}
.mcard-actions .btn svg{width:15px;height:15px}
.media-empty{display:none;text-align:center;padding:56px 20px;color:var(--gray-mid);grid-column:1/-1}
.media-empty.show{display:block}
.media-empty .me-ic{width:66px;height:66px;border-radius:50%;background:var(--bg-1);color:var(--gray-light);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.media-empty .me-ic svg{width:32px;height:32px}
.media-empty h3{font-size:18px;color:var(--navy)}

/* press releases */
.press-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
@media(max-width:700px){.press-grid{grid-template-columns:1fr}}
.press{display:flex;gap:16px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:var(--shadow-sm);transition:transform .3s var(--ease),box-shadow .3s}
.press:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.press .p-ic{width:50px;height:50px;border-radius:13px;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.press .p-ic svg{width:24px;height:24px}
.press .p-body{flex:1;min-width:0}
.press .p-date{font-size:12px;color:var(--gray-mid);margin-bottom:5px}
.press .p-body h3{font-size:15.5px;margin-bottom:7px}
.press .p-body p{font-size:13px;color:var(--gray-dark);line-height:1.5;margin-bottom:14px}
.press .p-actions{display:flex;gap:8px}
.press .p-actions .btn{padding:8px 14px;font-size:12.5px}
.press .p-actions .btn svg{width:14px;height:14px}

/* media contacts (press) */
.press-contact{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;background:linear-gradient(150deg,var(--navy),var(--blue));border-radius:28px;padding:clamp(28px,4vw,52px);color:#fff}
.press-contact h2{color:#fff;font-size:clamp(24px,2.8vw,34px);margin:14px 0 12px}
.press-contact>div>p{font-size:15px;color:rgba(255,255,255,.9);line-height:1.65;margin-bottom:24px}
.press-contact .eyebrow{color:#7fd4f5}.press-contact .eyebrow::before{background:#7fd4f5}
.pc-rows{display:flex;flex-direction:column;gap:14px}
.pc-row{display:flex;align-items:center;gap:13px}
.pc-row .pci{width:46px;height:46px;border-radius:12px;background:rgba(255,255,255,.14);color:#aee3fa;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.pc-row .pci svg{width:21px;height:21px}
.pc-row .t{font-size:12px;color:rgba(255,255,255,.7)}
.pc-row b{font-size:15px;color:#fff;display:block}
.press-contact .pc-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.press-contact .pc-actions .btn.btn-accent{background:#fff;color:var(--navy)}
.press-contact .pc-actions .btn.btn-accent:hover{background:#eaf6fd}
.press-contact .pc-actions .btn.btn-ghost{border-color:rgba(255,255,255,.5);color:#fff}
.press-contact .pc-actions .btn.btn-ghost:hover{background:rgba(255,255,255,.12)}
@media(max-width:820px){.press-contact{grid-template-columns:1fr;gap:26px}}
