/* ============================================================
   VWPS — inner pages (Success Stories, Blog, Contact Us)
   Additive layer on top of vwps.css: it reuses the same tokens
   (--ink / --teal / --rose / --paper / --line) and the same
   reveal-on-scroll engine, so nothing here re-styles the home page.
   ============================================================ */

/* ---------- navbar menu (the design's nav.menu styles, wired up) ---------- */
@media (min-width:901px){.nav-inner{gap:1rem}}
nav.menu{margin-inline-start:auto}
nav.menu a{display:block}
.nav-actions{margin-inline-start:0}
@media (max-width:1040px){
  nav.menu a{padding:.5rem .5rem;font-size:.82rem}
}
@media (max-width:900px){
  .hamburger{display:block;order:3}
  nav.menu{position:fixed;inset:var(--nav-h) 0 auto;margin:0;background:var(--white);border-bottom:1px solid var(--line);box-shadow:var(--shadow-md);
    clip-path:inset(0 0 100% 0);opacity:0;pointer-events:none;transition:clip-path .4s cubic-bezier(.22,.9,.3,1),opacity .3s}
  nav.menu.open{clip-path:inset(0 0 0 0);opacity:1;pointer-events:auto}
  nav.menu ul{flex-direction:column;gap:0;width:min(1180px,92%);margin-inline:auto;padding:.6rem 0 1rem}
  nav.menu a{padding:.85rem .6rem;font-size:.95rem;border-bottom:1px solid var(--line);border-radius:0}
  nav.menu ul li:last-child a{border-bottom:0}
  nav.menu a::after{display:none}
  /* the hamburger drawer already carries full navigation, so the row that's
     always on screen (logo, lang, theme, call, burger) is kept as compact as
     possible — every one of these five items must fit on the narrowest
     supported phone (~320px) without wrapping or overflowing */
  .nav-actions{gap:.4rem}
  .brand .brand-text{display:none}
  .nav-cta{width:42px;height:42px;padding:0;justify-content:center;border-radius:50%}
  .nav-cta span{display:none}
}
html[data-theme="light"] nav.menu{background:rgba(240,249,246,.98)}

/* ---------- footer: one more column for the new pages ---------- */
.foot-grid{grid-template-columns:1.5fr 1fr 1fr 1.05fr}
@media (max-width:1000px){.foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.foot-grid{grid-template-columns:1fr}}

