/* ==========================================================================
   Sundar Marriage Services (Sundar Events) — Services page
   Loads after style.css and reuses its tokens, buttons and heading kit;
   everything here is prefixed .sv-
   ========================================================================== */

:root{
  /* faint jaali (lattice) motif laid over the dark bands */
  --sv-jaali:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56' viewBox='0 0 56 56'%3E%3Cpath d='M28 2C33 16 40 23 54 28C40 33 33 40 28 54C23 40 16 33 2 28C16 23 23 16 28 2Z' fill='none' stroke='%23F0CE7E' stroke-opacity='.1'/%3E%3Ccircle cx='28' cy='28' r='2.5' fill='%23F0CE7E' fill-opacity='.1'/%3E%3C/svg%3E");
}

/* doubled class so it outranks style.css's centred ".eyebrow--gold.eyebrow" */
.eyebrow.sv-eyebrow{justify-content:flex-start;}
.sv-eyebrow .dash{margin-left:11px;}

/* shamiana-style scalloped edges between bands (same motif as About Us) */
.sv-hero::after,
.sv-gallery::before,
.sv-gallery::after{
  content:"";position:absolute;left:0;right:0;height:18px;z-index:3;pointer-events:none;
  background-size:36px 18px;background-repeat:repeat-x;
}

/* ==========================================================================
   HERO
   ========================================================================== */
