:root{
  --cream:#FFF6E9;
  --cream-2:#FBF0DC;
  --saffron:#F07E16;
  --saffron-deep:#D96500;
  --mustard:#F4B400;
  --maroon:#6E1F2C;
  --maroon-deep:#4A1220;
  --royal:#1F4E9C;
  --royal-deep:#16356E;
  --green:#0E7A5F;
  --wa:#16863C;
  --wa-bright:#1FAF50;
  --ink:#3B2E26;
  --ink-soft:#6E5D50;
  --line:rgba(110,31,44,.1);
  --shadow:0 14px 40px -18px rgba(74,42,20,.28);
  --shadow-sm:0 8px 22px -12px rgba(74,42,20,.18);
  --serif:'Fraunces', Georgia, 'Times New Roman', serif;
  --sans:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --display:'Yatra One', var(--sans);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

html{scroll-behavior:smooth;scroll-padding-top:96px}

body{
  font-family:var(--sans);
  font-size:16px;
  line-height:1.6;
  color:var(--ink);
  background:var(--cream);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font-family:inherit;border:none;background:none;cursor:pointer}
ul,ol{list-style:none}

::selection{background:var(--saffron);color:#fff}

:focus-visible{outline:3px solid var(--saffron);outline-offset:2px;border-radius:6px}

.container{max-width:1200px;margin:0 auto;padding:0 24px}
.container-narrow{max-width:820px}

.section{padding:clamp(70px,9vw,112px) 0}
.section-tone{background:var(--cream-2)}

.pattern-bg{
  background-color:var(--cream);
  background-image:radial-gradient(rgba(240,126,22,.11) 1.3px,transparent 1.4px),radial-gradient(rgba(110,31,44,.06) 1.3px,transparent 1.4px);
  background-size:28px 28px,28px 28px;
  background-position:0 0,14px 14px;
}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:14px 22px;border-radius:999px;
  font-family:var(--sans);font-size:15px;font-weight:600;line-height:1;
  border:1.5px solid transparent;
  transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease,color .25s ease,border-color .25s ease;
  white-space:nowrap;
}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn-lg{padding:16px 26px;font-size:16px;gap:11px}
.btn-sm{padding:11px 16px;font-size:13.5px;gap:8px}
.btn-xl{padding:19px 36px;font-size:17px;gap:12px}

.btn-wa{
  background:linear-gradient(135deg,var(--wa-bright),var(--wa));
  color:#fff;
  box-shadow:0 10px 24px -10px rgba(22,134,60,.55);
}
.btn-wa:hover{box-shadow:0 16px 32px -10px rgba(22,134,60,.6)}
.btn-wa .wa-ico,.wa-ico{width:18px;height:18px;flex:none}
.btn-xl .wa-ico{width:21px;height:21px}

.btn-maroon{background:var(--maroon);color:#fff;box-shadow:var(--shadow-sm)}
.btn-maroon:hover{background:var(--maroon-deep)}

.btn-ghost{color:var(--cream);border-color:rgba(255,246,233,.55)}
.btn-ghost:hover{background:rgba(255,246,233,.14)}

.wa-ico{display:block}

.site-header{
  position:fixed;top:0;left:0;right:0;z-index:50;
  background:rgba(255,247,234,.88);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
  transition:box-shadow .3s ease;
}
.site-header.is-scrolled{box-shadow:0 10px 30px -18px rgba(74,42,20,.35)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 24px;max-width:1280px}

.brand{display:flex;align-items:center;gap:11px;flex:none}
.logo-kite{width:30px;height:38px;flex:none}
.logo-kite .k-sail-a{fill:var(--saffron-deep)}
.logo-kite .k-sail-b{fill:var(--mustard)}
.logo-kite .k-sail-c{fill:var(--saffron)}
.logo-kite .k-spar{stroke:var(--maroon);stroke-width:4}
.logo-kite .k-tail{stroke:var(--maroon);stroke-width:4;stroke-linecap:round;fill:none}
.logo-kite .k-tail-knot{fill:var(--maroon-deep)}
.brand-name{font-family:var(--display);font-size:21px;letter-spacing:.5px;color:var(--maroon);white-space:nowrap}

.site-nav{display:flex;align-items:center;gap:28px}
.site-nav a{
  font-size:15px;font-weight:500;color:var(--ink);
  position:relative;padding:6px 0;
}
.site-nav a::after{
  content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;
  background:var(--saffron);border-radius:2px;transition:right .3s ease;
}
.site-nav a:hover{color:var(--saffron-deep)}
.site-nav a:hover::after{right:0}

.header-actions{display:flex;align-items:center;gap:12px;flex:none}

.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:#fff}
.nav-toggle span{display:block;width:20px;height:2px;background:var(--maroon);border-radius:2px;margin:0 auto;transition:transform .3s ease,opacity .3s ease}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.hero{
  position:relative;min-height:clamp(620px,88vh,880px);
  display:flex;align-items:center;justify-content:center;
  text-align:center;overflow:hidden;padding:130px 0 90px;
}
.hero-bg{
  position:absolute;inset:0;z-index:-3;
  background-image:url("https://images.unsplash.com/photo-1727853238894-9c867c334e01?auto=format&fit=crop&w=1920&q=70&ixlib=rb-4.0.3");
  background-size:cover;background-position:center 38%;
}
.hero-overlay{
  position:absolute;inset:0;z-index:-2;
  background:linear-gradient(180deg,rgba(15,44,94,.78) 0%,rgba(19,52,112,.55) 45%,rgba(28,13,34,.74) 100%);
}
.hero::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:5px;z-index:3;
  background:linear-gradient(90deg,var(--saffron),var(--mustard),var(--green),var(--royal),var(--maroon));
  opacity:.9;
}

.cloud{position:absolute;color:#fff;z-index:0;pointer-events:none;opacity:.55}
.cloud svg{display:block;width:100%;height:auto}
.cloud-1{width:220px;top:14%;left:6%;animation:cloudDrift 46s linear infinite}
.cloud-2{width:300px;top:68%;right:-40px;opacity:.4;animation:cloudDrift 60s linear infinite reverse}
@keyframes cloudDrift{0%{transform:translateX(-24px)}50%{transform:translateX(24px)}100%{transform:translateX(-24px)}}

.hero-kite{position:absolute;z-index:1;pointer-events:none;will-change:transform}
.hero-kite .hk-sail-a{fill:var(--saffron-deep)}
.hero-kite .hk-spar{stroke:rgba(74,18,32,.85);stroke-width:3}
.hero-kite .hk-tail{fill:none;stroke:var(--maroon-deep);stroke-width:2.6;stroke-linecap:round}
.hero-kite-a{width:clamp(88px,10vw,150px);top:16%;right:12%;color:var(--royal);animation:kiteFloat 9s ease-in-out infinite}
.hero-kite-a .hk-sail-b{fill:var(--saffron)}
.hero-kite-a .hk-sail-c{fill:var(--mustard)}
.hero-kite-b{width:clamp(64px,7vw,104px);top:30%;left:10%;animation:kiteFloat 11s ease-in-out infinite .8s}
.hero-kite-b .hk-sail-b{fill:var(--royal)}
.hero-kite-b .hk-sail-c{fill:var(--green)}
.hero-kite-c{width:clamp(54px,6vw,86px);top:12%;left:26%;animation:kiteFloat 13s ease-in-out infinite 1.6s;opacity:.92}
.hero-kite-c .hk-sail-b{fill:var(--maroon)}
.hero-kite-c .hk-sail-c{fill:var(--mustard)}
.hero-kite-d{width:clamp(40px,4.6vw,64px);top:64%;right:20%;animation:kiteFloat 10s ease-in-out infinite 2.2s}
.hero-kite-d .hk-sail-b{fill:var(--green)}
.hero-kite-d .hk-sail-c{fill:var(--royal)}
@keyframes kiteFloat{
  0%,100%{transform:translateY(0) rotate(-4deg)}
  50%{transform:translateY(-22px) rotate(5deg)}
}

.hero-content{position:relative;z-index:2;max-width:860px;width:100%}

.hero-badge{
  display:inline-flex;align-items:center;gap:10px;
  background:rgba(255,246,233,.12);
  border:1px solid rgba(255,246,233,.32);
  backdrop-filter:blur(6px);
  color:var(--cream);font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  padding:9px 18px;border-radius:999px;margin-bottom:26px;
}
.hero-badge-dot{width:8px;height:8px;border-radius:50%;background:var(--mustard);animation:dotPulse 2s ease-in-out infinite}
@keyframes dotPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.45);opacity:.65}}

