/* ==========================================================
   Swastha360 PRO layer — premium heroes + polish (v1)
   Loaded after main.css. Safe to remove: delete <link> in main-header.php
   ========================================================== */

/* ---------- HOME HERO: tighter, CTAs above fold, clearer photo ---------- */
html body section.hero{padding-top:12px}
html body .hero-inner{align-items:center;gap:56px;padding-top:28px;padding-bottom:56px}
html body .hero-title{font-size:clamp(2rem,3.2vw,3rem)!important;line-height:1.08;letter-spacing:-.01em;margin-bottom:18px}
html body .hero-subtitle{font-size:1.06rem;line-height:1.65;max-width:560px;color:rgba(255,255,255,.86)}
html body .hero-ctas{flex-wrap:wrap;align-items:center;gap:12px;margin-top:26px}
html body .hero-ctas .btn-xl{padding:16px 28px;font-size:1rem;min-height:56px}
html body .hero-ctas .btn-white{box-shadow:0 12px 30px rgba(0,0,0,.25),0 0 0 4px rgba(255,255,255,.12)}
html body .hero-ctas .btn-ghost-white{border:1.5px solid rgba(255,255,255,.55);background:rgba(255,255,255,.08);backdrop-filter:blur(6px)}
html body .hero-cta-note{margin-top:12px;opacity:.8}
html body .hero-trust{gap:10px 22px;margin-top:20px}
html body .hero-card{height:500px;overflow:hidden;border:1px solid rgba(255,255,255,.18);box-shadow:0 40px 90px rgba(20,0,8,.45)}
html body .hero-card-bg{background-image:linear-gradient(180deg,rgba(61,11,26,.05) 0%,rgba(61,11,26,.05) 38%,rgba(61,11,26,.78) 70%,rgba(61,11,26,.94) 100%),url("/assets/img/hero-banner.jpg")!important;background-size:cover!important;background-position:center 20%!important}
html body .hero-card-profile{background:rgba(255,255,255,.92);border-radius:16px;padding:10px 14px;box-shadow:0 8px 24px rgba(0,0,0,.18)}
html body .hero-card-profile .hero-card-name{color:#3D0B1A}
html body .hero-card-profile .hero-card-cred{color:#5C4A52}
html body .hero-card .hero-stats{position:absolute;left:20px;right:20px;bottom:20px;gap:10px}
html body .hero-card .hero-stats{grid-template-columns:repeat(4,1fr)!important}
html body .hero-card .hero-stat-num{font-size:1.5rem!important}
html body .hero-card .hero-stat-label{font-size:.66rem!important;line-height:1.2}
html body .hero-card .hero-stat{padding:12px 6px!important;text-align:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(8px)}
@media (max-width:900px){
  html body .hero-inner{gap:28px;padding-top:12px;padding-bottom:36px}
  html body .hero-card{height:460px}
  html body .hero-card .hero-stats{grid-template-columns:repeat(2,1fr)!important}
  html body .hero-ctas .btn-xl{width:100%;justify-content:center}
}

/* ---------- INNER PAGE HERO (.page-header → split banner) ---------- */
html body .page-header.s360-ph{position:relative;overflow:hidden;padding:18px 0 56px;text-align:left;
  background:radial-gradient(900px 420px at 85% 10%,rgba(201,146,42,.22),transparent 60%),
             radial-gradient(700px 400px at 0% 100%,rgba(158,48,80,.55),transparent 60%),
             linear-gradient(135deg,#3D0B1A 0%,#7C1F3A 55%,#9E3050 100%)}
html body .page-header.s360-ph::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.07;
  background-image:radial-gradient(#fff 1px,transparent 1px);background-size:22px 22px}
html body .page-header.s360-ph>.container{position:relative;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:56px;align-items:center}
.s360-ph-text{min-width:0}
html body .page-header.s360-ph .breadcrumb{justify-content:flex-start;margin-bottom:18px}
.s360-ph-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.2);color:#F0D9A8;font:600 .78rem/1 var(--font-body,'DM Sans',sans-serif);letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px}
.s360-ph-eyebrow .e{font-size:1.05rem;letter-spacing:0}
html body .page-header.s360-ph h1{font-size:clamp(2rem,3.4vw,3.1rem);line-height:1.1;margin:0 0 14px;color:#fff;text-align:left}
html body .page-header.s360-ph h1+p,html body .page-header.s360-ph .s360-ph-text>p{font-size:1.08rem;line-height:1.65;color:rgba(255,255,255,.85);max-width:560px;margin:0!important;text-align:left!important;opacity:1!important}
.s360-ph-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.s360-ph-ctas a,.s360-ph-ctas button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:14px 24px;border-radius:999px;
  font:700 .98rem/1 var(--font-body,'DM Sans',sans-serif);text-decoration:none;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s;border:0}
.s360-ph-ctas .p{background:#fff;color:#7C1F3A;box-shadow:0 12px 28px rgba(0,0,0,.25),0 0 0 4px rgba(255,255,255,.12)}
.s360-ph-ctas .p:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(0,0,0,.3),0 0 0 6px rgba(255,255,255,.16)}
.s360-ph-ctas .w{background:#25D366;color:#fff;box-shadow:0 10px 24px rgba(37,211,102,.3)}
.s360-ph-ctas .w:hover{transform:translateY(-2px);background:#1fbe5b}
.s360-ph-ctas svg{width:18px;height:18px;flex:none}
.s360-ph-proof{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:20px;color:rgba(255,255,255,.82);font-size:.88rem}
.s360-ph-proof b{color:#fff}
.s360-ph-proof .stars{color:#F0C25A;letter-spacing:1px}
.s360-ph-proof .dot{width:4px;height:4px;border-radius:50%;background:rgba(255,255,255,.4)}
html body .page-header.s360-ph .s360-ph-badges{justify-content:flex-start!important;margin-top:18px!important}
html body .page-header.s360-ph .s360-ph-badges .badge{font-size:.72rem}
.s360-ph-legacy-emoji{display:none!important}
.s360-ph.has-badges .s360-ph-proof{display:none}

/* visual */
.s360-ph-visual{position:relative;min-width:0}
.s360-ph-fig{position:relative;margin:0;border-radius:28px;overflow:hidden;aspect-ratio:5/4;background:#5A1228;
  box-shadow:0 40px 80px rgba(20,0,8,.45),0 0 0 1px rgba(255,255,255,.14);transform:rotate(.6deg)}
.s360-ph-fig img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 6s ease}
.s360-ph-fig:hover img{transform:scale(1.04)}
.s360-ph-fig::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(61,11,26,.55) 100%)}
.s360-ph-glow{position:absolute;inset:-30px -30px auto auto;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(240,217,168,.45),transparent 70%);filter:blur(4px);z-index:-1}
.s360-ph-card{position:absolute;left:-26px;bottom:26px;z-index:2;display:flex;align-items:center;gap:12px;padding:12px 16px 12px 12px;border-radius:18px;background:#fff;
  box-shadow:0 18px 40px rgba(20,0,8,.3);max-width:290px;animation:s360float 5s ease-in-out infinite}
.s360-ph-card img{width:46px;height:46px;border-radius:50%;object-fit:cover;border:2px solid #F0D9A8}
.s360-ph-card b{display:block;color:#3D0B1A;font:700 .92rem/1.2 var(--font-display,'Playfair Display',serif)}
.s360-ph-card small{display:block;color:#5C4A52;font-size:.74rem;line-height:1.35;margin-top:2px}
.s360-ph-chip{position:absolute;right:-14px;top:24px;z-index:2;display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.95);
  color:#3D0B1A;font:700 .8rem/1 var(--font-body,'DM Sans',sans-serif);box-shadow:0 12px 30px rgba(20,0,8,.28);animation:s360float 5s ease-in-out infinite reverse}
.s360-ph-chip i{font-style:normal;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#E8F5EF;color:#2D7A5A;font-size:.75rem}
@keyframes s360float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@media (prefers-reduced-motion:reduce){.s360-ph-card,.s360-ph-chip{animation:none}.s360-ph-fig img{transition:none}}

@media (max-width:900px){
  html body .page-header.s360-ph{padding:12px 0 36px}
  html body .page-header.s360-ph>.container{grid-template-columns:1fr;gap:26px}
  html body .page-header.s360-ph h1{font-size:clamp(1.75rem,7.4vw,2.3rem)}
  html body .page-header.s360-ph .s360-ph-text>p{font-size:1rem}
  .s360-ph-ctas{flex-direction:column}
  .s360-ph-ctas a,.s360-ph-ctas button{width:100%}
  .s360-ph-visual{padding:0 6px}
  .s360-ph-fig{aspect-ratio:16/10;transform:none;border-radius:22px}
  .s360-ph-card{left:10px;bottom:12px;max-width:calc(100% - 20px);padding:9px 12px 9px 9px}
  .s360-ph-card img{width:38px;height:38px}
  .s360-ph-chip{right:10px;top:12px;font-size:.72rem;padding:8px 11px}
  html body .page-header.s360-ph .s360-ph-badges{display:none!important}
  .s360-ph.has-badges .s360-ph-proof{display:flex}
  .s360-ph-proof>:nth-child(4),.s360-ph-proof>:nth-child(5){display:none}
}

/* ---------- Wedding page hero ---------- */
html body section.wd-hero.s360-wd{position:relative;overflow:hidden;padding:56px 0 64px;text-align:left;
  background:radial-gradient(900px 420px at 85% 10%,rgba(201,146,42,.25),transparent 60%),linear-gradient(135deg,#3D0B1A 0%,#7C1F3A 55%,#9E3050 100%)}
html body section.wd-hero.s360-wd>.wd-wrap{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:56px;align-items:center;text-align:left}
html body section.wd-hero.s360-wd h1{color:#fff;text-align:left;font-size:clamp(1.9rem,3.3vw,3rem);line-height:1.12}
html body section.wd-hero.s360-wd .wd-sub{color:rgba(255,255,255,.86);text-align:left;margin-left:0;max-width:560px}
html body section.wd-hero.s360-wd .wd-eb{background:rgba(255,255,255,.12);color:#F0D9A8;border:1px solid rgba(255,255,255,.2)}
html body section.wd-hero.s360-wd .wd-cta{justify-content:flex-start}
html body section.wd-hero.s360-wd .wd-btn{background:#fff!important;color:#7C1F3A!important;border-color:#fff!important;box-shadow:0 12px 28px rgba(0,0,0,.25)}
html body section.wd-hero.s360-wd .wd-btn.o{background:transparent!important;color:#fff!important;border:1.5px solid rgba(255,255,255,.7)!important;box-shadow:none}
@media (max-width:900px){
  html body section.wd-hero.s360-wd{padding:28px 0 40px}
  html body section.wd-hero.s360-wd>.wd-wrap{grid-template-columns:1fr;gap:26px}
}

/* ---------- Global premium polish ---------- */
html{scroll-behavior:smooth}
::selection{background:#7C1F3A;color:#fff}
html body .card{transition:transform .25s ease,box-shadow .25s ease}
html body .card:hover{box-shadow:0 18px 44px rgba(61,11,26,.12),0 4px 14px rgba(61,11,26,.06)}
html body .btn{transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}
html body .btn:hover{transform:translateY(-1px)}
html body .btn:active{transform:translateY(0)}
html body a:focus-visible,html body button:focus-visible{outline:3px solid #C9922A;outline-offset:2px}
html body .section h2{letter-spacing:-.005em}
img{max-width:100%}

/* Mobile sticky conversion bar */
.s360-sticky{position:fixed;left:0;right:0;bottom:0;z-index:900;display:none;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));
  background:rgba(255,255,255,.96);backdrop-filter:blur(10px);box-shadow:0 -8px 24px rgba(61,11,26,.12);border-top:1px solid #E8DDD5;
  transform:translateY(110%);transition:transform .3s ease}
.s360-sticky.on{transform:none}
.s360-sticky a{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;min-height:48px;border-radius:14px;font:700 .92rem/1 var(--font-body,'DM Sans',sans-serif);text-decoration:none}
.s360-sticky .p{background:linear-gradient(135deg,#7C1F3A,#9E3050);color:#fff}
.s360-sticky .w{background:#25D366;color:#fff}
.s360-sticky svg{width:18px;height:18px}
@media (max-width:768px){
  .s360-sticky{display:flex}
  body.s360-has-sticky{padding-bottom:74px}
  body.s360-has-sticky #wa-float{display:none!important}
  body.s360-has-sticky .s360-sticky.on ~ * #wa-float{display:none!important}
}