/* ---------- shared page banner ---------- */
.page-hero{position:relative;isolation:isolate;overflow:hidden;color:#fff;padding:3.4rem 0 3.1rem;
  background:linear-gradient(150deg,#0e1c1e 0%,#16282a 45%,#1b3a36 78%,#1d3341 100%)}
.page-hero.compact{padding:2.4rem 0 2.2rem}
.page-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:
  radial-gradient(560px 380px at 88% 14%,rgba(42,157,143,.30),transparent 70%),
  radial-gradient(480px 420px at 4% 96%,rgba(214,51,108,.20),transparent 70%)}
.page-hero::after{content:"";position:absolute;inset:0;z-index:-1;background-image:radial-gradient(rgba(127,208,196,.20) 1px,transparent 1.4px);background-size:30px 30px;
  -webkit-mask-image:linear-gradient(105deg,transparent 42%,rgba(0,0,0,.85) 85%);mask-image:linear-gradient(105deg,transparent 42%,rgba(0,0,0,.85) 85%)}
.page-hero .eyebrow-line{color:var(--teal-soft)}
.page-hero .eyebrow-line::before{background:var(--rose)}
.page-hero h1{font-size:clamp(1.7rem,3.6vw,2.6rem);font-weight:800;letter-spacing:-.4px;line-height:1.2;max-width:40rem}
.page-hero p{margin-top:.9rem;max-width:44rem;color:#c3dbd7;font-size:.96rem}
.ph-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:2.6rem;align-items:end}
.ph-facts{display:flex;flex-direction:column;gap:.7rem}
.ph-fact{display:flex;align-items:center;gap:.8rem;background:rgba(255,255,255,.06);border:1px solid rgba(255,138,180,.24);border-radius:14px;padding:.75rem .95rem;backdrop-filter:blur(6px)}
.ph-fact > div{display:flex;flex-direction:column;gap:.2rem}
.ph-fact b{font-size:1.25rem;font-weight:800;color:#fff;font-variant-numeric:tabular-nums;line-height:1}
.ph-fact span{font-size:.72rem;font-weight:700;letter-spacing:.7px;text-transform:uppercase;color:#9fc3bd}
.ph-fact svg{width:34px;height:34px;flex:none;padding:8px;border-radius:11px;background:rgba(127,208,196,.14);border:1px solid rgba(127,208,196,.3);color:var(--teal-soft)}
@media (max-width:900px){.ph-grid{grid-template-columns:1fr;gap:1.8rem}}

/* breadcrumbs */
.crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;font-size:.78rem;font-weight:600;color:#9fc3bd;margin-bottom:1rem}
.crumbs a{color:var(--teal-soft);transition:color .25s}
.crumbs a:hover{color:#fff}
.crumbs i{opacity:.5;font-style:normal}
.crumbs span[aria-current]{color:#fff}

/* light theme banner */
html[data-theme="light"] .page-hero{color:var(--ink);background:linear-gradient(165deg,#eef7f4 0%,#e9f3f0 52%,#f6eff4 100%)}
html[data-theme="light"] .page-hero::before{background:
  radial-gradient(600px 420px at 84% 18%,rgba(255,155,193,.14),transparent 70%),
  radial-gradient(520px 440px at 6% 96%,rgba(127,208,196,.18),transparent 72%)}
html[data-theme="light"] .page-hero::after{background-image:radial-gradient(rgba(42,157,143,.16) 1px,transparent 1.4px)}
html[data-theme="light"] .page-hero .eyebrow-line{color:var(--teal)}
html[data-theme="light"] .page-hero p{color:var(--muted)}
html[data-theme="light"] .crumbs{color:var(--muted)}
html[data-theme="light"] .crumbs a{color:var(--teal)}
html[data-theme="light"] .crumbs a:hover{color:var(--rose)}
html[data-theme="light"] .crumbs span[aria-current]{color:var(--ink)}
html[data-theme="light"] .ph-fact{background:var(--white);border-color:var(--line);box-shadow:var(--shadow-sm)}
html[data-theme="light"] .ph-fact b{color:var(--ink)}
html[data-theme="light"] .ph-fact span{color:var(--muted)}
html[data-theme="light"] .ph-fact svg{background:rgba(42,157,143,.1);border-color:rgba(42,157,143,.3);color:var(--teal)}

/* ---------- inner-page section rhythm ---------- */
.page-section{padding:3.6rem 0}
.page-section.tight{padding-top:2.6rem}
.page-section.alt{background:var(--white);border-top:1px solid var(--line)}
.page-section.alt-block{background:var(--white);border-block:1px solid var(--line)}
.sec-bar{display:flex;align-items:flex-end;justify-content:space-between;gap:1.4rem;flex-wrap:wrap;margin-bottom:1.8rem}
.sec-bar h2{font-size:clamp(1.25rem,2.4vw,1.6rem);font-weight:800;letter-spacing:-.2px}
.sec-bar p{color:var(--muted);font-size:.88rem;margin-top:.3rem}
.link-more{display:inline-flex;align-items:center;gap:.45rem;font-size:.85rem;font-weight:700;color:var(--rose);white-space:nowrap;transition:gap .25s,color .25s}
.link-more svg{width:15px;height:15px}
.link-more:hover{gap:.75rem;color:var(--teal)}
[dir="rtl"] .link-more svg{transform:scaleX(-1)}

/* ---------- filter / category chips ---------- */
.filter-row{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:2rem}
.f-chip{display:inline-flex;align-items:center;gap:.45rem;background:var(--white);border:1.5px solid var(--line);border-radius:999px;padding:.48rem 1.05rem;
  font-size:.82rem;font-weight:700;color:var(--ink-2);transition:transform .25s,border-color .25s,background .25s,color .25s,box-shadow .25s}
.f-chip:hover{transform:translateY(-2px);border-color:var(--teal);color:var(--teal);box-shadow:var(--shadow-sm)}
.f-chip.active{background:var(--rose);border-color:var(--rose);color:#fff;box-shadow:0 8px 20px rgba(214,51,108,.3)}
.f-chip b{font-size:.7rem;font-weight:800;opacity:.7}

/* search box */
.search-form{display:flex;gap:.5rem;flex:1;min-width:min(280px,100%);max-width:380px}
.search-form input{flex:1;min-width:0;background:var(--white);border:1.5px solid var(--line);border-radius:999px;padding:.6rem 1.05rem;
  font-family:inherit;font-size:.86rem;color:var(--ink);outline:none;transition:border-color .25s,box-shadow .25s}
.search-form input:focus{border-color:var(--rose);box-shadow:0 0 0 3px rgba(214,51,108,.12)}
.search-form button{flex:none;width:42px;height:42px;border-radius:50%;border:0;background:var(--teal);color:#fff;display:grid;place-items:center;transition:background .25s,transform .25s}
.search-form button:hover{background:var(--rose);transform:scale(1.05)}
.search-form svg{width:17px;height:17px}

/* ---------- card grids ---------- */
.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(288px,1fr));gap:1.5rem}
.card-grid.two{grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}
@media (max-width:520px){.card-grid,.card-grid.two{grid-template-columns:1fr}}

.card{position:relative;display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;
  box-shadow:0 4px 18px rgba(22,40,42,.05);transition:transform .4s cubic-bezier(.22,.9,.3,1),box-shadow .4s,border-color .4s}
.card:hover{transform:translateY(-7px);box-shadow:0 22px 44px rgba(22,40,42,.13);border-color:var(--rose-soft)}
.card-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--ink-2);flex:none}
.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,.9,.3,1)}
.card:hover .card-media img{transform:scale(1.07)}
.card-media .ph{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(140deg,#16282a,#1b3a36 60%,#3d1f30);color:rgba(127,208,196,.55)}
.card-media .ph svg{width:44px;height:44px}
.card-play{position:absolute;inset:0;display:grid;place-items:center;background:rgba(14,28,30,.28);opacity:0;transition:opacity .35s}
.card:hover .card-play{opacity:1}
.card-play i{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--rose);color:#fff;box-shadow:0 10px 26px rgba(214,51,108,.5);transform:scale(.8);transition:transform .35s}
.card:hover .card-play i{transform:scale(1)}
.card-play svg{width:20px;height:20px;margin-inline-start:2px}
.card-tag{position:absolute;top:.7rem;left:.7rem;z-index:2;font-size:.63rem;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:#fff;
  background:rgba(22,40,42,.82);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(4px);border-radius:999px;padding:.28rem .7rem}
.card-tag.rose{background:var(--rose);border-color:var(--rose)}
[dir="rtl"] .card-tag{left:auto;right:.7rem}
.card-body{display:flex;flex-direction:column;flex:1;padding:1.2rem 1.25rem 1.35rem}
.card-body h3{font-size:1rem;line-height:1.45;letter-spacing:-.1px}
.card-body h3 a{transition:color .25s}
.card-body h3 a:hover{color:var(--rose)}
.card-body p{margin-top:.55rem;font-size:.85rem;color:var(--muted);line-height:1.65}
.card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .9rem;margin-top:auto;padding-top:1rem;font-size:.75rem;font-weight:600;color:var(--muted)}
.card-meta span{display:inline-flex;align-items:center;gap:.35rem}
.card-meta svg{width:14px;height:14px;color:var(--teal);flex:none}
.card-meta .dot{width:4px;height:4px;border-radius:50%;background:var(--line);padding:0}
.card::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;z-index:3;background:linear-gradient(90deg,var(--rose),var(--teal));transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.22,.9,.3,1)}
.card:hover::before{transform:scaleX(1)}

/* wide feature card (first blog post / featured story) */
.card-feature{display:grid;grid-template-columns:1.05fr .95fr;gap:0;margin-bottom:2rem}
.card-feature .card-media{aspect-ratio:auto;min-height:280px}
.card-feature .card-body{padding:2rem 2.1rem}
.card-feature h3{font-size:clamp(1.2rem,2.2vw,1.65rem);line-height:1.3}
.card-feature p{font-size:.92rem;margin-top:.8rem}
@media (max-width:820px){.card-feature{grid-template-columns:1fr}.card-feature .card-media{min-height:0;aspect-ratio:16/9}.card-feature .card-body{padding:1.4rem 1.3rem}}

/* ---------- empty state ---------- */
.empty{text-align:center;background:var(--white);border:1.5px dashed var(--line);border-radius:22px;padding:3.4rem 1.6rem}
.empty svg{width:52px;height:52px;color:var(--teal-soft);margin:0 auto 1.1rem}
.empty h3{font-size:1.1rem}
.empty p{margin-top:.5rem;color:var(--muted);font-size:.88rem;max-width:30rem;margin-inline:auto}
.empty>div{margin-top:1.4rem}

/* ---------- ajax results panel (filters/search/pagination swap in place) ---------- */
[data-ajax-results]{outline:none}
.ajax-panel{position:relative}
.ajax-panel.is-loading [data-ajax-results]{opacity:.4;filter:blur(1px);pointer-events:none;transition:opacity .15s ease .12s,filter .15s ease .12s}
.ajax-spinner{position:absolute;top:0;left:0;right:0;display:none;justify-content:center;padding-top:3rem;pointer-events:none;z-index:5}
.ajax-panel.is-loading .ajax-spinner{display:flex}
.ajax-spin-ic{display:block;width:44px;height:44px;border-radius:50%;border:3.5px solid var(--line);border-top-color:var(--rose);background:var(--white);box-shadow:var(--shadow-sm);animation:ajaxSpin .75s linear infinite}
@keyframes ajaxSpin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.ajax-spin-ic{animation-duration:1.6s}}

/* ---------- pagination ---------- */
.pager{margin-top:2.8rem}
.pager nav[role="navigation"]{display:flex;justify-content:center}
.pager svg{width:16px;height:16px}
.pager .pg-list{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.4rem}
.pager .pg-list a,.pager .pg-list span{min-width:42px;height:42px;padding:0 .8rem;display:inline-flex;align-items:center;justify-content:center;
  background:var(--white);border:1.5px solid var(--line);border-radius:12px;font-size:.86rem;font-weight:700;color:var(--ink-2);
  transition:transform .25s,border-color .25s,background .25s,color .25s,box-shadow .25s}
.pager .pg-list a:hover{transform:translateY(-3px);border-color:var(--teal);color:var(--teal);box-shadow:var(--shadow-sm)}
.pager .pg-list .cur{background:var(--rose);border-color:var(--rose);color:#fff;box-shadow:0 8px 20px rgba(214,51,108,.3)}
.pager .pg-list .off{opacity:.4;cursor:not-allowed}
.pager .pg-list .gap{border:0;background:none;min-width:24px;color:var(--muted)}

/* ---------- success stories page ---------- */
.stories-hero-note{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.4rem;font-size:.78rem;font-weight:700;letter-spacing:.4px;
  color:#ffd3e2;background:rgba(214,51,108,.2);border:1px solid rgba(255,138,180,.45);border-radius:999px;padding:.4rem .95rem}
.stories-hero-note svg{width:15px;height:15px}
html[data-theme="light"] .stories-hero-note{color:var(--rose);background:rgba(214,51,108,.1);border-color:rgba(214,51,108,.35)}
.stories .container.center .stories-grid{text-align:start}
.np-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
#npLink{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;font-weight:700;color:var(--teal);white-space:nowrap}
#npLink:hover{color:var(--rose)}
#npLink svg{width:14px;height:14px}

/* watch page */
.watch-wrap{max-width:960px;margin-inline:auto}
.watch-frame{position:relative;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background:var(--ink);box-shadow:var(--shadow-md)}
.watch-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.watch-head{margin-top:1.6rem}
.watch-head h1{font-size:clamp(1.3rem,2.8vw,1.9rem);font-weight:800;line-height:1.3;letter-spacing:-.3px}
.watch-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.2rem;margin-top:.9rem;font-size:.82rem;font-weight:600;color:var(--muted)}
.watch-meta svg{width:15px;height:15px;color:var(--teal)}
.watch-meta span{display:inline-flex;align-items:center;gap:.4rem}
.watch-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.5rem}
.btn-sm{display:inline-flex;align-items:center;gap:.5rem;font-size:.84rem;font-weight:700;padding:.6rem 1.2rem;border-radius:999px;border:1.5px solid var(--line);
  background:var(--white);color:var(--ink-2);transition:transform .25s,border-color .25s,background .25s,color .25s,box-shadow .25s}
.btn-sm svg{width:16px;height:16px}
.btn-sm:hover{transform:translateY(-3px);border-color:var(--teal);color:var(--teal);box-shadow:var(--shadow-sm)}
.btn-sm.solid{background:var(--rose);border-color:var(--rose);color:#fff;box-shadow:0 8px 20px rgba(214,51,108,.3)}
.btn-sm.solid:hover{background:#c02a60;border-color:#c02a60;color:#fff}

/* ---------- article (blog post / story description) ---------- */
.article{max-width:760px;margin-inline:auto}
.article-cover{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-md);margin-bottom:2rem;aspect-ratio:16/7;background:var(--ink-2)}
.article-cover img{width:100%;height:100%;object-fit:cover}
.prose{font-size:1rem;line-height:1.85;color:var(--ink-2)}
.prose > *+*{margin-top:1.15rem}
.prose h2{font-size:1.32rem;font-weight:800;letter-spacing:-.2px;margin-top:2.2rem;color:var(--ink)}
.prose h3{font-size:1.1rem;font-weight:800;margin-top:1.8rem;color:var(--ink)}
.prose p{color:var(--ink-2)}
.prose a{color:var(--rose);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.prose a:hover{color:var(--teal)}
.prose strong{color:var(--ink)}
.prose ul,.prose ol{padding-inline-start:1.3rem;display:grid;gap:.55rem}
.prose ul li{list-style:none;position:relative;padding-inline-start:1.1rem}
.prose ul li::before{content:"";position:absolute;inset-inline-start:0;top:.62em;width:7px;height:7px;border-radius:50%;background:var(--teal)}
.prose ol{list-style:decimal}
.prose ol li::marker{color:var(--rose);font-weight:800}
.prose blockquote{position:relative;background:var(--white);border-inline-start:3px solid var(--rose);border-radius:0 12px 12px 0;
  padding:1.2rem 1.3rem;font-style:italic;color:var(--muted)}
.prose img{border-radius:12px;box-shadow:var(--shadow-sm)}
.prose hr{border:0;border-top:1px solid var(--line);margin:2rem 0}
.prose code{background:var(--white);border:1px solid var(--line);border-radius:6px;padding:.1rem .4rem;font-size:.9em}
/* markdown tables scroll inside their own box rather than widening the page */
.prose table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;font-size:.92rem;
  background:var(--white);border:1px solid var(--line);border-radius:12px}
.prose thead th{text-align:start;font-size:.74rem;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--teal);
  background:var(--paper);border-bottom:1.5px solid var(--line);padding:.75rem .95rem;white-space:nowrap}
.prose tbody td{padding:.7rem .95rem;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.6}
.prose tbody tr:last-child td{border-bottom:0}
.prose tbody tr:nth-child(even){background:rgba(42,157,143,.035)}
/* GFM task lists: the checkbox replaces the bullet */
.prose li.task-list-item{padding-inline-start:0;display:flex;align-items:flex-start;gap:.6rem}
.prose li.task-list-item::before{display:none}
.prose li.task-list-item input[type="checkbox"]{width:18px;height:18px;flex:none;margin-top:.24em;accent-color:var(--teal)}

.article-head{margin-bottom:2rem}
.article-head h1{font-size:clamp(1.55rem,3.4vw,2.3rem);font-weight:800;line-height:1.22;letter-spacing:-.5px}
.article-lead{margin-top:1rem;font-size:1.02rem;color:var(--muted);line-height:1.75}
.byline{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.2rem;margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--line);
  font-size:.82rem;font-weight:600;color:var(--muted)}