.hero-title{
  font-family:var(--serif);font-weight:900;
  font-size:clamp(2.5rem,6.6vw,4.5rem);
  line-height:1.12;color:var(--cream);
  text-shadow:0 3px 30px rgba(0,0,0,.3);
  margin-bottom:22px;
}
.hero-title em{
  font-style:italic;
  background-image:linear-gradient(92deg,#FFD166 0%,var(--mustard) 45%,#FF8C42 100%);
  -webkit-background-clip:text;background-clip:text;
  color:transparent;-webkit-text-fill-color:transparent;
}
@supports not (background-clip:text){
  .hero-title em{color:var(--mustard);background:none;-webkit-text-fill-color:currentColor}
}

.hero-sub{
  max-width:640px;margin:0 auto;
  color:rgba(255,246,233,.93);font-size:clamp(1rem,1.5vw,1.13rem);line-height:1.7;
}

.hero-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin:30px 0 20px}
.hero-note{color:rgba(255,246,233,.78);font-size:13.5px;font-weight:500}
.hero-note svg{vertical-align:-2px}

.announce{
  background:linear-gradient(90deg,var(--maroon),var(--maroon-deep));
  border-bottom:3px solid var(--mustard);
}
.announce a{
  display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;
  color:var(--cream);padding:13px 20px;font-size:14px;font-weight:600;text-align:center;
  transition:background-color .25s ease;
}
.announce a:hover{background:rgba(255,255,255,.06)}
.announce-kite{font-size:18px}
.announce-sep{opacity:.55}
.announce-arrow{width:16px;height:16px;transition:transform .25s ease}
.announce a:hover .announce-arrow{transform:translateX(4px)}

