/* Encantando — official Instagram palette */
:root{
  --encantando-pink:#F7A8C8;
  --encantando-pink-hover:#EF94BA;
  --encantando-pink-title:#D978A5;
  --encantando-lilac:#BFA7F2;
  --encantando-lilac-text:#8F72C9;
  --encantando-blue:#8FD7F4;
  --encantando-peach:#FFC6A8;
  --encantando-cream:#FFF6EE;
  --encantando-cream-soft:#FFFBF7;
  --encantando-gold:#D8B36A;
  --encantando-ink:#66586B;
  --encantando-muted:#817584;

  --cream:var(--encantando-cream);
  --warm-white:var(--encantando-cream-soft);
  --rose:var(--encantando-pink);
  --rose-dark:var(--encantando-ink);
  --lilac:var(--encantando-lilac);
  --blue:var(--encantando-blue);
  --peach:var(--encantando-peach);
  --gold:var(--encantando-gold);
  --gold-light:#D8B36A52;
  --ink:var(--encantando-ink);
  --muted:var(--encantando-muted);
  --line:#BFA7F252;
  --blush:#F7A8C82E;
  --shadow:0 12px 32px #BFA7F21A;
  --candy-shadow:0 2px 5px #BFA7F22E;
}

body{background:var(--encantando-cream);color:var(--encantando-ink)}
main>section{position:relative;isolation:isolate;overflow:hidden}
main>section>.wrap{position:relative;z-index:1}
.site-header{background:#FFF6EEF5;border-bottom-color:var(--line)}
.main-nav a{color:var(--encantando-ink)}
.main-nav a:after{background:var(--encantando-pink)}
.menu-toggle{background:var(--encantando-cream);border-color:var(--line)}
.menu-toggle span{background:var(--encantando-lilac-text)}
.brand-name{color:var(--encantando-pink)}
.brand-signature{color:var(--encantando-muted)}

.hero{
  background:
    radial-gradient(ellipse at 82% 24%,#BFA7F24A,transparent 54%),
    radial-gradient(ellipse at 70% 84%,#8FD7F43D,transparent 50%),
    linear-gradient(115deg,var(--encantando-cream) 25%,#F7A8C833);
}
.hero:before{
  left:auto;right:-9%;top:-15%;width:58%;height:76%;
  background:linear-gradient(145deg,#F7A8C838,#BFA7F232 55%,#8FD7F426);
  border:0;border-radius:42% 0 52% 48%/54% 0 46% 52%;
  clip-path:polygon(8% 0,100% 0,100% 90%,84% 86%,70% 92%,55% 87%,39% 94%,24% 88%,10% 94%,0 87%);
  opacity:.72;
}
.hero:after{
  content:'';position:absolute;z-index:0;left:-7%;bottom:-34px;width:38%;height:105px;
  background:linear-gradient(110deg,#FFC6A82E,#F7A8C83D);
  clip-path:polygon(0 24%,12% 31%,25% 20%,39% 34%,53% 23%,68% 37%,83% 25%,100% 36%,100% 100%,0 100%);
}
.hero-veil{background:linear-gradient(90deg,#FFF6EEF5 0%,#FFF6EEDD 40%,#FFF6EE38 78%),linear-gradient(0deg,var(--encantando-cream),transparent 28%)}
.hero h2.candy-title{font-size:clamp(42px,4.2vw,64px);line-height:1.1;margin-bottom:24px}
.hero-copy .hero-actions .button{min-width:min(100%,230px)}
.eyebrow,.section-heading .eyebrow{color:var(--encantando-gold)}
.hero-description,.service-note,.section-intro,.portfolio-difference,.visual-caption{color:var(--encantando-muted)}
.market-line,.value-list{color:var(--encantando-ink)}
.value-list li:before{color:var(--encantando-pink)}

.candy-title,.hero h1.candy-title,.section-heading h2,.cta-banner h2{color:var(--encantando-pink-title);text-shadow:var(--candy-shadow)}
.how-it-works .candy-title,.testimonials-section .candy-title{color:var(--encantando-lilac-text)}
.portfolio .section-heading h2,.cta-banner h2{color:var(--encantando-pink-title)}

.button-primary,.cta-banner .button-primary{
  background:var(--encantando-pink);
  border-color:var(--encantando-pink);
  color:var(--encantando-ink);
  box-shadow:inset 0 0 0 3px #FFF6EE80,0 5px 18px #F7A8C83D;
}
.button-primary:hover,.cta-banner .button-primary:hover{background:var(--encantando-pink-hover);border-color:var(--encantando-pink-hover);color:var(--encantando-ink)}
.button-outline,.cta-banner .button-outline{
  background:var(--encantando-cream);
  border-color:var(--encantando-lilac);
  color:var(--encantando-lilac-text);
  box-shadow:inset 0 0 0 3px #FFFFFF7A;
}
.button-outline:hover,.cta-banner .button-outline:hover{background:#BFA7F226;color:var(--encantando-lilac-text)}

.portfolio{background:var(--encantando-cream-soft);border-color:var(--line)}
.portfolio-first{padding-top:clamp(34px,4.5vw,58px)}
.portfolio-first .section-heading{margin-bottom:18px}
.portfolio-first .section-heading h1{font-size:clamp(38px,4vw,58px);line-height:1.08}
.portfolio-first .section-intro{margin-top:12px}
.portfolio:before{
  content:'';position:absolute;z-index:0;right:-110px;top:12%;width:250px;height:360px;
  border-radius:58% 42% 46% 54%/44% 57% 43% 56%;
  background:#8FD7F41C;transform:rotate(12deg);
}
.portfolio:after{
  content:'';position:absolute;z-index:0;left:-130px;bottom:8%;width:280px;height:240px;
  border-radius:48% 52% 64% 36%/55% 38% 62% 45%;
  background:#FFC6A821;transform:rotate(-9deg);
}
.orbit-glow{background:radial-gradient(ellipse,#BFA7F23D,transparent 70%)}
.orbit-controls{color:var(--encantando-lilac-text)}
.orbit-controls button,.motion-toggle{background:var(--encantando-cream);border-color:var(--encantando-blue);color:var(--encantando-lilac-text)}
.phone,.orbit-card{border-color:var(--encantando-gold);background:linear-gradient(125deg,var(--encantando-lilac),var(--encantando-cream) 40%,var(--encantando-pink));box-shadow:0 18px 34px #BFA7F229}
.filter{background:var(--encantando-cream);border-color:var(--encantando-lilac);color:var(--encantando-lilac-text)}
.filter:hover{background:#BFA7F226;color:var(--encantando-lilac-text)}
.filter.active{background:var(--encantando-pink);border-color:var(--encantando-pink);color:var(--encantando-ink);box-shadow:inset 0 0 0 2px #FFF6EE99}
.invite-cover{border-color:var(--gold-light)}
.invite-card h3{color:var(--encantando-lilac-text)}

.invitation-types{background:linear-gradient(180deg,var(--encantando-cream),#F7A8C820)}
.invitation-types:before{
  content:'';position:absolute;z-index:0;left:-8%;top:-44px;width:45%;height:118px;
  background:#F7A8C82E;
  clip-path:polygon(0 0,100% 0,96% 56%,82% 64%,68% 53%,53% 68%,37% 57%,21% 70%,0 59%);
}
.invitation-types:after{
  content:'';position:absolute;z-index:0;right:-90px;bottom:-70px;width:260px;height:220px;
  border-radius:61% 39% 52% 48%/39% 58% 42% 61%;background:#BFA7F224;
}
.type-card,.type-card:nth-child(n){border-color:#BFA7F252;box-shadow:0 10px 26px #BFA7F217}
.type-card:nth-child(1){background:linear-gradient(150deg,var(--encantando-cream-soft),#F7A8C824)}
.type-card:nth-child(2){background:linear-gradient(150deg,var(--encantando-cream-soft),#BFA7F229)}
.type-card:nth-child(3){background:linear-gradient(150deg,var(--encantando-cream-soft),#8FD7F429)}
.type-card:nth-child(4){background:linear-gradient(150deg,var(--encantando-cream-soft),#FFC6A829)}
.type-card h3{color:var(--encantando-lilac-text)}
.type-card p{color:var(--encantando-muted)}
.feature-icon{color:var(--encantando-pink)}
.type-card:nth-child(2) .feature-icon{color:var(--encantando-lilac-text)}
.type-card:nth-child(3) .feature-icon{color:var(--encantando-blue)}
.type-card:nth-child(4) .feature-icon{color:var(--encantando-gold)}

.how-it-works{background:var(--encantando-cream-soft)}
.how-it-works:before,.how-it-works:after{content:'';position:absolute;z-index:0;border-radius:50%}
.how-it-works:before{left:-165px;top:18%;width:310px;height:410px;background:#BFA7F21F;transform:rotate(18deg)}
.how-it-works:after{right:-150px;bottom:7%;width:290px;height:330px;background:#8FD7F41C;transform:rotate(-14deg)}
.step{background:linear-gradient(140deg,var(--encantando-cream),#BFA7F217);border-color:var(--line)}
.step-number,.step-icon{color:var(--encantando-pink)}
.step h3{color:var(--encantando-lilac-text)}
.step p{color:var(--encantando-muted)}
.step:after{color:var(--encantando-lilac)}

.occasions-section{background:var(--encantando-cream)}
.occasions-box{background:linear-gradient(130deg,#8FD7F41C,#BFA7F21F);border-color:var(--line)}
.occasions-grid button{color:var(--encantando-lilac-text)}
.occasions-grid button:hover{background:#F7A8C826}
.occasions-grid button:nth-child(3n+2){color:var(--encantando-pink)}
.occasions-grid button:nth-child(3n){color:var(--encantando-blue)}

.commercial-section{background:linear-gradient(120deg,var(--encantando-cream),#8FD7F417)}
.commercial-section:before{
  content:'✦';position:absolute;z-index:0;right:8%;top:14%;color:var(--encantando-gold);
  font-size:22px;opacity:.48;transform:rotate(12deg);
}
.commercial-card{background:#FFF6EEF0;border-color:var(--gold-light);box-shadow:0 12px 32px #BFA7F217}
.commercial-list li:before{color:var(--encantando-pink)}
.cta-section{background:var(--encantando-cream)}
.cta-banner{background:linear-gradient(115deg,#F7A8C8E8 0%,var(--encantando-pink) 45%,#BFA7F2C9 100%);border-color:var(--encantando-gold);color:var(--encantando-ink);box-shadow:inset 0 0 0 4px #FFF6EEA8,0 16px 38px #BFA7F226}
.cta-banner:before{
  content:'';position:absolute;z-index:0;right:-8%;top:-48%;width:47%;height:190%;
  border-radius:52% 48% 43% 57%/42% 55% 45% 58%;
  background:#FFF6EE38;transform:rotate(12deg);
}
.cta-banner:after{
  content:'✦';position:absolute;z-index:0;right:7%;bottom:13%;color:var(--encantando-gold);
  font-size:20px;opacity:.55;
}
.cta-banner>*{position:relative;z-index:1}
.cta-content p{color:var(--encantando-ink)}

.testimonials-section{background:linear-gradient(180deg,var(--encantando-cream),#BFA7F21C)}
.testimonials-section:before{
  content:'';position:absolute;z-index:0;left:-120px;bottom:-90px;width:330px;height:260px;
  border-radius:58% 42% 36% 64%/48% 62% 38% 52%;background:#F7A8C824;
}
.testimonials-empty,.testimonial-card{background:var(--encantando-cream-soft);border-color:var(--line);color:var(--encantando-muted)}
.faq-section{background:var(--encantando-cream)}
.faq-grid details{background:var(--encantando-cream-soft);border-color:var(--line)}
.faq-grid summary{color:var(--encantando-lilac-text)}
.faq-grid summary span{color:var(--encantando-pink)}
.faq-grid details p{color:var(--encantando-muted)}

.site-footer{background:linear-gradient(120deg,#F7A8C829,var(--encantando-cream) 55%,#BFA7F229);border-color:var(--line)}
.footer-main h3{color:var(--encantando-pink)}
.footer-description,.footer-contact p,.footer-social p,.footer-bottom{color:var(--encantando-muted)}
.social-links button,.social-links a{background:var(--encantando-cream);color:var(--encantando-lilac-text);border-color:var(--encantando-lilac)}
.footer-bottom{border-color:var(--line)}

.floating-contact{background:var(--encantando-cream);color:#25D366;border-color:var(--encantando-gold);box-shadow:inset 0 0 0 4px #F7A8C84A,0 5px 22px #BFA7F238}
dialog{background:var(--encantando-cream);color:var(--encantando-ink);border-color:var(--gold-light)}
dialog h2{color:var(--encantando-pink)}
.toast{background:var(--encantando-cream-soft);border-color:var(--gold-light)}

@media(max-width:700px){
  body{background-color:var(--encantando-cream)}
  .main-nav{background:var(--encantando-cream)}
  .portfolio{
    background-color:var(--encantando-cream-soft);
    background-image:
      url('../assets/images/mobile-envelope-watermark.svg'),
      url('../assets/images/mobile-magic-trail.svg'),
      radial-gradient(circle at 9% 18%,#F7A8C81F 0 3px,transparent 4px),
      radial-gradient(circle at 92% 38%,#D8B36A24 0 2px,transparent 3px);
    background-repeat:no-repeat;
    background-position:right -86px top 118px,left -92px top 430px,left top,right top;
    background-size:205px auto,245px auto,145px 210px,150px 260px;
  }
  .portfolio:before{
    right:-108px;top:48%;width:230px;height:230px;border-radius:0;
    background:url('../assets/images/mobile-envelope-watermark.svg') center/contain no-repeat;
    opacity:.42;transform:rotate(9deg);
  }
  .portfolio:after{
    content:'E';display:block;left:-54px;bottom:12%;width:auto;height:auto;
    border-radius:0;background:none;color:#BFA7F2;opacity:.075;
    font-family:Georgia,'Times New Roman',serif;font-size:190px;font-style:italic;line-height:1;
    transform:rotate(-9deg);
  }
  .hero{
    background-image:
      url('../assets/images/mobile-magic-trail.svg'),
      url('../assets/images/mobile-envelope-watermark.svg'),
      radial-gradient(ellipse at 82% 24%,#BFA7F24A,transparent 54%),
      radial-gradient(ellipse at 70% 84%,#8FD7F43D,transparent 50%),
      linear-gradient(115deg,var(--encantando-cream) 25%,#F7A8C833);
    background-repeat:no-repeat;
    background-position:right -105px top 7%,left -105px bottom 7%,center,center,center;
    background-size:260px auto,220px auto,auto,auto,auto;
  }
  .how-it-works{
    background-image:url('../assets/images/mobile-envelope-watermark.svg'),url('../assets/images/mobile-magic-trail.svg');
    background-repeat:no-repeat;
    background-position:right -110px bottom 9%,left -105px top 8%;
    background-size:215px auto,250px auto;
  }
  .testimonials-section{
    background-image:url('../assets/images/mobile-magic-trail.svg'),linear-gradient(180deg,var(--encantando-cream),#BFA7F21C);
    background-repeat:no-repeat;
    background-position:right -115px top 8%,center;
    background-size:255px auto,auto;
  }
  .faq-section{
    background-image:url('../assets/images/mobile-envelope-watermark.svg');
    background-repeat:no-repeat;
    background-position:right -118px bottom 5%;
    background-size:220px auto;
  }
  .hero-veil{background:linear-gradient(180deg,#FFF6EEF5,#FFF6EEDB 48%,#FFF6EE52 80%,var(--encantando-cream))}
  .hero:before{right:-34%;top:-6%;width:94%;height:54%;opacity:.48}
  .hero:after{left:-24%;width:72%;height:74px;bottom:-22px;opacity:.62}
  .invitation-types:before{left:-28%;width:86%;height:82px;opacity:.62}
  .invitation-types:after{right:-160px;opacity:.55}
  .how-it-works:before{left:-235px;opacity:.56}
  .how-it-works:after{right:-225px;opacity:.5}
  .commercial-section:before{right:5%;top:6%;font-size:17px}
  .testimonials-section:before{left:-220px;opacity:.5}
  .cta-banner:before{right:-28%;width:76%;opacity:.72}
  .portfolio-first{padding-top:26px}
  .portfolio-first .section-heading{margin-bottom:8px}
  .portfolio-first .section-heading h1{font-size:34px}
  .portfolio-first .section-intro{max-width:330px;margin-top:8px;font-size:14px;line-height:1.5}
  .portfolio-first .orbit-stage{margin-top:-8px}
  .hero h2.candy-title{font-size:clamp(34px,9.2vw,46px);line-height:1.1}
  .hero-copy .hero-actions .button{width:100%}
}