.byline .who{display:flex;align-items:center;gap:.6rem}
.byline .av{width:38px;height:38px;flex:none;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:.85rem;color:#fff;
  background:linear-gradient(135deg,var(--rose),#a11e52)}
.byline .who b{display:block;color:var(--ink);font-size:.88rem}
.byline .who span{font-size:.74rem}
.byline .m{display:inline-flex;align-items:center;gap:.4rem}
.byline svg{width:15px;height:15px;color:var(--teal)}

.tag-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2.4rem;padding-top:1.6rem;border-top:1px solid var(--line)}
.tag-row a,.tag-row span{font-size:.76rem;font-weight:700;color:var(--ink-2);background:var(--white);border:1px solid var(--line);border-radius:999px;padding:.35rem .8rem;transition:border-color .25s,color .25s}
.tag-row a:hover{border-color:var(--rose);color:var(--rose)}

.share-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-top:1.6rem}
.share-row b{font-size:.76rem;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted)}
.share-row a{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--white);border:1px solid var(--line);color:var(--ink-2);
  transition:transform .25s,background .25s,color .25s,border-color .25s}
.share-row a:hover{transform:translateY(-3px);background:var(--rose);border-color:var(--rose);color:#fff}
.share-row svg{width:17px;height:17px}

/* prev / next */
.pn-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2.6rem}
.pn-row a{display:flex;flex-direction:column;gap:.35rem;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:1.05rem 1.2rem;
  transition:transform .3s,border-color .3s,box-shadow .3s}