.sec-head{max-width:680px;margin:0 auto 46px;text-align:center}
.sec-eyebrow{
  display:inline-flex;align-items:center;gap:12px;
  font-size:12px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--saffron-deep);
  margin-bottom:14px;
}
.sec-eyebrow::before,.sec-eyebrow::after{content:"";width:26px;height:2px;background:currentColor;opacity:.5;border-radius:2px}
.sec-title{
  font-family:var(--serif);font-weight:700;
  font-size:clamp(2rem,4.6vw,3.1rem);line-height:1.16;color:var(--maroon);
}
.sec-sub{color:var(--ink-soft);font-size:1.05rem;margin-top:16px;line-height:1.7}

.product-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:26px;
}
.card{
  background:#fff;border-radius:22px;overflow:hidden;
  border:1px solid rgba(110,31,44,.08);
  box-shadow:var(--shadow-sm);
  transition:transform .35s ease,box-shadow .35s ease;
}
.card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}

.product{display:flex;flex-direction:column}
.product-media{position:relative;aspect-ratio:4/3;overflow:hidden}
.product-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.product:hover .product-media img{transform:scale(1.08)}
.product-tag{
  position:absolute;top:14px;left:14px;
  background:rgba(74,18,32,.9);color:var(--cream);
  font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  padding:6px 12px;border-radius:999px;
}
.product-body{display:flex;flex-direction:column;gap:8px;padding:20px 20px 22px;flex:1}
.product-name{font-family:var(--serif);font-size:1.2rem;font-weight:600;color:var(--maroon);line-height:1.3}
.product-desc{font-size:14px;color:var(--ink-soft);line-height:1.6}
.product-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:6px}
.product-price{
  font-family:var(--serif);font-size:1.3rem;font-weight:700;color:var(--saffron-deep);
}
.product-price::after{content:" \202F*";font-size:.62em;color:var(--ink-soft);vertical-align:super;font-family:var(--sans)}

