/*
Theme Name: Planeventor
Theme URI: https://planeventor.com/
Author: Planeventor Travel Technologies Inc.
Author URI: https://planeventor.com/
Description: Premium full-width travel theme for Planeventor — Pakistan sacred pilgrimages (10-Day Sikh Yatra), Karakoram K2 treks, valley escapes and Aligner Zone dental travel. Ships with a hash-routed front page (Home, Tours, Yatra, Dental, Checkout, Voucher), Tours + Bookings post types, AJAX checkout that stores bookings and emails travellers, CAD/USD switching, EN/FR/AR with RTL, one-click demo import and deep Elementor integration: theme locations, Canvas + Full Width templates and six native widgets.
Version: 2.3.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: planeventor
Domain Path: /languages
Tags: travel, tourism, one-page, full-width-template, elementor, custom-menu, custom-logo, theme-options, featured-images, translation-ready, wide-blocks, rtl-language-support
*/

/* 1. RESET + FULL-WIDTH GUARANTEE */
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0!important;padding:0!important;width:100%!important;max-width:100%!important;overflow-x:hidden!important;background-color:#f6f8fd;-webkit-text-size-adjust:100%}
body{font-family:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:#0f172a;line-height:1.55}
body.plv-rtl{font-family:'Noto Kufi Arabic','Plus Jakarta Sans',sans-serif}
img{max-width:100%;height:auto;border:0}
a{color:inherit}
button{font-family:inherit}
h1,h2,h3,h4,h5{line-height:1.18}
#planeventor-master-root{position:relative;width:100vw;max-width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;overflow-x:hidden;z-index:10}
body.plv-fullwidth-compat .entry-content,
body.plv-fullwidth-compat .site-content,
body.plv-fullwidth-compat .content-area,
body.plv-fullwidth-compat .wp-block-post-content,
body.plv-fullwidth-compat main{padding:0!important;margin:0!important;max-width:100%!important;width:100%!important}
body.plv-fullwidth-compat .site-header:not(.planeventor-header),
body.plv-fullwidth-compat #masthead,
body.plv-fullwidth-compat .site-footer:not(.planeventor-footer),
body.plv-fullwidth-compat #colophon{display:none!important}
.admin-bar .planeventor-header{top:32px}
@media screen and (max-width:782px){.admin-bar .planeventor-header{top:46px}}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}
.skip-link{left:-9999px;top:0;position:absolute;z-index:100000;background:#0a2540;color:#fff;padding:12px 18px;font-weight:700;border-radius:0 0 12px 0}
.skip-link:focus{left:0}
:focus-visible{outline:3px solid rgba(56,189,248,.75);outline-offset:2px}

/* 2. AMBIENT LAYERS */
body.plv-app{background-color:#f6f8fd;background-image:radial-gradient(1100px 520px at 88% -8%,rgba(56,189,248,.16),transparent 62%),radial-gradient(820px 460px at 4% 12%,rgba(245,158,11,.10),transparent 60%),linear-gradient(180deg,#fbfcff 0%,#f2f6fd 45%,#f6f8fd 100%);background-attachment:fixed}
.plv-hero{position:relative;isolation:isolate;overflow:hidden;background-color:#08203a;background-size:cover;background-position:center;background-image:linear-gradient(180deg,rgba(6,22,40,.90) 0%,rgba(10,37,64,.82) 42%,rgba(8,18,32,.94) 100%)}
.plv-hero::after{content:"";position:absolute;inset:-20% -10% auto -10%;height:150%;z-index:0;pointer-events:none;background-image:repeating-radial-gradient(circle at 22% 78%,rgba(255,255,255,.05) 0 1px,transparent 1px 62px),repeating-radial-gradient(circle at 78% 18%,rgba(255,255,255,.04) 0 1px,transparent 1px 88px);animation:plv-drift 46s linear infinite alternate}
.plv-hero>*{position:relative;z-index:2}
#plv-ambient{position:absolute;inset:0;z-index:1;width:100%;height:100%;opacity:.9}
.plv-hero-photo{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;opacity:.42;animation:plv-kb 26s ease-in-out infinite alternate}
@keyframes plv-kb{from{transform:scale(1.02)}to{transform:scale(1.13) translate3d(-1.5%,-1.5%,0)}}
@keyframes plv-drift{from{transform:translate3d(0,0,0)}to{transform:translate3d(-2.5%,1.8%,0)}}
.plv-footer-glow{position:absolute;inset:auto -10% -60% -10%;height:280px;background:radial-gradient(600px 200px at 30% 0%,rgba(56,189,248,.18),transparent 70%);pointer-events:none}

/* 3. HEADER + NAVIGATION */
#plv-header{transition:background-color .3s,box-shadow .3s}
#plv-header.is-stuck{background-color:rgba(8,26,46,.95)!important;backdrop-filter:blur(12px);box-shadow:0 14px 40px -18px rgba(2,20,40,.85)}
.plv-brand{transition:transform .3s}
#plv-header.is-stuck .plv-brand{transform:scale(.96)}
.plv-menu,.plv-menu ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:4px}
.plv-menu li{position:relative}
.plv-menu li a{display:block;padding:9px 13px;border-radius:10px;font-size:13px;font-weight:600;text-decoration:none;color:#e2e8f0;transition:background .2s,color .2s}
.plv-menu li a:hover,.plv-menu li.current-menu-item a,.plv-menu li.current_page_item a{background:rgba(255,255,255,.14);color:#fff}
.plv-menu .sub-menu{position:absolute;top:100%;left:0;display:none;min-width:210px;background:#0a2540;border:1px solid rgba(255,255,255,.1);padding:8px;border-radius:12px;box-shadow:0 24px 44px -22px rgba(0,0,0,.8);flex-direction:column;align-items:stretch;z-index:60}
.plv-menu li:hover>.sub-menu,.plv-menu li:focus-within>.sub-menu{display:flex}
.plv-mobile-nav{max-height:0;overflow:hidden;transition:max-height .38s cubic-bezier(.2,.7,.2,1)}
.plv-mobile-nav.is-open{max-height:78vh;overflow-y:auto}

/* 4. MOTION + MICRO-INTERACTIONS */
.plv-reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.plv-reveal.is-in{opacity:1;transform:none}
.plv-reveal[data-delay="1"]{transition-delay:.09s}.plv-reveal[data-delay="2"]{transition-delay:.18s}.plv-reveal[data-delay="3"]{transition-delay:.27s}
.plv-lift{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .35s}
.plv-lift:hover{transform:translateY(-6px);box-shadow:0 28px 54px -28px rgba(10,37,64,.5);border-color:rgba(56,189,248,.55)!important}
.plv-media{overflow:hidden;position:relative}
.plv-media img{transition:transform .85s cubic-bezier(.2,.7,.2,1)}
.plv-lift:hover .plv-media img{transform:scale(1.07)}
.plv-btn{position:relative;overflow:hidden}
.plv-btn::after{content:"";position:absolute;inset:0;transform:translateX(-120%);background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.34) 50%,transparent 80%);transition:transform .75s;pointer-events:none}
.plv-btn:hover::after{transform:translateX(120%)}
.plv-day{transition:transform .3s,box-shadow .3s,background-color .3s}
.plv-day:hover{transform:translateX(6px);background-color:#fff;box-shadow:0 18px 34px -26px rgba(10,37,64,.55)}
.plv-perk{transition:border-color .25s,box-shadow .25s,background-color .25s,transform .25s}
.plv-perk:hover{transform:translateY(-2px)}
.plv-perk.is-on{border-color:rgba(56,189,248,.7)!important;box-shadow:0 0 0 3px rgba(56,189,248,.12);background:#f7fcff}
.payment-tab-btn.is-active{border-color:#0284c7!important;background:#f0f9ff!important;color:#0c4a6e!important;box-shadow:0 0 0 3px rgba(2,132,199,.12)}
.plv-marquee{display:flex;gap:42px;width:max-content;animation:plv-marquee 42s linear infinite}
.plv-marquee:hover{animation-play-state:paused}
@keyframes plv-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.plv-ticket{position:relative}
.plv-ticket::before,.plv-ticket::after{content:"";position:absolute;width:26px;height:26px;border-radius:999px;background:#f6f8fd;top:56%}
.plv-ticket::before{left:-13px}.plv-ticket::after{right:-13px}
.plv-social{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:#cbd5e1;text-decoration:none;transition:transform .22s,background .22s,color .22s}
.plv-social:hover{transform:translateY(-3px);background:rgba(56,189,248,.22);color:#fff}
.plv-fab{position:fixed;right:20px;bottom:20px;z-index:90;width:54px;height:54px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(140deg,#22c55e,#128c3c);color:#fff;font-size:24px;text-decoration:none;box-shadow:0 18px 34px -14px rgba(18,140,60,.8);transition:transform .25s}
.plv-fab:hover{transform:translateY(-4px) scale(1.05)}
.plv-fab::after{content:"";position:absolute;inset:0;border-radius:999px;border:2px solid rgba(34,197,94,.6);animation:plv-ping 2.6s ease-out infinite}
@keyframes plv-ping{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.7);opacity:0}}
.plv-toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,170%);z-index:120;background:#0a2540;color:#fff;padding:13px 20px;border-radius:14px;font-size:13px;font-weight:700;max-width:min(92vw,540px);text-align:center;border:1px solid rgba(56,189,248,.35);box-shadow:0 24px 50px -20px rgba(2,20,40,.85);transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.plv-toast.is-show{transform:translate(-50%,0)}

/* 5. WP CONTENT / BLOG TEMPLATES */
.plv-prose{max-width:820px;margin:0 auto}
.plv-prose h1,.plv-prose h2,.plv-prose h3,.plv-prose h4{font-weight:800;letter-spacing:-.02em;color:#0a2540;margin:1.5em 0 .5em}
.plv-prose h2{font-size:1.55rem}.plv-prose h3{font-size:1.2rem}
.plv-prose p,.plv-prose ul,.plv-prose ol{margin:0 0 1.1em;color:#334155}
.plv-prose ul,.plv-prose ol{padding-left:1.3em}
.plv-prose a{color:#0284c7;text-decoration:underline}
.plv-prose blockquote{border-left:4px solid #38bdf8;margin:1.4em 0;padding:.4em 0 .4em 1.2em;color:#475569;font-style:italic}
.plv-prose img{border-radius:16px}
.plv-prose table{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:.95rem}
.plv-prose th,.plv-prose td{border:1px solid #e2e8f0;padding:10px 12px;text-align:left}
.plv-prose th{background:#f1f5f9;font-weight:700}
.plv-card-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.plv-post-card{background:#fff;border:1px solid #eef1f7;border-radius:18px;overflow:hidden;box-shadow:0 10px 30px -22px rgba(10,37,64,.5);transition:transform .3s,box-shadow .3s}
.plv-post-card:hover{transform:translateY(-5px);box-shadow:0 28px 54px -28px rgba(10,37,64,.55)}
.plv-post-card img{height:190px;width:100%;object-fit:cover}
.plv-chip{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:5px 11px;border-radius:999px;background:#eff6ff;color:#0369a1}
.plv-widget{margin-bottom:18px}
.plv-widget ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.plv-widget a{color:#94a3b8;text-decoration:none;transition:color .2s,padding-left .2s}
.plv-widget a:hover{color:#fff;padding-left:4px}
.page-numbers{list-style:none;display:flex;gap:8px;padding:0;margin:0;flex-wrap:wrap}
.page-numbers li a,.page-numbers li span{display:grid;place-items:center;min-width:40px;height:40px;padding:0 12px;border-radius:12px;background:#fff;border:1px solid #e2e8f0;font-weight:700;font-size:13px;color:#334155;text-decoration:none;transition:.2s}
.page-numbers li a:hover{background:#0a2540;color:#fff;border-color:#0a2540}
.page-numbers li span.current{background:#0284c7;border-color:#0284c7;color:#fff}
.alignwide{max-width:1200px;margin-inline:auto}
.alignfull{width:100vw;margin-left:calc(50% - 50vw)}
.wp-block-button__link{border-radius:12px;font-weight:700}

/* 6. RTL */
body.plv-rtl .plv-day:hover{transform:translateX(-6px)}
body.plv-rtl .plv-fab{right:auto;left:20px}
body.plv-rtl .plv-menu .sub-menu{left:auto;right:0}
body.plv-rtl .plv-prose ul,body.plv-rtl .plv-prose ol{padding-left:0;padding-right:1.3em}
body.plv-rtl .plv-prose blockquote{border-left:0;border-right:4px solid #38bdf8;padding:.4em 1.2em .4em 0}

/* 7. PRINT (pilgrim voucher) */
@media print{
  .planeventor-header,.planeventor-footer,.plv-fab,.plv-no-print,#wpadminbar{display:none!important}
  body,html{background:#fff!important;overflow:visible!important}
  #planeventor-master-root{width:100%!important;margin:0!important;left:auto!important}
  .page-view{display:block!important}
  #view-voucher{padding:0!important}
  #view-voucher>div{box-shadow:none!important;border:1px solid #cbd5e1!important}
}

/* ==========================================================================
   9. STRUCTURAL SAFETY LAYER
   The layout must survive even when the Tailwind CDN is stripped, deferred or
   blocked by a host-level optimiser (LiteSpeed Cache, Hostinger optimizer,
   security plugins). These rules own the critical structure: which view is on
   screen, which navigation is visible, and how the main grids collapse.
   They intentionally mirror the utility classes so both paths look identical.
   ========================================================================== */

/* One view at a time — never all six stacked */
.page-view{display:none}
.page-view.is-active{display:block!important}

/* Header bar */
.plv-header-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:80px;width:100%;max-width:1280px;margin-inline:auto;padding-inline:20px}
.plv-brand{display:flex;align-items:center;gap:16px;min-width:0}

/* Desktop nav hidden below 1024px, mobile toggle hidden above it */
.plv-nav-desktop{display:none;align-items:center;gap:4px}
.plv-mobile-toggle{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#1e293b;border:1px solid #334155;color:#fff;cursor:pointer;flex-shrink:0}
.plv-currency{display:none;background:#1e293b;border:1px solid #334155;border-radius:10px;padding:2px;align-items:center}
.plv-mobile-nav{display:none}
.plv-mobile-nav.is-open{display:block;max-height:78vh;overflow-y:auto}
@media (min-width:640px){.plv-currency{display:flex}}
@media (min-width:1024px){
  .plv-nav-desktop{display:flex}
  .plv-mobile-toggle{display:none}
  .plv-mobile-nav{display:none!important}
}

/* Containers, sections, grids */
.plv-container{width:100%;max-width:1280px;margin-inline:auto;padding-inline:20px}
.plv-container-narrow{width:100%;max-width:896px;margin-inline:auto;padding-inline:20px}
.plv-section{padding-block:44px}
.plv-grid{display:grid;gap:24px;grid-template-columns:1fr}
.plv-split{display:grid;gap:28px;grid-template-columns:1fr;align-items:start}
@media (min-width:768px){.plv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){
  .plv-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .plv-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .plv-split{grid-template-columns:minmax(0,2fr) minmax(320px,1fr)}
}

/* ==========================================================================
   10. FALLBACK UTILITIES — only active when Tailwind never applied.
   The watchdog in footer.php adds html.plv-no-tailwind, which switches this
   compact subset on so the page stays organised instead of collapsing.
   ========================================================================== */
html.plv-no-tailwind .max-w-7xl{max-width:1280px}
html.plv-no-tailwind .max-w-6xl{max-width:1152px}
html.plv-no-tailwind .max-w-5xl{max-width:1024px}
html.plv-no-tailwind .max-w-4xl{max-width:896px}
html.plv-no-tailwind .max-w-3xl{max-width:768px}
html.plv-no-tailwind .max-w-2xl{max-width:672px}
html.plv-no-tailwind .max-w-xl{max-width:576px}
html.plv-no-tailwind .mx-auto{margin-left:auto;margin-right:auto}
html.plv-no-tailwind .w-full{width:100%}
html.plv-no-tailwind .min-h-screen{min-height:100vh}
html.plv-no-tailwind .hidden{display:none}
html.plv-no-tailwind .block{display:block}
html.plv-no-tailwind .flex{display:flex}
html.plv-no-tailwind .inline-flex{display:inline-flex}
html.plv-no-tailwind .grid{display:grid}
html.plv-no-tailwind .relative{position:relative}
html.plv-no-tailwind .absolute{position:absolute}
html.plv-no-tailwind .sticky{position:sticky}
html.plv-no-tailwind .top-0{top:0}
html.plv-no-tailwind .z-50{z-index:50}
html.plv-no-tailwind .items-center{align-items:center}
html.plv-no-tailwind .items-start{align-items:flex-start}
html.plv-no-tailwind .justify-between{justify-content:space-between}
html.plv-no-tailwind .justify-center{justify-content:center}
html.plv-no-tailwind .flex-col{flex-direction:column}
html.plv-no-tailwind .flex-wrap{flex-wrap:wrap}
html.plv-no-tailwind .flex-1{flex:1 1 0%}
html.plv-no-tailwind .gap-2{gap:8px}html.plv-no-tailwind .gap-3{gap:12px}
html.plv-no-tailwind .gap-4{gap:16px}html.plv-no-tailwind .gap-5{gap:20px}
html.plv-no-tailwind .gap-6{gap:24px}html.plv-no-tailwind .gap-7{gap:28px}
html.plv-no-tailwind .gap-8{gap:32px}
html.plv-no-tailwind .grid-cols-1{grid-template-columns:1fr}
html.plv-no-tailwind .px-3{padding-inline:12px}html.plv-no-tailwind .px-4{padding-inline:16px}
html.plv-no-tailwind .px-5{padding-inline:20px}html.plv-no-tailwind .px-6{padding-inline:24px}
html.plv-no-tailwind .py-2{padding-block:8px}html.plv-no-tailwind .py-3{padding-block:12px}
html.plv-no-tailwind .py-4{padding-block:16px}html.plv-no-tailwind .py-6{padding-block:24px}
html.plv-no-tailwind .py-10{padding-block:40px}html.plv-no-tailwind .py-12{padding-block:48px}
html.plv-no-tailwind .p-4{padding:16px}html.plv-no-tailwind .p-5{padding:20px}
html.plv-no-tailwind .p-6{padding:24px}html.plv-no-tailwind .p-8{padding:32px}
html.plv-no-tailwind .mt-2{margin-top:8px}html.plv-no-tailwind .mt-4{margin-top:16px}
html.plv-no-tailwind .mt-6{margin-top:24px}html.plv-no-tailwind .mt-8{margin-top:32px}
html.plv-no-tailwind .mt-10{margin-top:40px}html.plv-no-tailwind .mb-2{margin-bottom:8px}
html.plv-no-tailwind .mb-4{margin-bottom:16px}html.plv-no-tailwind .mb-6{margin-bottom:24px}
html.plv-no-tailwind .mb-8{margin-bottom:32px}html.plv-no-tailwind .mb-10{margin-bottom:40px}
html.plv-no-tailwind .space-y-3>*+*{margin-top:12px}
html.plv-no-tailwind .space-y-4>*+*{margin-top:16px}
html.plv-no-tailwind .text-center{text-align:center}
html.plv-no-tailwind .uppercase{text-transform:uppercase}
html.plv-no-tailwind .text-xs{font-size:12px}html.plv-no-tailwind .text-sm{font-size:14px}
html.plv-no-tailwind .text-base{font-size:16px}html.plv-no-tailwind .text-lg{font-size:18px}
html.plv-no-tailwind .text-xl{font-size:20px}html.plv-no-tailwind .text-2xl{font-size:24px}
html.plv-no-tailwind .text-3xl{font-size:30px}html.plv-no-tailwind .text-4xl{font-size:36px}
html.plv-no-tailwind .font-semibold{font-weight:600}html.plv-no-tailwind .font-bold{font-weight:700}
html.plv-no-tailwind .font-extrabold{font-weight:800}html.plv-no-tailwind .font-black{font-weight:900}
html.plv-no-tailwind .leading-relaxed{line-height:1.65}
html.plv-no-tailwind .tracking-tight{letter-spacing:-.02em}
html.plv-no-tailwind .text-white{color:#fff}
html.plv-no-tailwind .text-slate-300{color:#cbd5e1}html.plv-no-tailwind .text-slate-400{color:#94a3b8}
html.plv-no-tailwind .text-slate-500{color:#64748b}html.plv-no-tailwind .text-slate-600{color:#475569}
html.plv-no-tailwind .text-slate-700{color:#334155}html.plv-no-tailwind .text-slate-900{color:#0f172a}
html.plv-no-tailwind .bg-white{background:#fff}html.plv-no-tailwind .bg-slate-50{background:#f8fafc}
html.plv-no-tailwind .bg-\[\#0a2540\]{background:#0a2540}
html.plv-no-tailwind .border{border:1px solid #e2e8f0}
html.plv-no-tailwind .border-slate-100{border-color:#f1f5f9}
html.plv-no-tailwind .border-slate-200{border-color:#e2e8f0}
html.plv-no-tailwind .border-slate-300{border-color:#cbd5e1}
html.plv-no-tailwind .rounded-lg{border-radius:10px}html.plv-no-tailwind .rounded-xl{border-radius:14px}
html.plv-no-tailwind .rounded-2xl{border-radius:18px}html.plv-no-tailwind .rounded-3xl{border-radius:24px}
html.plv-no-tailwind .rounded-full{border-radius:999px}
html.plv-no-tailwind .shadow-md{box-shadow:0 10px 24px -14px rgba(10,37,64,.45)}
html.plv-no-tailwind .shadow-xl{box-shadow:0 22px 46px -26px rgba(10,37,64,.5)}
html.plv-no-tailwind .shadow-2xl{box-shadow:0 30px 60px -30px rgba(10,37,64,.55)}
html.plv-no-tailwind .overflow-hidden{overflow:hidden}
html.plv-no-tailwind .object-cover{object-fit:cover}
html.plv-no-tailwind .h-48{height:192px}html.plv-no-tailwind .h-52{height:208px}
html.plv-no-tailwind .list-none{list-style:none}
html.plv-no-tailwind button,html.plv-no-tailwind .plv-btn{cursor:pointer;border:0;font:inherit}
html.plv-no-tailwind .grid-cols-1.md\:grid-cols-3{grid-template-columns:1fr}
@media (min-width:768px){
  html.plv-no-tailwind .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  html.plv-no-tailwind .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  html.plv-no-tailwind .md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (min-width:1024px){
  html.plv-no-tailwind .lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  html.plv-no-tailwind .lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  html.plv-no-tailwind .lg\:flex{display:flex}
  html.plv-no-tailwind .lg\:hidden{display:none}
  html.plv-no-tailwind .lg\:sticky{position:sticky}
  html.plv-no-tailwind .lg\:top-28{top:112px}
  html.plv-no-tailwind .lg\:col-span-2{grid-column:span 2 / span 2}
}
@media (min-width:640px){
  html.plv-no-tailwind .sm\:flex{display:flex}
  html.plv-no-tailwind .sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  html.plv-no-tailwind .sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  html.plv-no-tailwind .sm\:hidden{display:none}
}

/* 8. REDUCED MOTION */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .plv-reveal{opacity:1!important;transform:none!important}
}