.pn-row a:hover{transform:translateY(-4px);border-color:var(--teal);box-shadow:var(--shadow-sm)}
.pn-row small{font-size:.7rem;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--rose)}
.pn-row b{font-size:.9rem;font-weight:700;line-height:1.45;color:var(--ink-2)}
.pn-row .nxt{text-align:end}
@media (max-width:600px){.pn-row{grid-template-columns:1fr}.pn-row .nxt{text-align:start}}

/* ---------- contact page ---------- */
.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:2.6rem;align-items:start}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr;gap:2.2rem}}

.form-card{background:var(--white);border:1px solid var(--line);border-radius:22px;padding:2rem 1.9rem 1.9rem;box-shadow:var(--shadow-sm)}
.form-card > h2{font-size:1.25rem;font-weight:800}
.form-card > p{margin-top:.5rem;font-size:.86rem;color:var(--muted);line-height:1.65}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.05rem;margin-top:1.7rem}
.field{display:flex;flex-direction:column;gap:.42rem}
.field.wide{grid-column:1 / -1}
.field label{font-size:.78rem;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--ink-2)}
.field label .req{color:var(--rose)}
.field input,.field select,.field textarea{width:100%;background:var(--paper);border:1.5px solid var(--line);border-radius:12px;padding:.72rem .95rem;
  font-family:inherit;font-size:.9rem;color:var(--ink);outline:none;transition:border-color .25s,box-shadow .25s,background .25s}