.price-note{text-align:center;margin-top:26px;font-size:12.5px;color:var(--ink-soft)}

.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.cat-card{
  position:relative;border-radius:24px;overflow:hidden;
  aspect-ratio:4/4.4;display:flex;align-items:flex-end;
  box-shadow:var(--shadow-sm);
}
.cat-card::after{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(74,16,26,0) 30%,rgba(74,16,26,.84) 100%);
  transition:background .35s ease;
}
.cat-media{position:absolute;inset:0}
.cat-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.cat-card:hover .cat-media img{transform:scale(1.07)}
.cat-card:hover::after{background:linear-gradient(180deg,rgba(74,16,26,0) 22%,rgba(74,16,26,.95) 100%)}
.cat-emoji{
  position:absolute;top:18px;left:18px;z-index:2;
  width:50px;height:50px;border-radius:16px;
  background:rgba(255,246,233,.95);
  display:grid;place-items:center;font-size:23px;
  box-shadow:0 8px 20px -8px rgba(0,0,0,.4);
}
.cat-body{position:relative;z-index:2;padding:20px;width:100%}
.cat-body h3{font-family:var(--serif);font-size:1.35rem;font-weight:600;color:#fff;line-height:1.25}
.cat-body p{font-size:13.5px;color:rgba(255,246,233,.85);margin-top:3px}
.cat-link{
  display:inline-flex;align-items:center;gap:6px;
  margin-top:12px;font-size:13px;font-weight:700;color:var(--mustard);
}
.cat-link svg{width:15px;height:15px;transition:transform .25s ease}
.cat-card:hover .cat-link svg{transform:translateX(4px)}
.cat-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}

.fest-banner{position:relative;overflow:hidden;padding:clamp(90px,12vw,150px) 0;text-align:center}
.fest-bg{
  position:absolute;inset:0;z-index:0;
  background-image:url("https://images.unsplash.com/photo-1747155849126-cf0a2e65024c?auto=format&fit=crop&w=1600&q=70&ixlib=rb-4.0.3");
  background-size:cover;background-position:center;
}
.fest-overlay{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(31,78,156,.82),rgba(46,26,60,.86) 60%,rgba(110,31,44,.88));
}
.fest-content{position:relative;z-index:2;max-width:780px;color:var(--cream)}
.fest-eyebrow{
  font-size:12px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;
  color:#FFD166;margin-bottom:16px;
}
.fest-title{
  font-family:var(--serif);font-weight:900;
  font-size:clamp(2.1rem,5vw,3.4rem);line-height:1.15;
}
.fest-text{
  max-width:620px;margin:20px auto 34px;
  color:rgba(255,246,233,.93);font-size:1.08rem;line-height:1.7;
}
.fest-flower{position:absolute;z-index:2;pointer-events:none}
.fest-flower svg{width:110px;height:110px;display:block;animation:flowerSpin 26s linear infinite}
.fest-flower-1{color:var(--mustard);top:9%;left:7%;opacity:.55}
.fest-flower-2{color:#FFD166;bottom:10%;right:8%;opacity:.5;transform:rotate(15deg)}
.fest-flower-3{color:rgba(255,246,233,.4);bottom:14%;left:14%;opacity:.55}
.fest-flower-3 svg{width:74px;height:74px}
@keyframes flowerSpin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}

