/* Kandyan Heritage theme — all theme-specific CSS in one file. */

.public-template-kandyan{--w-bg:#f7f0dd;--w-card:#fffaf0;--w-ink:#173b25;--w-muted:#665c49;--w-gold:#ad7a23;--w-line:rgba(173,122,35,.30);background:#f6eed9;color:var(--w-ink)}
.public-template-kandyan .wedding-page{position:relative;overflow:hidden;background:linear-gradient(180deg,#fffaf0 0,#f6eed9 45%,#efe3c2 100%)}
.public-template-kandyan .kandyan-scene{position:absolute;inset:0 0 auto;height:1000px;z-index:1;pointer-events:none;overflow:hidden;background:radial-gradient(circle at 70% 22%,rgba(238,193,86,.20),transparent 24%)}
.public-template-kandyan .kandyan-tree{position:absolute;left:-28px;top:-72px;width:min(43vw,590px);animation:kTree 9s ease-in-out infinite;transform-origin:15% 0}.public-template-kandyan .kandyan-lamps{position:absolute;left:29%;top:-8px;width:min(24vw,315px);animation:kLamp 5.5s ease-in-out infinite;transform-origin:50% 0}.public-template-kandyan .kandyan-temple{position:absolute;right:-12px;bottom:92px;width:min(46vw,590px);opacity:.92}.public-template-kandyan .kandyan-lotus-left{position:absolute;left:-30px;bottom:-40px;width:min(34vw,430px)}.public-template-kandyan .kandyan-lotus-right{position:absolute;right:-25px;bottom:-55px;width:min(34vw,420px)}
@keyframes kTree{0%,100%{transform:rotate(-.4deg)}50%{transform:rotate(.7deg)}}@keyframes kLamp{0%,100%{transform:rotate(-1.3deg)}50%{transform:rotate(1.3deg)}}
.public-template-kandyan .guest-nav{position:relative;z-index:50;background:rgba(255,250,240,.90);backdrop-filter:blur(12px);border-bottom:1px solid rgba(173,122,35,.2);color:#173b25}.public-template-kandyan .guest-brand{font-family:'Cormorant Garamond',serif;color:#173b25}.public-template-kandyan #themeToggle{display:none}
.public-template-kandyan main{position:relative;z-index:3}.public-template-kandyan .wedding-hero{min-height:920px;padding:105px 6vw 80px;background:transparent!important;color:#173b25;overflow:visible}.public-template-kandyan .wedding-hero-overlay,.public-template-kandyan .hero-ornament{display:none}.public-template-kandyan .wedding-hero-content{width:min(620px,48vw);margin-left:auto;margin-right:8vw;text-align:center;position:relative;z-index:8}.public-template-kandyan .wedding-eyebrow{font:600 16px/1.6 'Cormorant Garamond',serif;letter-spacing:.26em;color:#3d4634}.public-template-kandyan .hero-monogram{font:500 20px 'Cormorant Garamond',serif;color:#ad7a23;margin:18px 0}.public-template-kandyan .wedding-hero h1{font:400 clamp(70px,8vw,118px)/.72 'Great Vibes','Cormorant Garamond',cursive;color:#153a24;margin:28px 0 34px;text-shadow:0 1px #fff}.public-template-kandyan .wedding-hero h1 span{display:block}.public-template-kandyan .wedding-hero h1 i{display:block;font:500 22px/1 'Cormorant Garamond',serif;letter-spacing:.2em;color:#ad7a23;margin:18px 0}.public-template-kandyan .hero-intro{font:500 17px/1.7 'Cormorant Garamond',serif;letter-spacing:.05em;color:#514a3c;max-width:500px;margin:0 auto 28px}.public-template-kandyan .hero-date-line{display:inline-flex;gap:20px;align-items:center;padding:14px 26px;border-top:1px solid #ad7a23;border-bottom:1px solid #ad7a23;font:600 17px 'Cormorant Garamond',serif;letter-spacing:.12em;color:#173b25}.public-template-kandyan .hero-date-line b{color:#ad7a23}.public-template-kandyan .hero-venue{font:600 15px/1.5 'Cormorant Garamond',serif;letter-spacing:.18em;text-transform:uppercase;color:#5b4b2c;margin:18px 0 24px}.public-template-kandyan .wedding-primary-btn{background:#173b25;border-color:#173b25;color:#fff!important;border-radius:999px;box-shadow:0 10px 30px rgba(23,59,37,.18)}
.public-template-kandyan .kandyan-couple{position:absolute;left:2vw;bottom:0;width:min(38vw,520px);height:78%;background:url('assets/kandyan-couple.webp') left bottom/contain no-repeat;z-index:6;pointer-events:none;animation:kCouple 7s ease-in-out infinite}@keyframes kCouple{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.public-template-kandyan .family-invitation,.public-template-kandyan .countdown-section,.public-template-kandyan .story-section,.public-template-kandyan .wedding-gallery,.public-template-kandyan .details-section,.public-template-kandyan .rsvp-section,.public-template-kandyan .closing-section{position:relative;z-index:5;background:rgba(255,250,240,.91)!important;border-color:rgba(173,122,35,.22)}.public-template-kandyan .wedding-section,.public-template-kandyan .countdown-section{padding-top:92px;padding-bottom:92px}.public-template-kandyan .section-kicker{color:#ad7a23;letter-spacing:.22em}.public-template-kandyan h2,.public-template-kandyan .family-person h3{color:#173b25}.public-template-kandyan .countdown-grid>div,.public-template-kandyan .details-grid,.public-template-kandyan .rsvp-card{background:rgba(255,255,255,.62);border-color:rgba(173,122,35,.25);box-shadow:0 18px 50px rgba(90,68,25,.06)}.public-template-kandyan .countdown-grid strong{color:#ad7a23}.public-template-kandyan .wedding-events article{border-color:rgba(173,122,35,.25)}.public-template-kandyan .wedding-footer{background:#173b25;color:#ead9ac}.public-template-kandyan .opening-card{background:rgba(255,250,240,.96);border-color:rgba(173,122,35,.35)}.public-template-kandyan .opening-monogram{color:#173b25}.public-template-kandyan .opening-button{background:#173b25;color:#fff;border-color:#173b25}
/* Stage 36 — Kandyan Heritage story, gallery and details refinement */
.public-template-kandyan .story-section,.public-template-kandyan .wedding-gallery,.public-template-kandyan .details-section{isolation:isolate;overflow:hidden;background:linear-gradient(180deg,rgba(255,250,240,.97),rgba(246,238,217,.96))!important}
.public-template-kandyan .story-section:before,.public-template-kandyan .wedding-gallery:before,.public-template-kandyan .details-section:before{content:"";position:absolute;z-index:-1;pointer-events:none;opacity:.16;background-repeat:no-repeat;background-size:contain}
.public-template-kandyan .story-section:before{right:-90px;bottom:-120px;width:430px;height:430px;background-image:url('assets/kandyan-lotus-right.webp');background-position:right bottom;animation:kSectionFloat 12s ease-in-out infinite}
.public-template-kandyan .wedding-gallery:before{left:-110px;top:-80px;width:390px;height:390px;background-image:url('assets/kandyan-tree.webp');background-position:left top;opacity:.10;animation:kSectionFloatAlt 14s ease-in-out infinite}
.public-template-kandyan .details-section:before{right:-55px;bottom:-55px;width:440px;height:320px;background-image:url('assets/kandyan-temple.webp');background-position:right bottom;opacity:.105}
@keyframes kSectionFloat{0%,100%{transform:translate3d(0,0,0) rotate(0)}50%{transform:translate3d(-7px,-8px,0) rotate(.6deg)}}
@keyframes kSectionFloatAlt{0%,100%{transform:translate3d(0,0,0) rotate(0)}50%{transform:translate3d(8px,5px,0) rotate(-.5deg)}}
.public-template-kandyan .story-layout{align-items:center;gap:clamp(42px,6vw,90px)}
.public-template-kandyan .story-copy{position:relative;padding:46px 48px 48px;background:rgba(255,252,244,.76);border:1px solid rgba(173,122,35,.30);box-shadow:0 24px 70px rgba(72,55,25,.08)}
.public-template-kandyan .story-copy:before,.public-template-kandyan .story-copy:after{content:"";position:absolute;width:58px;height:58px;border-color:#ad7a23;opacity:.72}
.public-template-kandyan .story-copy:before{left:14px;top:14px;border-left:1px solid;border-top:1px solid}.public-template-kandyan .story-copy:after{right:14px;bottom:14px;border-right:1px solid;border-bottom:1px solid}
.public-template-kandyan .story-copy h2,.public-template-kandyan .center-heading h2{font-family:'Cormorant Garamond',serif;font-weight:500;letter-spacing:.02em;color:#173b25}
.public-template-kandyan .story-copy h2{font-size:clamp(42px,5vw,68px);margin:8px 0 12px}.public-template-kandyan .story-copy p{font:500 18px/1.9 'Cormorant Garamond',serif;color:#5f5544}.public-template-kandyan .gold-rule{width:96px;height:1px;background:#ad7a23;margin:20px 0 28px;position:relative}.public-template-kandyan .gold-rule:after{content:'✦';position:absolute;right:-18px;top:-10px;color:#ad7a23;font-size:15px;background:#fffaf0;padding:0 5px}
.public-template-kandyan .story-visual{position:relative;padding:15px;border:1px solid rgba(173,122,35,.42);background:rgba(255,250,240,.82);box-shadow:0 28px 70px rgba(43,54,31,.12);animation:kPortraitBreath 9s ease-in-out infinite}.public-template-kandyan .story-visual:before{content:"";position:absolute;inset:7px;border:1px solid rgba(173,122,35,.23);pointer-events:none}.public-template-kandyan .story-visual img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.92) contrast(.98)}@keyframes kPortraitBreath{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.public-template-kandyan .center-heading{max-width:760px;margin-left:auto;margin-right:auto}.public-template-kandyan .center-heading:before{content:'✦';display:block;color:#ad7a23;font-size:18px;margin-bottom:12px}.public-template-kandyan .center-heading h2{font-size:clamp(42px,5vw,64px);margin-top:8px}.public-template-kandyan .center-heading p{font:500 17px/1.7 'Cormorant Garamond',serif;color:#726653}
.public-template-kandyan .wedding-gallery-grid{gap:22px;margin-top:46px}.public-template-kandyan .gallery-photo{position:relative;overflow:hidden;border:1px solid rgba(173,122,35,.46)!important;background:#fffaf0;padding:8px;box-shadow:0 18px 45px rgba(63,51,26,.09);transition:transform .55s ease,box-shadow .55s ease,border-color .55s ease}.public-template-kandyan .gallery-photo:before{content:"";position:absolute;inset:13px;border:1px solid rgba(255,250,240,.72);z-index:2;pointer-events:none}.public-template-kandyan .gallery-photo img{transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .55s ease;filter:saturate(.9) sepia(.035)}@media(hover:hover){.public-template-kandyan .gallery-photo:hover{transform:translateY(-8px);box-shadow:0 28px 65px rgba(48,57,33,.15);border-color:#ad7a23}.public-template-kandyan .gallery-photo:hover img{transform:scale(1.045);filter:saturate(1)}}
.public-template-kandyan .wedding-events{max-width:900px;margin:42px auto 54px;padding:34px 38px;background:rgba(255,252,244,.78);border:1px solid rgba(173,122,35,.34);box-shadow:0 20px 56px rgba(82,66,29,.07)}.public-template-kandyan .wedding-events>.section-kicker{text-align:center;display:block;margin-bottom:20px}.public-template-kandyan .wedding-events article{display:grid;grid-template-columns:130px 1fr;gap:28px;padding:20px 8px;border-top:1px solid rgba(173,122,35,.23)}.public-template-kandyan .wedding-events article:first-child{border-top:0}.public-template-kandyan .event-time{font:600 15px/1.5 'Cormorant Garamond',serif;letter-spacing:.12em;color:#ad7a23}.public-template-kandyan .wedding-events h3{font:600 24px/1.2 'Cormorant Garamond',serif;color:#173b25;margin:0 0 4px}.public-template-kandyan .wedding-events p{color:#736550}
.public-template-kandyan .details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;background:transparent!important;border:0!important;box-shadow:none!important}.public-template-kandyan .details-grid article{position:relative;min-height:250px;padding:42px 28px 34px;text-align:center;background:linear-gradient(180deg,rgba(255,253,247,.94),rgba(250,243,224,.88));border:1px solid rgba(173,122,35,.32);box-shadow:0 18px 44px rgba(69,58,30,.07);overflow:hidden;transition:transform .45s ease,box-shadow .45s ease}.public-template-kandyan .details-grid article:before{content:"";position:absolute;left:50%;top:18px;width:62px;height:1px;background:#ad7a23;transform:translateX(-50%)}.public-template-kandyan .details-grid article:after{content:'✦';position:absolute;top:8px;left:50%;transform:translateX(-50%);color:#ad7a23;background:#fffaf0;padding:0 8px}.public-template-kandyan .detail-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;margin:5px auto 18px;border:1px solid rgba(173,122,35,.45);border-radius:50%;color:#ad7a23;font-size:22px}.public-template-kandyan .details-grid small{font:600 12px/1.4 'Cormorant Garamond',serif;letter-spacing:.22em;color:#9a6d20}.public-template-kandyan .details-grid h3{font:600 25px/1.25 'Cormorant Garamond',serif;color:#173b25;margin:8px 0 10px}.public-template-kandyan .details-grid p,.public-template-kandyan .details-grid a{font:500 16px/1.6 'Cormorant Garamond',serif;color:#6a5c47}.public-template-kandyan .details-grid a{color:#173b25;text-decoration:none;border-bottom:1px solid rgba(23,59,37,.35)}@media(hover:hover){.public-template-kandyan .details-grid article:hover{transform:translateY(-6px);box-shadow:0 28px 60px rgba(52,61,35,.12)}}
.public-template-kandyan .contact-note{margin-top:34px;font-family:'Cormorant Garamond',serif;color:#6d604b}.public-template-kandyan .contact-note a{color:#173b25}
@media(max-width:900px){.public-template-kandyan .story-layout{grid-template-columns:1fr;gap:38px}.public-template-kandyan .story-copy{padding:38px 30px}.public-template-kandyan .story-visual{max-width:620px;margin:0 auto}.public-template-kandyan .details-grid{grid-template-columns:1fr}.public-template-kandyan .details-grid article{min-height:0}.public-template-kandyan .wedding-events{padding:28px 24px}.public-template-kandyan .wedding-events article{grid-template-columns:105px 1fr;gap:18px}}
@media(max-width:900px){.public-template-kandyan .kandyan-scene{height:880px}.public-template-kandyan .kandyan-tree{width:68vw;left:-28vw;opacity:.75}.public-template-kandyan .kandyan-lamps{left:3%;width:38vw;opacity:.78}.public-template-kandyan .kandyan-temple{right:-18vw;width:70vw;opacity:.5}.public-template-kandyan .wedding-hero{min-height:900px;padding:92px 20px 70px}.public-template-kandyan .wedding-hero-content{width:min(560px,92vw);margin:0 auto}.public-template-kandyan .kandyan-couple{width:330px;height:48%;left:-80px;opacity:.28}.public-template-kandyan .wedding-hero h1{font-size:78px}.public-template-kandyan .hero-intro{font-size:16px}}
@media(max-width:520px){.public-template-kandyan .kandyan-scene{height:830px}.public-template-kandyan .kandyan-tree{width:85vw;left:-42vw}.public-template-kandyan .kandyan-lamps{width:48vw;left:-8vw}.public-template-kandyan .kandyan-temple{width:95vw;right:-42vw;opacity:1}.public-template-kandyan .kandyan-lotus-left{width:58vw;left:-13vw;bottom:-220px;opacity:1}.public-template-kandyan .kandyan-lotus-right{width:58vw;right:-13vw;bottom:-220px;opacity:1}.public-template-kandyan .wedding-hero{min-height:830px;padding-top:86px}.public-template-kandyan .wedding-hero h1{font-size:64px}.public-template-kandyan .wedding-eyebrow{font-size:12px}.public-template-kandyan .hero-date-line{font-size:14px;gap:10px;padding:12px 14px}.public-template-kandyan .kandyan-couple{width:270px;left:-45px;bottom:-220px;opacity:1}.public-template-kandyan .wedding-hero-overlay{display:none!important;background:none!important;opacity:0!important}}
@media(prefers-reduced-motion:reduce){.public-template-kandyan .kandyan-tree,.public-template-kandyan .kandyan-lamps,.public-template-kandyan .kandyan-couple,.public-template-kandyan .story-section:before,.public-template-kandyan .wedding-gallery:before,.public-template-kandyan .story-visual{animation:none!important}}
/* Stage 42 — mobile Kandyan hero continuation, corrected.
   Keep the couple in place. Continue the SAME warm ivory hero background only
   until just below the couple's feet, then begin Save the Date naturally. */
@media(max-width:520px){
  .public-template-kandyan .wedding-hero{
    z-index:7!important;
  }
  .public-template-kandyan .wedding-hero:after{
    content:""!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:100%!important;
    height:245px!important;
    background:linear-gradient(180deg,#f6eed9 0%,#f4ead2 72%,#fffaf0 100%)!important;
    box-shadow:none!important;
    z-index:0!important;
    pointer-events:none!important;
  }
  .public-template-kandyan .wedding-hero-content{z-index:8!important}
  .public-template-kandyan .hero-scroll{
    z-index:11!important;
    bottom:-185px!important;
  }
  .public-template-kandyan .kandyan-couple{z-index:10!important}
  .public-template-kandyan #countdown{
    position:relative!important;
    z-index:5!important;
    padding-top:270px!important;
    background:linear-gradient(to bottom,transparent 0 245px,rgba(255,250,240,.97) 245px 100%)!important;
  }
  /* Stage 44 — mobile right lotus: top decorative layer at couple leg level */
  .public-template-kandyan .kandyan-scene .kandyan-lotus-right{display:none!important}
  .public-template-kandyan .wedding-hero:before{
    content:""!important;
    position:absolute!important;
    right:-13vw!important;
    bottom:-220px!important;
    width:58vw!important;
    height:58vw!important;
    background:url('assets/kandyan-lotus-right.webp') right bottom/contain no-repeat!important;
    opacity:1!important;
    z-index:12!important;
    pointer-events:none!important;
  }
}


/* Kandyan Heritage editor/design cards */
.create-template-art.template-kandyan,.template-mini-kandyan{position:relative;overflow:hidden;background:linear-gradient(145deg,#fff9e9,#f2e3b9);color:#173b25;border-color:#b7872d!important}
.create-template-art.template-kandyan:before,.template-mini-kandyan:before{content:"";position:absolute;inset:auto -8% -20% 30%;height:92%;background:url('assets/kandyan-lotus-right.webp') right bottom/contain no-repeat;opacity:.62}
.create-template-art.template-kandyan span,.create-template-art.template-kandyan small,.template-mini-kandyan b,.template-mini-kandyan small{position:relative;z-index:2}
.create-template-art.template-kandyan span{font:500 28px 'Cormorant Garamond',serif;color:#173b25}.create-template-art.template-kandyan i,.template-mini-kandyan i{color:#b7872d}.create-template-art.template-kandyan small,.template-mini-kandyan small{color:#8c6420}
.design-preview-kandyan{background:radial-gradient(circle at 50% 42%,#fffdf8,#eee5cf 67%,#ddd0af)}