.field textarea{min-height:132px;resize:vertical;line-height:1.6}
.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%235d7274' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M2 4l4 4 4-4'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 1rem center;background-size:12px;padding-inline-end:2.4rem}
[dir="rtl"] .field select{background-position:left 1rem center}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--rose);background:var(--white);box-shadow:0 0 0 3px rgba(214,51,108,.12)}
.field .err{font-size:.76rem;font-weight:700;color:var(--rose)}
.field.has-err input,.field.has-err select,.field.has-err textarea{border-color:var(--rose)}
.field .hint{font-size:.74rem;color:var(--muted)}
@media (max-width:640px){.form-grid{grid-template-columns:1fr}}

.check{display:flex;align-items:flex-start;gap:.7rem;grid-column:1 / -1;font-size:.82rem;color:var(--muted);line-height:1.6}
.check input{width:19px;height:19px;flex:none;margin-top:.15rem;accent-color:var(--rose)}
.form-submit{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1.6rem}
.btn-submit{display:inline-flex;align-items:center;gap:.6rem;background:var(--rose);color:#fff;font-weight:700;font-size:.95rem;padding:.85rem 1.9rem;
  border:0;border-radius:999px;box-shadow:0 10px 26px rgba(214,51,108,.4);transition:transform .25s,box-shadow .25s,background .25s}