.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.why-card{
  background:#fff;border-radius:22px;padding:34px 26px;text-align:center;
  border:1px solid rgba(110,31,44,.08);box-shadow:var(--shadow-sm);
  transition:transform .35s ease,box-shadow .35s ease;
}
.why-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}
.why-ico{
  width:70px;height:70px;border-radius:50%;
  display:grid;place-items:center;margin:0 auto 20px;
}
.why-ico svg{width:34px;height:34px}
.why-ico-saffron{background:rgba(240,126,22,.14);color:var(--saffron-deep)}
.why-ico-maroon{background:rgba(110,31,44,.12);color:var(--maroon)}
.why-ico-green{background:rgba(14,122,95,.12);color:var(--green)}
.why-ico-royal{background:rgba(31,78,156,.12);color:var(--royal)}
.why-card h3{font-family:var(--serif);font-size:1.16rem;font-weight:600;color:var(--maroon)}
.why-card p{font-size:14.5px;color:var(--ink-soft);line-height:1.65;margin-top:8px}

.steps{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:36px;counter-reset:step}
.steps::before{
  content:"";position:absolute;top:42px;left:12%;right:12%;border-top:2px dashed rgba(110,31,44,.28);
}
.step{position:relative;text-align:center}
.step-num{
  width:86px;height:86px;border-radius:50%;
  display:grid;place-items:center;
  color:#fff;margin:0 auto 22px;position:relative;z-index:1;
  box-shadow:0 16px 34px -14px rgba(74,42,20,.45);
}
.step-num svg{width:36px;height:36px}
.step-num-1{background:linear-gradient(135deg,var(--saffron),var(--saffron-deep))}
.step-num-2{background:linear-gradient(135deg,var(--wa-bright),var(--wa))}
.step-num-3{background:linear-gradient(135deg,var(--maroon),var(--maroon-deep))}
.step h3{font-family:var(--serif);font-size:1.22rem;font-weight:600;color:var(--maroon)}
.step p{font-size:14.5px;color:var(--ink-soft);line-height:1.65;margin-top:8px;max-width:270px;margin-left:auto;margin-right:auto}
.steps-cta{text-align:center;margin-top:48px}

.about-wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(36px,6vw,80px);align-items:center}
.about-media{position:relative;max-width:520px;margin:0 auto}
.about-img-main{border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}
.about-img-main img{width:100%;aspect-ratio:4/4.8;object-fit:cover}
.about-img-side{
  position:absolute;left:-34px;bottom:-34px;width:46%;border-radius:22px;overflow:hidden;
  border:6px solid var(--cream);box-shadow:var(--shadow);
  transform:rotate(-4deg);
}
.about-img-side img{width:100%;aspect-ratio:4/4.6;object-fit:cover}
.about-text .sec-eyebrow::before{display:none}
.about-text .sec-eyebrow{padding-left:26px;position:relative}
.about-text .sec-eyebrow::before{display:block;position:absolute;left:0;top:50%;transform:translateY(-50%);width:16px}
.about-text .sec-eyebrow::after{display:none}
.about-text .sec-title{margin-bottom:20px}
.about-text p{color:var(--ink-soft);font-size:1.04rem;line-height:1.75;max-width:520px}
.about-list{margin:24px 0 28px;display:grid;gap:12px}
.about-list li{
  display:flex;align-items:flex-start;gap:10px;
  font-weight:500;font-size:15px;color:var(--ink);
}
.about-list li::before{
  content:"";flex:none;width:11px;height:11px;margin-top:6px;
  background:linear-gradient(135deg,var(--saffron),var(--maroon));
  clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);
  position:relative;
}

.demo-note{font-style:italic;font-size:13.5px;opacity:.85}