.sv-hero{
  position:relative;overflow:hidden;isolation:isolate;color:#fff;
  background:
    var(--sv-jaali),
    radial-gradient(ellipse 70% 90% at 80% 50%,#7A0F3A 0%,transparent 60%),
    linear-gradient(120deg,#2A0714 0%,var(--maroon-900) 45%,#3A0A1C 100%);
  padding-block:48px 84px;
}
.sv-hero::after{
  bottom:-1px;
  background-image:radial-gradient(circle at 18px 18px,var(--cream-2) 17px,transparent 18px);
}
.sv-hero__glow{position:absolute;border-radius:50%;filter:blur(70px);z-index:-1;pointer-events:none;}
.sv-hero__glow--pink{width:420px;height:420px;right:6%;top:10%;background:rgba(228,37,127,.28);}
.sv-hero__glow--gold{width:360px;height:360px;left:-120px;bottom:-140px;background:rgba(227,177,92,.22);}

.sv-hero__grid{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:40px;align-items:center;min-height:clamp(440px,36vw,560px);
}

.sv-crumbs{
  display:inline-flex;align-items:center;gap:10px;
  padding:7px 18px;border-radius:999px;margin-bottom:22px;
  font-size:13px;color:#F1DDE3;
  background:rgba(255,255,255,.07);border:1px solid rgba(247,224,166,.26);
}
.sv-crumbs i{font-size:8px;opacity:.6;}
.sv-crumbs a{transition:color .3s var(--ease);}
.sv-crumbs a:hover{color:var(--gold-300);}
.sv-crumbs span{color:var(--gold-300);}

.sv-hero__eyebrow{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  font-size:12.5px;font-weight:700;letter-spacing:3.4px;text-transform:uppercase;color:var(--gold-300);
}
.sv-hero__eyebrow i{font-size:6px;opacity:.7;}
.sv-hero__title{
  margin-top:14px;
  font-size:clamp(36px,4.3vw,62px);font-weight:800;line-height:1.1;letter-spacing:-.6px;color:#fff;
}
.sv-hero__title em{
  display:block;font-style:normal;
  background:linear-gradient(92deg,var(--gold-200),var(--gold-400) 50%,#F59FC6);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.sv-hero__text{margin-top:16px;max-width:540px;font-size:15.5px;line-height:1.8;color:#EAD9DE;}
.sv-hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px;}

.sv-hero__facts{display:flex;flex-wrap:wrap;gap:14px 0;margin-top:36px;}
.sv-hero__facts li{display:flex;flex-direction:column;padding-inline:26px;border-left:1px solid rgba(247,224,166,.3);}
.sv-hero__facts li:first-child{padding-left:0;border-left:0;}
.sv-hero__facts b,
.sv-hero__facts .stat__num{font-family:var(--ff-serif);font-size:clamp(26px,2.4vw,34px);font-weight:800;color:var(--gold-200);line-height:1.1;}
.sv-hero__facts span{font-size:12.5px;color:#E3CBD3;margin-top:2px;}

/* fanned photo cards, each shaped like a mehrab arch */
.sv-fan{position:relative;height:clamp(380px,34vw,480px);--k:1;--w:clamp(150px,13vw,196px);}
.sv-fan__card{
  position:absolute;left:50%;bottom:54px;margin:0 0 0 calc(var(--w) / -2);
  width:var(--w);aspect-ratio:3/4.1;overflow:hidden;
  border-radius:999px 999px 18px 18px;border:4px solid #FFF6EA;
  box-shadow:0 26px 50px rgba(10,0,4,.5);
  transform-origin:50% 130%;
  rotate:var(--r);translate:calc(var(--tx) * var(--k)) var(--ty);
  transition:rotate .7s var(--ease), translate .7s var(--ease), box-shadow .5s var(--ease);
}
.sv-fan__card img{width:100%;height:100%;object-fit:cover;}
.sv-fan__card figcaption{
  position:absolute;left:0;right:0;bottom:0;
  display:flex;align-items:center;justify-content:center;gap:7px;
  padding:34px 8px 12px;font-size:13px;font-weight:600;color:#fff;text-align:center;
  background:linear-gradient(180deg,transparent,rgba(60,6,26,.92));
}
.sv-fan__card figcaption i{color:var(--gold-300);font-size:11px;}
.sv-fan:hover .sv-fan__card{rotate:calc(var(--r) * 1.3);translate:calc(var(--tx) * var(--k) * 1.4) calc(var(--ty) - 10px);}
.sv-fan .sv-fan__card:hover{z-index:20 !important;translate:calc(var(--tx) * var(--k) * 1.4) calc(var(--ty) - 34px);box-shadow:0 34px 60px rgba(10,0,4,.6);}
.sv-fan__tag{
  position:absolute;left:50%;bottom:0;translate:-50% 0;z-index:30;white-space:nowrap;
  display:inline-flex;align-items:center;gap:8px;
  padding:10px 22px;border-radius:999px;
  background:linear-gradient(100deg,var(--gold-200),var(--gold-300) 45%,var(--gold-400));
  color:#4A2708;font-size:13.5px;font-weight:600;box-shadow:0 12px 28px rgba(0,0,0,.35);
}
.sv-fan__tag i{font-size:11px;color:var(--maroon);}

/* ==========================================================================
   SERVICE EXPLORER
   ========================================================================== */
.sv-explore{position:relative;background:var(--cream-2);padding-block:66px 84px;}
.sv-explore__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px 40px;flex-wrap:wrap;}
.sv-explore__head > div:first-child{max-width:720px;}
.sv-explore__head .sec-title em{color:var(--maroon);}

.sv-search{flex:0 1 380px;}
.sv-search__box{
  display:flex;align-items:center;gap:12px;height:54px;padding:0 20px;border-radius:999px;
  background:#fff;border:1.5px solid #EEDFD2;box-shadow:var(--shadow-sm);cursor:text;
  transition:border-color .3s var(--ease), box-shadow .3s var(--ease);
}
.sv-search__box i{color:var(--maroon);font-size:15px;}
.sv-search__box:focus-within{border-color:var(--gold-400);box-shadow:0 0 0 4px rgba(227,177,92,.2),var(--shadow-sm);}
.sv-search__box input{
  flex:1;min-width:0;border:0;outline:0;background:transparent;
  font:inherit;font-size:14.5px;color:var(--ink);
}
.sv-search__box input::placeholder{color:#A19CA6;}
.sv-search__count{margin-top:8px;padding-left:20px;font-size:12.5px;color:#8A8690;}
.sv-search__count b{color:var(--maroon);}

.sv-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 22px;margin-top:36px;}

.sv-card{
  position:relative;display:flex;flex-direction:column;
  padding:10px 10px 0;border-radius:24px;background:#fff;
  border:1px solid #F2E5D9;box-shadow:0 6px 20px rgba(92,10,40,.06);
  /* hover uses the standalone translate property so it never fights the GSAP entrance transform */
  transition:translate .5s var(--ease), box-shadow .5s var(--ease), border-color .5s var(--ease);
}
.sv-card[hidden]{display:none;}
.sv-card:hover{translate:0 -8px;box-shadow:var(--shadow-lg);border-color:rgba(201,135,60,.45);}

.sv-card__media{
  position:relative;display:block;overflow:hidden;isolation:isolate;
  aspect-ratio:4/3.4;border-radius:999px 999px 16px 16px;
}
.sv-card__media img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease), filter .6s var(--ease);}
.sv-card__media::after{
  content:"";position:absolute;inset:8px;z-index:2;pointer-events:none;
  border-radius:999px 999px 11px 11px;border:1.5px solid rgba(247,224,166,0);
  transition:border-color .5s var(--ease);
}
.sv-card:hover .sv-card__media img{transform:scale(1.1);filter:saturate(1.12);}
.sv-card:hover .sv-card__media::after{border-color:rgba(247,224,166,.9);}

.sv-card__veil{
  position:absolute;inset:0;z-index:1;opacity:0;
  background:linear-gradient(180deg,rgba(142,16,67,0) 35%,rgba(92,10,40,.85) 100%);
  transition:opacity .5s var(--ease);
}
.sv-card:hover .sv-card__veil{opacity:1;}

.sv-card__no{
  position:absolute;left:14px;bottom:12px;z-index:3;
  padding:3px 10px;border-radius:999px;background:rgba(255,250,244,.92);
  font-family:var(--ff-serif);font-size:12.5px;font-weight:800;color:var(--maroon);
}
.sv-card__peek{
  position:absolute;left:50%;bottom:14px;z-index:3;translate:-50% 12px;opacity:0;white-space:nowrap;
  font-size:13px;font-weight:600;color:#fff;
  transition:opacity .45s var(--ease), translate .45s var(--ease);
}
.sv-card__peek i{font-size:11px;margin-left:4px;}
.sv-card:hover .sv-card__peek{opacity:1;translate:-50% 0;}

.sv-card__ic{
  position:relative;z-index:4;align-self:flex-end;
  width:54px;height:54px;margin:-30px 14px 0 0;border-radius:50%;
  display:grid;place-items:center;font-size:19px;
  background:linear-gradient(145deg,var(--gold-200),var(--gold-400));color:var(--maroon-900);
  border:4px solid #fff;box-shadow:0 8px 18px rgba(92,10,40,.18);
  transition:transform .6s var(--ease), background .5s var(--ease), color .5s var(--ease);
}
.sv-card:hover .sv-card__ic{
  transform:rotate(-18deg) scale(1.06);color:#fff;
  background:linear-gradient(145deg,var(--maroon-600),var(--maroon-900));
}

.sv-card__body{display:flex;flex-direction:column;flex:1;padding:0 10px 16px;margin-top:-16px;}
.sv-card__name{font-size:20px;font-weight:700;line-height:1.25;padding-right:64px;}
.sv-card__name a{transition:color .35s var(--ease);}
.sv-card__name a:hover{color:var(--maroon);}
.sv-card__tagline{font-family:var(--ff-script);font-weight:700;font-size:18px;line-height:1.1;color:var(--gold-600);margin-top:2px;}
.sv-card__desc{flex:1;margin-top:6px;font-size:13.5px;line-height:1.6;color:#77737C;}

.sv-card__foot{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  margin-top:14px;padding-top:14px;border-top:1px dashed #EDDCCB;
}
.sv-card__link{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600;color:var(--maroon);}
.sv-card__link i{font-size:11px;transition:transform .35s var(--ease);}
.sv-card__link:hover i{transform:translateX(4px);}
.sv-card__enq{
  display:inline-flex;align-items:center;gap:7px;
  padding:8px 15px;border-radius:999px;background:#FBEFE4;
  font-size:13px;font-weight:600;color:var(--maroon);
  transition:background .35s var(--ease), color .35s var(--ease), box-shadow .35s var(--ease);
}
.sv-card__enq:hover,.sv-card__enq:focus-visible{
  background:linear-gradient(100deg,var(--maroon-800),var(--maroon-600) 60%,var(--pink));
  color:#fff;box-shadow:0 8px 18px rgba(142,16,67,.3);
}

/* the "custom package" tile that closes the grid */
.sv-card--custom{
  justify-content:center;align-items:flex-start;padding:30px 26px;
  background:
    var(--sv-jaali),
    radial-gradient(circle at 100% 0%,rgba(228,37,127,.4),transparent 55%),
    linear-gradient(150deg,var(--maroon-800),var(--maroon-900));
  border-color:transparent;color:#F1DFE5;
}
.sv-card--custom .sv-card__ic{align-self:flex-start;margin:0 0 18px;border-color:rgba(255,255,255,.18);}
.sv-card--custom h3{font-size:24px;font-weight:800;color:#fff;line-height:1.2;}
.sv-card--custom p{margin:10px 0 22px;font-size:14px;line-height:1.7;}
.sv-card--custom .btn{padding:12px 22px;font-size:14px;}

.sv-empty{text-align:center;max-width:520px;margin:40px auto 0;padding:40px 24px;border-radius:24px;background:#fff;border:1px dashed #E7D2BF;}
.sv-empty[hidden]{display:none;}
.sv-empty__ic{
  width:64px;height:64px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;
  font-size:22px;color:var(--maroon);background:#FBEFE4;
}
.sv-empty h3{font-size:22px;}
.sv-empty p{margin:8px 0 20px;color:#77737C;}

/* ==========================================================================
   WHY CHOOSE
   ========================================================================== */
.sv-why{
  position:relative;overflow:hidden;
  background:linear-gradient(180deg,#FBF3EC 0%,#F8E7D8 100%);
  padding-block:86px 96px;
}
.sv-why__temple{
  /* nudged below the edge: the artwork has a dark strip along its bottom */
  position:absolute;right:0;bottom:-16px;width:min(640px,52%);opacity:.5;
  mix-blend-mode:multiply;pointer-events:none;
}
.sv-why__grid{
  position:relative;z-index:2;
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(40px,6vw,96px);align-items:center;
}

.sv-why__visual{position:relative;max-width:540px;width:100%;margin-inline:auto;padding:36px 48px;}
.sv-why__photo{
  position:relative;z-index:1;margin:0;overflow:hidden;
  aspect-ratio:4/4.7;border-radius:999px 999px 30px 30px;box-shadow:var(--shadow-lg);
  border:6px solid #fff;
}
.sv-why__photo img{width:100%;height:100%;object-fit:cover;object-position:center 55%;}
.sv-why__ring{
  position:absolute;left:50%;top:6px;width:88%;aspect-ratio:1;translate:-50% 0;
  border:1.5px dashed rgba(201,135,60,.55);border-radius:50%;
  animation:sv-spin 70s linear infinite;
}
@keyframes sv-spin{to{rotate:360deg;}}

.sv-chip{
  position:absolute;z-index:2;
  display:flex;align-items:center;gap:10px;
  padding:9px 16px 9px 9px;border-radius:16px;
  background:rgba(255,255,255,.94);backdrop-filter:blur(6px);
  box-shadow:0 14px 30px rgba(92,10,40,.16);
  animation:sv-bob 5s ease-in-out infinite;
}
.sv-chip--0{top:10%;left:0;}
.sv-chip--1{top:36%;right:0;animation-delay:-1.2s;}
.sv-chip--2{bottom:20%;left:0;animation-delay:-2.4s;}
.sv-chip--3{bottom:4%;right:8%;animation-delay:-3.6s;}
@keyframes sv-bob{
  0%,100%{translate:0 0;}
  50%{translate:0 -10px;}
}
.sv-chip__ic{
  width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:16px;color:#fff;
  background:linear-gradient(145deg,var(--maroon-600),var(--maroon-900));
}
.sv-chip__text{display:flex;flex-direction:column;line-height:1.15;}
.sv-chip .stat__num{font-family:var(--ff-serif);font-size:20px;font-weight:800;color:var(--maroon-900);}
.sv-chip small{font-size:11.5px;color:#7A7680;}

.sv-why__title{font-size:clamp(30px,3.2vw,46px);font-weight:800;line-height:1.15;margin:4px 0 22px;}
.sv-why__title em{font-style:normal;color:var(--maroon);}

.sv-why__list{list-style:none;margin:0 0 26px;padding:0;display:flex;flex-direction:column;gap:12px;}
.sv-why__list li{
  display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:16px;
  padding:12px 20px 12px 12px;border-radius:18px;
  background:rgba(255,255,255,.72);border:1px solid #F0E0D2;
  transition:transform .4s var(--ease), background .4s var(--ease), box-shadow .4s var(--ease), border-color .4s var(--ease);
}
.sv-why__list li:hover{transform:translateX(6px);background:#fff;box-shadow:var(--shadow-sm);border-color:rgba(201,135,60,.45);}
.sv-why__ic{
  width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-size:16px;
  background:linear-gradient(145deg,var(--gold-200),var(--gold-400));color:var(--maroon-900);
  transition:transform .5s var(--ease);
}
.sv-why__list li:hover .sv-why__ic{transform:rotate(-14deg) scale(1.06);}
.sv-why__text{font-size:15px;font-weight:600;color:#3A3740;line-height:1.45;}
.sv-why__no{
  font-family:var(--ff-serif);font-size:24px;font-weight:900;line-height:1;
  color:transparent;-webkit-text-stroke:1px var(--gold-400);
  transition:color .4s var(--ease);
}
.sv-why__list li:hover .sv-why__no{color:var(--gold-400);}

/* ==========================================================================
   GALLERY (bento grid + lightbox)
   ========================================================================== */
.sv-gallery{
  position:relative;overflow:hidden;
  background:var(--sv-jaali),linear-gradient(160deg,#3A0A1C 0%,#2A0714 100%);
  padding-block:92px 96px;
}
.sv-gallery::before{
  top:-1px;
  background-image:radial-gradient(circle at 18px 0,#F8E7D8 17px,transparent 18px);
}
.sv-gallery::after{
  bottom:-1px;
  background-image:radial-gradient(circle at 18px 18px,var(--cream-2) 17px,transparent 18px);
}
.sv-gallery__head .sec-title{color:#fff;}
.sv-gallery__head .sec-title em{font-style:normal;color:var(--gold-300);}
.sv-gallery__head .sec-sub{color:#E3CDD4;}

.sv-bento{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  grid-auto-rows:clamp(150px,14vw,210px);grid-auto-flow:dense;gap:14px;margin-top:34px;
}
.sv-shot:nth-child(5n+1){grid-column:span 2;grid-row:span 2;}
.sv-shot:nth-child(10n+6){grid-column:3 / span 2;}

.sv-shot{
  position:relative;display:block;overflow:hidden;padding:0;border:0;
  border-radius:18px;background:#1C0510;cursor:zoom-in;text-align:left;
}
.sv-shot img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease), filter .6s var(--ease);}
.sv-shot:hover img,.sv-shot:focus-visible img{transform:scale(1.08);filter:saturate(1.12);}
.sv-shot:focus-visible{outline:3px solid var(--gold-300);outline-offset:3px;}
.sv-shot__cap{
  position:absolute;left:0;right:0;bottom:0;
  display:flex;align-items:center;gap:10px;
  padding:44px 18px 14px;font-size:13.5px;font-weight:500;color:#fff;
  background:linear-gradient(180deg,transparent,rgba(40,4,18,.9));
  translate:0 100%;transition:translate .5s var(--ease);
}
.sv-shot__cap i{flex:0 0 auto;color:var(--gold-300);font-size:12px;}
.sv-shot:hover .sv-shot__cap,.sv-shot:focus-visible .sv-shot__cap{translate:0 0;}
.sv-gallery__more{display:flex;justify-content:center;margin-top:34px;}
/* the photo viewer itself is the shared .lightbox in style.css */

/* ==========================================================================
   PROCESS
   ========================================================================== */
.sv-steps{position:relative;overflow:hidden;background:var(--cream-2);padding-block:80px 92px;}
.sv-steps .sec-title em{font-style:normal;color:var(--maroon);}

.sv-steps__row{
  position:relative;display:grid;grid-template-columns:repeat(var(--cols,4),minmax(0,1fr));
  gap:26px;margin-top:46px;
}
.sv-steps__wave{
  position:absolute;left:0;top:8px;width:100%;height:120px;z-index:0;overflow:visible;
  fill:none;stroke:url(#svWaveGrad);stroke-width:2;
}
.sv-step{position:relative;z-index:1;text-align:center;padding-inline:10px;}
.sv-step:nth-of-type(even){margin-top:60px;}
.sv-steps--nowave .sv-steps__wave{display:none;}
.sv-steps--nowave .sv-step:nth-of-type(even){margin-top:0;}

.sv-step__ic{
  width:76px;height:76px;margin:0 auto 12px;border-radius:50%;
  display:grid;place-items:center;font-size:26px;color:var(--maroon);
  background:#fff;border:2px solid var(--gold-300);
  box-shadow:0 0 0 8px var(--cream-2),var(--shadow-md);
  transition:transform .5s var(--ease), background .5s var(--ease), color .5s var(--ease);
}
.sv-step:hover .sv-step__ic{
  transform:rotate(-10deg) scale(1.07);color:var(--gold-200);
  background:linear-gradient(145deg,var(--maroon-600),var(--maroon-900));
}
.sv-step__no{
  display:block;margin-bottom:2px;
  font-family:var(--ff-serif);font-size:54px;font-weight:900;line-height:.95;
  color:transparent;-webkit-text-stroke:1.2px rgba(142,16,67,.32);
}
.sv-step h3{font-size:21px;font-weight:700;margin-bottom:6px;}
.sv-step p{font-size:14px;line-height:1.7;color:#6E6A73;max-width:270px;margin-inline:auto;}

/* ==========================================================================
   CTA — wedding-invitation card
   ========================================================================== */
.sv-cta{position:relative;overflow:hidden;isolation:isolate;padding-block:90px;}
.sv-cta__bg{position:absolute;inset:0;z-index:-2;overflow:hidden;}
.sv-cta__bg img{width:100%;height:100%;object-fit:cover;object-position:center 40%;will-change:transform;}
.sv-cta__shade{
  position:absolute;inset:0;z-index:-1;
  background:radial-gradient(ellipse at center,rgba(60,10,28,.55),rgba(30,4,14,.85));
}

.sv-invite{
  position:relative;max-width:840px;margin-inline:auto;text-align:center;
  padding:clamp(44px,5vw,66px) clamp(26px,6vw,80px);
  background:radial-gradient(circle at 50% 0%,#FFFFFF,#FFF6EA 70%);
  border-radius:10px;
  outline:1.5px solid var(--gold-400);outline-offset:-16px;
  box-shadow:0 36px 80px rgba(0,0,0,.45);
}
.sv-invite__corner{position:absolute;width:44px;height:44px;border-color:var(--maroon);border-style:solid;border-width:0;}
.sv-invite__corner::after{
  content:"";position:absolute;width:8px;height:8px;background:var(--gold-400);rotate:45deg;
}
.sv-invite__corner--tl{top:26px;left:26px;border-top-width:2px;border-left-width:2px;border-top-left-radius:14px;}
.sv-invite__corner--tr{top:26px;right:26px;border-top-width:2px;border-right-width:2px;border-top-right-radius:14px;}
.sv-invite__corner--bl{bottom:26px;left:26px;border-bottom-width:2px;border-left-width:2px;border-bottom-left-radius:14px;}
.sv-invite__corner--br{bottom:26px;right:26px;border-bottom-width:2px;border-right-width:2px;border-bottom-right-radius:14px;}
.sv-invite__corner--tl::after{top:6px;left:6px;}
.sv-invite__corner--tr::after{top:6px;right:6px;}
.sv-invite__corner--bl::after{bottom:6px;left:6px;}
.sv-invite__corner--br::after{bottom:6px;right:6px;}

.sv-invite__mantra{font-family:var(--ff-deva);font-weight:600;font-size:18px;letter-spacing:2px;color:var(--maroon);}
.sv-invite h2{margin-top:10px;font-size:clamp(28px,3.2vw,44px);font-weight:800;line-height:1.18;}
.sv-invite h2 em{
  display:block;font-style:normal;
  background:linear-gradient(92deg,var(--maroon),var(--pink));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.sv-invite__text{margin:14px auto 0;max-width:520px;font-size:15px;color:#6E6A73;}
.sv-invite__actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:28px;}
.sv-btn-wa{background:#25D366;color:#fff;box-shadow:0 10px 24px rgba(37,211,102,.35);}
.sv-btn-wa:hover{box-shadow:0 16px 32px rgba(37,211,102,.5);}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width:1200px){
  .sv-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  /* two-column why-choose on small laptops/tablets: tighter photo frame and chips */
  .sv-why__visual{padding:30px 26px;}
  .sv-chip{padding:7px 12px 7px 7px;gap:8px;}
  .sv-chip__ic{width:34px;height:34px;font-size:14px;border-radius:10px;}
  .sv-chip .stat__num{font-size:17px;}
  .sv-chip small{font-size:11px;}
}
@media (max-width:1024px){
  .sv-hero__grid{grid-template-columns:1fr;gap:18px;min-height:0;text-align:center;}
  .sv-hero__copy{display:flex;flex-direction:column;align-items:center;}
  .sv-hero__eyebrow,.sv-hero__actions,.sv-hero__facts{justify-content:center;}
  .sv-hero__text{margin-inline:auto;}
  /* stacked under the copy the fan only needs room for the cards and their hover lift */
  .sv-fan{height:300px;--k:.8;--w:150px;}
  .sv-why__list li{padding:10px 16px 10px 10px;gap:12px;}
  .sv-why__text{font-size:14px;}
}
@media (max-width:900px){
  .sv-steps__row{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:40px;}
  .sv-steps__wave{display:none;}
  .sv-step:nth-of-type(even){margin-top:0;}
  .sv-why__grid{grid-template-columns:1fr;gap:34px;}
  .sv-why__visual{max-width:480px;padding:34px 44px;}
  .sv-why__temple{width:min(520px,80%);}
}
@media (max-width:760px){
  .sv-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  /* the "custom package" tile fills the last row's empty cell, or takes a full row when there is none */
  .sv-card--custom:nth-child(odd){grid-column:1 / -1;}
  .sv-bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:150px;gap:10px;}
  .sv-shot:nth-child(10n+6){grid-column:span 2;}
  .sv-shot__cap{translate:0 0;padding:30px 12px 10px;font-size:12px;}
  .sv-search{flex:1 1 100%;}
  .sv-explore__head > div:first-child{max-width:none;}
}
@media (max-width:680px){
  .sv-hero{padding-block:36px 70px;}
  .sv-explore{padding-block:50px 64px;}
  .sv-why{padding-block:60px 70px;}
  .sv-why__visual{padding:24px 12px 0;}
  .sv-chip{position:relative;inset:auto;animation:none;}
  .sv-why__visual{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .sv-why__photo,.sv-why__ring{grid-column:1 / -1;}
  .sv-why__photo{margin-bottom:6px;max-width:360px;width:100%;justify-self:center;}
  .sv-why__ring{display:none;}
  .sv-gallery{padding-block:70px 74px;}
  .sv-steps{padding-block:60px 70px;}
  .sv-cta{padding-block:60px;}
  .sv-invite{outline-offset:-10px;}
  .sv-invite__corner{width:30px;height:30px;}
  .sv-invite__corner--tl,.sv-invite__corner--tr{top:18px;}
  .sv-invite__corner--bl,.sv-invite__corner--br{bottom:18px;}
  .sv-invite__corner--tl,.sv-invite__corner--bl{left:18px;}
  .sv-invite__corner--tr,.sv-invite__corner--br{right:18px;}
}
@media (max-width:560px){
  .sv-grid{gap:14px 12px;margin-top:26px;}
  .sv-card{padding:6px 6px 0;border-radius:18px;}
  .sv-card__media{border-radius:999px 999px 12px 12px;}
  .sv-card__media::after{inset:5px;}
  .sv-card__peek{display:none;}
  .sv-card__no{left:8px;bottom:8px;padding:2px 8px;font-size:11px;}
  .sv-card__ic{width:42px;height:42px;font-size:15px;margin:-22px 8px 0 0;border-width:3px;}
  .sv-card__body{padding:0 6px 12px;margin-top:-10px;}
  .sv-card__name{font-size:15.5px;padding-right:40px;}
  .sv-card__tagline{font-size:15px;}
  .sv-card__desc{font-size:12px;line-height:1.5;}
  .sv-card__foot{margin-top:10px;padding-top:10px;}
  .sv-card__link{font-size:12.5px;}
  .sv-card__enq{width:34px;height:34px;padding:0;justify-content:center;}
  .sv-card__enq span{display:none;}
  .sv-card--custom{padding:24px 20px;}
  .sv-card--custom:nth-child(even){padding:18px 14px;}
  .sv-card--custom:nth-child(even) .sv-card__ic{width:44px;height:44px;font-size:16px;margin-bottom:12px;}
  .sv-card--custom:nth-child(even) h3{font-size:18px;}
  .sv-card--custom:nth-child(even) p{margin:6px 0 14px;font-size:12.5px;line-height:1.55;}
  .sv-card--custom:nth-child(even) .btn{width:100%;justify-content:center;padding:10px 12px;font-size:12.5px;}

  .sv-hero__eyebrow{justify-content:center;gap:6px 9px;font-size:11px;letter-spacing:1.8px;}
  /* stats become three equal columns so long labels wrap instead of running off-screen */
  .sv-hero__facts{
    display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);
    width:100%;max-width:440px;margin-top:30px;
  }
  .sv-hero__facts li,.sv-hero__facts li:first-child{align-items:center;padding-inline:6px;}
  .sv-hero__facts span{font-size:12px;line-height:1.3;}

  .sv-fan{height:250px;--k:.55;--w:120px;}
  .sv-fan__card{bottom:48px;border-width:3px;}
  .sv-fan__card figcaption{font-size:11px;padding:24px 4px 8px;}

  /* process: a vertical timeline, icon on the left, instead of four tall centred blocks */
  .sv-steps__row{grid-template-columns:1fr;row-gap:0;margin-top:34px;}
  .sv-step{
    display:grid;grid-template-columns:62px minmax(0,1fr);column-gap:18px;
    text-align:left;padding:0 0 30px;
  }
  .sv-step:last-child{padding-bottom:0;}
  .sv-step:not(:last-child)::before{
    content:"";position:absolute;left:30px;top:70px;bottom:6px;
    border-left:2px dashed rgba(142,16,67,.25);
  }
  .sv-step__ic{grid-row:1 / span 3;width:62px;height:62px;margin:0;font-size:22px;box-shadow:0 0 0 6px var(--cream-2),var(--shadow-md);}
  .sv-step__no,.sv-step h3,.sv-step p{grid-column:2;}
  .sv-step__no{font-size:32px;margin:0;}
  .sv-step h3{font-size:19px;margin-bottom:4px;}
  .sv-step p{max-width:none;margin-inline:0;}
}
@media (max-width:460px){
  .sv-hero__actions{width:100%;}
  .sv-hero__actions .btn{flex:1 1 100%;justify-content:center;}
  .sv-fan{height:226px;--k:.4;--w:104px;}
  .sv-fan__card{bottom:44px;}
  .sv-fan__card figcaption{font-size:10px;gap:4px;padding:20px 3px 7px;}
  .sv-fan__tag{font-size:12px;padding:8px 16px;}
  .sv-invite{padding-inline:22px;}
  .sv-invite__actions .btn{flex:1 1 100%;justify-content:center;}
  .sv-why__list li{grid-template-columns:40px minmax(0,1fr) auto;padding-right:12px;}
  .sv-why__ic{width:40px;height:40px;font-size:14px;}
  .sv-why__no{font-size:20px;}
}
@media (max-width:360px){
  .sv-grid{gap:12px 10px;}
  .sv-card__name{font-size:14.5px;padding-right:34px;}
  .sv-card__ic{width:38px;height:38px;font-size:14px;margin-right:6px;}
  .sv-card__link{font-size:12px;}
  .sv-card__enq{width:30px;height:30px;}
}

@media (prefers-reduced-motion:reduce){
  .sv-chip{animation:none;}
}