.btn-submit:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(214,51,108,.5)}
.btn-submit svg{width:17px;height:17px}
.form-submit small{font-size:.76rem;color:var(--muted)}

.alert{display:flex;gap:.85rem;align-items:flex-start;border-radius:14px;padding:1rem 1.15rem;font-size:.88rem;line-height:1.6;margin-bottom:1.6rem}
.alert svg{width:20px;height:20px;flex:none;margin-top:1px}
.alert b{display:block;margin-bottom:.15rem}
.alert.ok{background:rgba(42,157,143,.1);border:1px solid rgba(42,157,143,.35);color:#1c5f57}
.alert.ok svg{color:var(--teal)}
.alert.bad{background:rgba(214,51,108,.08);border:1px solid rgba(214,51,108,.3);color:#8f1a48}
.alert.bad svg{color:var(--rose)}

/* emergency banner */
.emg{display:flex;gap:1rem;align-items:center;background:linear-gradient(120deg,var(--ink),#3d1f30);color:#fff;border-radius:18px;padding:1.25rem 1.4rem;margin-bottom:1.6rem}
.emg svg{width:40px;height:40px;flex:none;padding:9px;border-radius:12px;background:rgba(255,138,180,.18);border:1px solid rgba(255,138,180,.4);color:#ff8ab4}
.emg b{display:block;font-size:.98rem}
.emg p{font-size:.82rem;color:#b9d5d0;margin-top:.15rem;line-height:1.55}
.emg a{color:#ffd3e2;font-weight:800;text-decoration:underline}

/* info column */
.info-card{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:1.5rem 1.5rem 1.4rem;box-shadow:0 4px 18px rgba(22,40,42,.05);margin-bottom:1.3rem}
.info-card h3{font-size:.78rem;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--teal);margin-bottom:1.1rem}
.info-list{display:grid;gap:.85rem}
.info-list li{display:flex;gap:.85rem;align-items:flex-start}
.info-list svg{width:34px;height:34px;flex:none;padding:8px;border-radius:11px;background:rgba(42,157,143,.1);color:var(--teal)}
.info-list b{display:block;font-size:.9rem;color:var(--ink)}
.info-list small{display:block;font-size:.79rem;color:var(--muted);line-height:1.55;margin-top:.1rem}
.info-list a{color:var(--rose);font-weight:700}
.step-list{display:grid;gap:.7rem;counter-reset:s}
.step-list li{display:flex;gap:.85rem;align-items:flex-start;background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:.8rem .95rem}
.step-list .n{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:.85rem;color:#fff;
  background:linear-gradient(135deg,var(--rose),#a11e52);box-shadow:0 4px 12px rgba(214,51,108,.35)}
.step-list b{display:block;font-size:.88rem;color:var(--ink)}
.step-list small{display:block;font-size:.78rem;color:var(--muted);line-height:1.5;margin-top:.1rem}
.helpline-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:.6rem}
.helpline-list a{display:flex;align-items:center;gap:.6rem;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:.6rem .75rem;
  font-size:.78rem;font-weight:600;color:var(--ink-2);transition:transform .25s,border-color .25s,background .25s}
.helpline-list a:hover{transform:translateY(-3px);border-color:var(--rose);background:var(--white)}
.helpline-list b{flex:none;min-width:42px;text-align:center;padding:.2rem .45rem;border-radius:99px;font-size:.8rem;font-weight:800;color:#fff;
  background:linear-gradient(135deg,var(--teal),#1c6e64)}
.social-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:.6rem}
.social-tiles a{display:flex;align-items:center;gap:.6rem;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:.65rem .8rem;
  font-size:.82rem;font-weight:700;color:var(--ink-2);transition:transform .25s,border-color .25s,background .25s,color .25s}
.social-tiles a:hover{transform:translateY(-3px);border-color:var(--rose);color:var(--rose);background:var(--white)}
.social-tiles svg{width:19px;height:19px;flex:none}

/* ---------- reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  .card,.card-media img,.card::before,.f-chip,.btn-sm,.btn-submit,.pn-row a,.pager .pg-list a{transition:none !important;transform:none !important}
}