.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.testi{
  background:#fff;border-radius:22px;padding:30px 28px;
  border:1px solid rgba(110,31,44,.08);box-shadow:var(--shadow-sm);
  display:flex;flex-direction:column;
  transition:transform .35s ease,box-shadow .35s ease;
}
.testi:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.quote-mark{width:30px;height:23px;color:var(--saffron);margin-bottom:16px}
.testi blockquote{
  font-family:var(--serif);font-size:1.13rem;line-height:1.55;color:var(--ink);
  font-weight:500;
}
.testi figcaption{display:flex;align-items:center;gap:12px;margin-top:22px}
.avatar{
  width:46px;height:46px;border-radius:50%;flex:none;
  display:grid;place-items:center;color:#fff;font-weight:700;font-size:16px;
}
.avatar-p{background:linear-gradient(135deg,var(--saffron),var(--saffron-deep))}
.avatar-r{background:linear-gradient(135deg,var(--royal),var(--royal-deep))}
.avatar-a{background:linear-gradient(135deg,var(--green),#0A5D49)}
.testi figcaption strong{display:block;font-size:15px;color:var(--maroon)}
.testi figcaption small{font-size:12.5px;color:var(--ink-soft)}

.faq-list{display:grid;gap:14px}
.faq-item{
  background:#fff;border-radius:18px;
  border:1px solid rgba(110,31,44,.1);box-shadow:var(--shadow-sm);
  overflow:hidden;
}
.faq-q{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:19px 24px;text-align:left;
  font-size:15.5px;font-weight:600;color:var(--maroon-deep);line-height:1.45;
}
.faq-q:hover{background:#FFFDF6}
.faq-icon{width:22px;height:22px;flex:none;color:var(--saffron);transition:transform .3s ease,color .3s ease}
.faq-item.is-open .faq-icon{transform:rotate(45deg);color:var(--maroon)}
.faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
.faq-a > p{min-height:0;overflow:hidden;margin:0;padding:0 24px;color:var(--ink-soft);font-size:14.5px;line-height:1.7;transition:padding .35s ease}
.faq-item.is-open .faq-a{grid-template-rows:1fr}
.faq-item.is-open .faq-a > p{padding:0 24px 22px}

.cta-section{
  position:relative;overflow:hidden;text-align:center;
  padding:clamp(90px,13vw,160px) 0;
  background:linear-gradient(150deg,var(--royal-deep) 0%,var(--royal) 40%,var(--maroon) 100%);
}
.cta-pattern{
  position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(255,246,233,.12) 1.3px,transparent 1.4px);
  background-size:30px 30px;
}
.cta-kite{position:absolute;color:var(--mustard);opacity:.5;pointer-events:none;animation:kiteFloat 10s ease-in-out infinite}
.cta-kite svg{width:78px;height:96px;display:block}
.cta-kite-1{top:16%;right:12%;color:var(--mustard)}
.cta-kite-2{bottom:16%;left:10%;color:#FFD166;opacity:.42;animation-delay:2.4s}
.cta-kite-2 svg{width:54px;height:66px}
.cta-content{position:relative;z-index:2}
.cta-title{
  font-family:var(--serif);font-weight:900;
  font-size:clamp(2.5rem,6vw,4.2rem);line-height:1.1;color:#fff;
  text-shadow:0 4px 30px rgba(0,0,0,.28);
}
.cta-text{
  color:rgba(255,246,233,.94);font-size:clamp(1.02rem,1.6vw,1.2rem);
  max-width:560px;margin:18px auto 38px;line-height:1.7;
}
.cta-section .btn-wa{
  animation:ctaPulse 2.6s ease-in-out infinite;
}
@keyframes ctaPulse{
  0%,100%{box-shadow:0 10px 24px -10px rgba(22,134,60,.55),0 0 0 0 rgba(31,175,80,.45)}
  50%{box-shadow:0 10px 24px -10px rgba(22,134,60,.55),0 0 0 18px rgba(31,175,80,0)}
}

.contact-wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(36px,6vw,72px);align-items:center}
.contact-card{
  background:#fff;border-radius:28px;padding:clamp(30px,5vw,52px);
  text-align:center;border:1px solid rgba(110,31,44,.08);box-shadow:var(--shadow);
}
.contact-kite{width:40px;height:50px;color:var(--maroon);display:block;margin:0 auto 16px}
.contact-card h2{
  font-family:var(--serif);font-weight:700;
  font-size:clamp(1.8rem,3.4vw,2.4rem);color:var(--maroon);line-height:1.2;
}
.contact-brand{
  font-family:var(--display);font-size:17px;letter-spacing:2px;
  color:var(--saffron-deep);margin-top:12px;
}
.contact-wa{
  display:flex;align-items:center;justify-content:center;gap:12px;
  margin:24px 0 28px;
}
.contact-wa .wa-ico{width:30px;height:30px;color:var(--wa)}
.contact-wa a{font-size:clamp(1.3rem,2.6vw,1.7rem);font-weight:700;color:var(--ink);letter-spacing:.02em}
.contact-wa a:hover{color:var(--wa)}
.contact-hint{font-size:13.5px;color:var(--ink-soft);margin-top:22px;line-height:1.6}
.contact-deco{text-align:center;position:relative;padding:30px 0}
.contact-kite-big{width:min(320px,80%);height:auto;color:var(--maroon);display:block;margin:0 auto;opacity:.55}
.contact-sun{
  width:132px;height:132px;border-radius:50%;margin:0 auto 8px;
  background:radial-gradient(circle at 35% 32%,#FFE08A,var(--mustard) 55%,var(--saffron) 100%);
  box-shadow:0 0 0 22px rgba(244,180,0,.16),0 0 0 46px rgba(244,180,0,.09);
  animation:sunGlow 4s ease-in-out infinite;
}
@keyframes sunGlow{0%,100%{box-shadow:0 0 0 22px rgba(244,180,0,.16),0 0 0 46px rgba(244,180,0,.09)}50%{box-shadow:0 0 0 30px rgba(244,180,0,.2),0 0 0 56px rgba(244,180,0,.11)}}
.contact-deco > p{font-family:var(--serif);font-style:italic;font-size:1.05rem;color:var(--ink-soft);margin-top:12px}

.site-footer{
  position:relative;overflow:hidden;
  background:#3C0D1B;
  background-image:radial-gradient(rgba(255,246,233,.07) 1.2px,transparent 1.3px);
  background-size:26px 26px;
  color:rgba(255,246,233,.88);padding-top:64px;
}
.footer-kite{position:absolute;right:6%;bottom:22px;width:120px;opacity:.28;transform:rotate(8deg);pointer-events:none}
.footer-kite svg{width:100%;height:auto;display:block}
.footer-inner{
  display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;
  padding-bottom:44px;position:relative;z-index:1;
}
.footer-name{font-family:var(--display);font-size:22px;letter-spacing:1px;color:var(--mustard)}
.footer-brand p{margin-top:12px;color:rgba(255,246,233,.75);font-size:15px;max-width:300px;line-height:1.6}
.footer-col h4{
  font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:var(--mustard);margin-bottom:16px;
}
.footer-col a{
  display:block;color:rgba(255,246,233,.82);font-size:14.5px;padding:5px 0;
  transition:color .2s ease,transform .2s ease;
}
.footer-col a:hover{color:var(--mustard);transform:translateX(3px)}
.footer-copy{
  position:relative;z-index:1;
  border-top:1px solid rgba(255,246,233,.14);
  text-align:center;padding:22px 24px;font-size:13px;color:rgba(255,246,233,.6);
}

.wa-float{
  position:fixed;right:24px;bottom:24px;z-index:70;
  display:flex;align-items:center;gap:10px;
  background:linear-gradient(135deg,var(--wa-bright),var(--wa));
  color:#fff;border-radius:999px;padding:15px 22px;
  font-family:var(--sans);font-size:15px;font-weight:600;
  box-shadow:0 14px 34px -10px rgba(22,134,60,.6);
  transition:transform .25s ease,box-shadow .25s ease;
  animation:waBob 4.5s ease-in-out infinite;
}
.wa-float .wa-ico{width:22px;height:22px}
.wa-float:hover{transform:translateY(-3px);box-shadow:0 20px 42px -12px rgba(22,134,60,.7)}
@keyframes waBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}

.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s cubic-bezier(.16,.7,.3,1),transform .75s cubic-bezier(.16,.7,.3,1);transition-delay:var(--d,0s)}
.in-view{opacity:1;transform:none}

.product:nth-child(2){--d:.06s}
.product:nth-child(3){--d:.12s}
.product:nth-child(4){--d:.18s}
.product:nth-child(5){--d:.06s}
.product:nth-child(6){--d:.12s}
.product:nth-child(7){--d:.18s}
.product:nth-child(8){--d:.24s}
.cat-card:nth-child(2){--d:.06s}
.cat-card:nth-child(3){--d:.12s}
.cat-card:nth-child(4){--d:.06s}
.cat-card:nth-child(5){--d:.12s}
.cat-card:nth-child(6){--d:.18s}
.why-card:nth-child(2){--d:.06s}
.why-card:nth-child(3){--d:.12s}
.why-card:nth-child(4){--d:.18s}
.testi:nth-child(2){--d:.08s}
.testi:nth-child(3){--d:.16s}
.step:nth-child(2){--d:.1s}
.step:nth-child(3){--d:.2s}

@media (max-width:1180px){
  .product-grid{grid-template-columns:repeat(3,1fr)}
  .why-grid{grid-template-columns:repeat(2,1fr)}
}

@media (max-width:960px){
  .site-nav{
    position:fixed;top:0;right:0;bottom:0;z-index:55;
    width:min(340px,84vw);flex-direction:column;align-items:stretch;gap:0;
    background:var(--cream);padding:96px 28px 40px;
    box-shadow:-18px 0 50px -20px rgba(0,0,0,.35);
    transform:translateX(105%);transition:transform .35s cubic-bezier(.3,.7,.3,1);
    overflow-y:auto;
  }
  .site-nav.nav-open{transform:translateX(0)}
  .site-nav a{
    font-size:17px;font-weight:600;padding:15px 4px;
    border-bottom:1px solid var(--line);
  }
  .site-nav a::after{display:none}
  .nav-toggle{display:flex}
  .cat-grid{grid-template-columns:repeat(2,1fr)}
  .testi-grid{grid-template-columns:repeat(2,1fr)}
  .about-wrap{grid-template-columns:1fr}
  .about-media{margin:0 auto 60px}
  .about-img-side{left:auto;right:-12px;bottom:-12px}
  .contact-wrap{grid-template-columns:1fr}
  .footer-inner{grid-template-columns:1fr 1fr}
}

@media (max-width:860px){
  .steps{grid-template-columns:1fr;gap:40px}
  .steps::before{left:50%;top:0;bottom:0;border-top:none;border-left:2px dashed rgba(110,31,44,.28);transform:none}
}

@media (max-width:760px){
  .product-grid{grid-template-columns:repeat(2,1fr);gap:18px}
  .hero{min-height:100svh;padding:130px 0 80px}
  .hero-badge{font-size:11.5px;letter-spacing:.12em}
}

@media (max-width:560px){
  .product-grid{grid-template-columns:1fr;gap:20px}
  .product-media{aspect-ratio:4/3.2}
  .cat-grid{grid-template-columns:1fr}
  .cat-card{aspect-ratio:4/3.2}
  .why-grid{grid-template-columns:1fr}
  .testi-grid{grid-template-columns:1fr}
  .footer-inner{grid-template-columns:1fr;gap:30px}
  .wa-float{padding:16px;border-radius:50%}
  .wa-float-label{display:none}
  .wa-float::before{
    content:"";position:absolute;inset:-6px;border-radius:50%;
    border:2px solid rgba(31,175,80,.4);
    animation:ringPulse 2.2s ease-out infinite;
  }
  @keyframes ringPulse{0%{transform:scale(.9);opacity:1}70%,100%{transform:scale(1.25);opacity:0}}
  .btn-wa-header{padding:12px;border-radius:50%}
  .btn-wa-header span{display:none}
  .btn-wa-header .wa-ico{width:20px;height:20px}
  .hero-cta{flex-direction:column;align-items:center}
  .hero-cta .btn{width:100%;max-width:360px}
  .about-img-side{display:none}
  .announce a{gap:6px;font-size:13px}
}

@media (max-width:400px){
  .brand-name{font-size:18px}
  .hero-title{font-size:2.3rem}
  .steps::before{display:none}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001s !important;animation-iteration-count:1 !important;transition-duration:.001s !important;scroll-behavior:auto !important}
  .reveal{opacity:1;transform:none}
}