/* Chitragaatha Visual Builder — published page runtime only. */
.cg-builder-public-root{
  min-height:100vh;
  width:100%;
  overflow:hidden;
  background:var(--cg-builder-page-bg,#fff);
}
.cg-builder-section{
  position:relative;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  box-sizing:border-box;
}
.cg-builder-section.cg-testimonial-section{
  background-color:#8a8178;
}
.cg-builder-section.cg-testimonial-section::before{
  content:"";
  position:absolute;
  inset:-10%;
  z-index:0;
  background-image:var(--cg-section-bg,none);
  background-size:var(--cg-section-bg-size,cover);
  background-position:var(--cg-section-bg-pos,center);
  background-repeat:no-repeat;
  transform:translate3d(0,var(--cg-image-motion-y,0px),0) scale(1.04);
}
.cg-builder-card{
  position:relative;
  z-index:1;
  width:min(var(--cg-card-w,690px),calc(100% - 48px));
  min-height:var(--cg-card-min-h,290px);
  padding:var(--cg-card-pad,56px);
  border-radius:var(--cg-card-radius,0);
  background:var(--cg-card-bg,#fff);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  box-shadow:0 8px 26px rgba(0,0,0,.08);
  box-sizing:border-box;
}
.cg-builder-accent{
  width:var(--cg-accent-w,36px);
  height:var(--cg-accent-t,2px);
  margin-bottom:26px;
  background:var(--cg-accent-color,#7e9a8f);
  flex:0 0 auto;
}
.cg-builder-quote{
  width:100%;
  margin:0;
  color:var(--cg-quote-color,#403b38);
  font-size:var(--cg-quote-size,28px);
  line-height:var(--cg-quote-lh,1.55);
  letter-spacing:var(--cg-quote-ls,0);
  text-align:var(--cg-quote-align,center);
  font-family:var(--cg-quote-font,Georgia,"Times New Roman",serif);
  font-style:var(--cg-quote-style,italic);
  font-weight:var(--cg-quote-weight,400);
}
.cg-builder-byline{
  width:100%;
  margin-top:30px;
  color:var(--cg-byline-color,#78958a);
  font-size:var(--cg-byline-size,13px);
  line-height:var(--cg-byline-lh,1.5);
  letter-spacing:var(--cg-byline-ls,3.1px);
  text-align:var(--cg-byline-align,center);
  font-family:var(--cg-byline-font,var(--font,Montserrat,sans-serif));
  font-style:var(--cg-byline-style,normal);
  font-weight:var(--cg-byline-weight,600);
  text-transform:uppercase;
}

.cg-motion-node{
  transition:
    transform var(--reveal-current-duration,var(--cg-motion-duration,850ms)) var(--ease-slide,cubic-bezier(.22,1,.36,1)) var(--cg-motion-delay,0ms),
    filter var(--reveal-current-duration,var(--cg-motion-duration,850ms)) var(--ease-slide,cubic-bezier(.22,1,.36,1)) var(--cg-motion-delay,0ms),
    opacity var(--reveal-opacity-duration,700ms) ease var(--cg-motion-delay,0ms);
  will-change:opacity,transform,filter;
}
.cg-motion-node.cg-motion-fade:not(.is-motion-visible){opacity:0}
.cg-motion-node.cg-motion-fade-up:not(.is-motion-visible){opacity:0;transform:translateY(var(--cg-motion-distance,40px)) scale(.96)}
.cg-motion-node.cg-motion-fade-down:not(.is-motion-visible){opacity:0;transform:translateY(calc(-1 * var(--cg-motion-distance,40px))) scale(.96)}
.cg-motion-node.cg-motion-fade-left:not(.is-motion-visible){opacity:0;transform:translateX(calc(-1 * var(--cg-motion-distance,50px))) scale(.96)}
.cg-motion-node.cg-motion-fade-right:not(.is-motion-visible){opacity:0;transform:translateX(var(--cg-motion-distance,50px)) scale(.96)}
.cg-motion-node.cg-motion-zoom-in:not(.is-motion-visible){opacity:0;transform:scale(.93)}
.cg-motion-node.cg-motion-blur-fade:not(.is-motion-visible){opacity:0;filter:blur(3px);transform:translateY(20px)}
.cg-motion-node.cg-motion-slide-up:not(.is-motion-visible){transform:translateY(var(--cg-motion-distance,40px)) scale(.96)}
.cg-motion-node.is-motion-visible{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0)}
.cg-motion-node[data-scroll-up="reverse"][data-reveal-dir="up"].cg-motion-fade-up:not(.is-motion-visible),
.cg-motion-node[data-scroll-up="reverse"][data-reveal-dir="up"].cg-motion-slide-up:not(.is-motion-visible){transform:translateY(calc(-1 * var(--cg-motion-distance,40px))) scale(.96)}
.cg-motion-node[data-scroll-up="reverse"][data-reveal-dir="up"].cg-motion-fade-down:not(.is-motion-visible){transform:translateY(var(--cg-motion-distance,40px)) scale(.96)}
.cg-motion-node[data-scroll-up="reverse"][data-reveal-dir="up"].cg-motion-fade-left:not(.is-motion-visible),
.cg-motion-node[data-scroll-up="reverse"][data-reveal-dir="up"].cg-motion-slide-left:not(.is-motion-visible){transform:translateX(var(--cg-motion-distance,50px)) scale(.96)}
.cg-motion-node[data-scroll-up="reverse"][data-reveal-dir="up"].cg-motion-fade-right:not(.is-motion-visible),
.cg-motion-node[data-scroll-up="reverse"][data-reveal-dir="up"].cg-motion-slide-right:not(.is-motion-visible){transform:translateX(calc(-1 * var(--cg-motion-distance,50px))) scale(.96)}
.cg-motion-node[data-scroll-up="reverse"][data-reveal-dir="up"].cg-motion-zoom-in:not(.is-motion-visible),
.cg-motion-node[data-scroll-up="reverse"][data-reveal-dir="up"].cg-motion-zoom:not(.is-motion-visible){transform:scale(1.07)}
.cg-motion-node[data-scroll-up="reverse"][data-reveal-dir="up"].cg-motion-blur-fade:not(.is-motion-visible){transform:translateY(-20px);filter:blur(3px)}
.cg-motion-node[data-site-motion-role="body"].cg-motion-fade-up:not(.is-motion-visible){filter:blur(3px)}

/* Builder headings use the same masked word reveal treatment as Homepage/Story headings. */
.cg-motion-node.cg-site-motion-heading{opacity:1!important;transform:none!important;filter:none!important;transition:none!important;will-change:auto}
.cg-site-motion-word-mask{display:inline-block;overflow:hidden;vertical-align:top;margin-right:.28em;padding-bottom:.1em}
.cg-site-motion-word-inner{
  display:inline-block;opacity:0;transform:translateY(115%) rotate(2deg);
  transition:transform var(--reveal-current-duration,850ms) var(--ease-slide,cubic-bezier(.22,1,.36,1)),opacity var(--reveal-opacity-duration,700ms) ease;
  transition-delay:calc(var(--cg-motion-delay,0ms) + var(--cg-site-word-delay,0ms));
  will-change:transform,opacity;
}
.cg-motion-node.cg-site-motion-heading.is-motion-visible .cg-site-motion-word-inner{opacity:1;transform:translateY(0) rotate(0)}
.cg-motion-node.cg-site-motion-heading[data-reveal-dir="up"]:not(.is-motion-visible) .cg-site-motion-word-inner{transform:translateY(-115%) rotate(-2deg)}


@media (max-width:600px){
  .cg-builder-card{width:min(var(--cg-card-w,340px),calc(100% - 40px))}
}

@media (prefers-reduced-motion:reduce){
  html:not(.cg-ignore-reduced-motion) .cg-motion-node{transition:none!important;opacity:1!important;transform:none!important;filter:none!important}
}


/* Hero 01 — published runtime */
.cg-builder-section.cg-hero-section{background-color:#4b463f}
.cg-builder-section.cg-hero-section::before{
  content:"";position:absolute;inset:-10%;z-index:0;
  background-image:var(--cg-hero-bg,none);
  background-size:var(--cg-hero-bg-size,cover);
  background-position:var(--cg-hero-bg-pos,center);
  background-repeat:no-repeat;
  transform:translate3d(0,var(--cg-image-motion-y,0px),0) scale(1.04)
}
.cg-hero-overlay{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:var(--cg-hero-overlay,#111);
  opacity:var(--cg-hero-overlay-opacity,.42)
}
.cg-hero-content{
  position:relative;z-index:2;width:100%;display:flex;flex-direction:column;
  box-sizing:border-box
}
.cg-hero-kicker{margin:0 0 18px;text-transform:uppercase}
.cg-hero-heading{margin:0;white-space:pre-line}
.cg-hero-text{margin:24px 0 0;max-width:90%;white-space:pre-line}
.cg-hero-button{
  display:inline-flex;align-items:center;justify-content:center;margin-top:34px;
  border-style:solid;line-height:1;text-decoration:none;text-transform:uppercase;
  box-sizing:border-box;white-space:nowrap
}
.cg-hero-content[data-align="center"] .cg-hero-heading,
.cg-hero-content[data-align="center"] .cg-hero-text{margin-left:auto;margin-right:auto}
.cg-hero-content[data-align="right"] .cg-hero-heading,
.cg-hero-content[data-align="right"] .cg-hero-text{margin-left:auto}

@media (max-width:600px){
  .cg-hero-text{max-width:100%;margin-top:18px}
  .cg-hero-button{margin-top:26px}
}


/* Shared published image motion. Final placement rules intentionally live
   after both Testimonial and Hero base pseudo-element rules so CSS order can
   no longer disable Fixed Background. */
.cg-builder-section.cg-motion-fixed::before{
  top:0;right:-10%;bottom:auto;left:-10%;
  height:var(--cg-image-motion-vh,100vh);
  transform:translate3d(0,var(--cg-image-motion-y,0px),0) scale(1.04);
  background-attachment:scroll!important;
  will-change:auto
}
.cg-builder-section.cg-motion-parallax::before{
  top:-40%;right:0;bottom:auto;left:0;width:100%;height:180%;
  transform:translate3d(0,var(--cg-image-motion-y,0px),0) scale(1.04);
  will-change:auto
}
.cg-builder-section[data-cg-image-motion-inview="true"].cg-motion-fixed::before,
.cg-builder-section[data-cg-image-motion-inview="true"].cg-motion-parallax::before{will-change:transform}


/* Editorial Image + Text 01 — published runtime */
.cg-builder-section.cg-editorial-image-text-section{
  display:flex;position:relative;overflow:hidden;box-sizing:border-box;align-items:stretch;background:#f4f0e9
}
.cg-editorial-media{position:relative;overflow:hidden;flex:0 0 auto;min-width:0;background:#ddd6cd;box-sizing:border-box}
.cg-editorial-media img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.cg-editorial-content{display:flex;flex:1 1 auto;min-width:0;box-sizing:border-box;flex-direction:column}
.cg-editorial-kicker{margin:0 0 16px;text-transform:uppercase}
.cg-editorial-heading{margin:0;white-space:pre-line}
.cg-editorial-text{margin:24px 0 0;white-space:pre-line;max-width:100%}
.cg-editorial-button{
  display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;
  margin-top:34px;border-style:solid;text-decoration:none;text-transform:uppercase;line-height:1;white-space:nowrap
}
.cg-editorial-content[data-align="center"] .cg-editorial-heading,
.cg-editorial-content[data-align="center"] .cg-editorial-text{margin-left:auto;margin-right:auto}
.cg-editorial-content[data-align="right"] .cg-editorial-heading,
.cg-editorial-content[data-align="right"] .cg-editorial-text{margin-left:auto}
@media (max-width:600px){
  .cg-editorial-text{margin-top:18px}
  .cg-editorial-button{margin-top:26px}
}


/* Editorial Story Split 01 — published runtime */
.cg-builder-section.cg-editorial-story-split-section{
  position:relative;overflow:hidden;box-sizing:border-box;width:100%;background:#bca38f
}
.cg-story-split-stage{
  position:relative;margin:0 auto;box-sizing:border-box;overflow:visible
}
.cg-story-split-image{
  position:absolute;overflow:hidden;box-sizing:border-box;z-index:1;background:rgba(255,255,255,.08)
}
.cg-story-split-image img{
  width:100%;height:100%;display:block;object-fit:cover;object-position:center
}
.cg-story-split-statement{
  position:absolute;z-index:3;box-sizing:border-box;white-space:pre-line;text-transform:uppercase
}
.cg-story-split-line{
  position:absolute;z-index:2;box-sizing:border-box;transform-origin:top center
}
.cg-story-split-body{
  position:absolute;z-index:2;box-sizing:border-box;margin:0;white-space:pre-line
}
.cg-story-split-cta{
  position:absolute;z-index:3;box-sizing:border-box;display:flex;align-items:center;
  text-decoration:none;white-space:nowrap
}
.cg-story-split-cta-arrow{display:inline-block;font-size:1.45em;line-height:.7}
.cg-story-split-secondary{z-index:1}

/* Stories Grid 01 — dynamic CMS Story index section */
.cg-builder-section.cg-stories-grid-section{display:block;box-sizing:border-box;overflow:hidden}
.cg-stories-grid-inner{margin:0 auto;box-sizing:border-box}
.cg-stories-grid-header{box-sizing:border-box}
.cg-stories-grid-kicker{margin:0;text-transform:uppercase;font-family:var(--font,Montserrat,sans-serif);line-height:1.4}
.cg-stories-grid-heading{margin:var(--cg-stories-header-gap,16px) 0 0;font-family:Georgia,"Times New Roman",serif;white-space:pre-line}
.cg-stories-grid-intro{margin:var(--cg-stories-header-gap,16px) 0 0;font-family:var(--font,Montserrat,sans-serif);white-space:pre-line}
.cg-stories-grid-cards{display:flex;flex-wrap:wrap;box-sizing:border-box;width:100%}
.cg-stories-grid-card{position:relative;display:block;overflow:hidden;min-width:0;background:#d8d0c6;text-decoration:none;color:inherit;box-sizing:border-box}
.cg-stories-grid-picture,.cg-stories-grid-card img{position:absolute;inset:0;width:100%;height:100%;display:block}
.cg-stories-grid-card img{object-fit:cover}
.cg-stories-grid-overlay{position:absolute;inset:0;z-index:1;pointer-events:none}
.cg-stories-grid-card-copy{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;box-sizing:border-box}
.cg-stories-grid-card-eyebrow,.cg-stories-grid-card-meta{font-family:var(--font,Montserrat,sans-serif);text-transform:uppercase;line-height:1.35}
.cg-stories-grid-card-title{font-family:Georgia,"Times New Roman",serif;display:block}
.cg-stories-grid-empty{flex:0 0 100%;width:100%;padding:40px;border:1px dashed rgba(100,90,80,.25);font:400 13px/1.6 var(--font,Montserrat,sans-serif);color:#746b63;text-align:center}

/* Shared Story Card behavior — CMS is canonical for covers, hover and entrance. */
.cg-motion-node.cg-motion-slide-left:not(.is-motion-visible){opacity:0;transform:translateX(calc(-1 * var(--cg-motion-distance,30px)))}
.cg-motion-node.cg-motion-slide-right:not(.is-motion-visible){opacity:0;transform:translateX(var(--cg-motion-distance,30px))}
.cg-motion-node.cg-motion-zoom:not(.is-motion-visible){opacity:0;transform:scale(.92)}
.cg-stories-grid-card{
  border:var(--story-card-border-width,0px) solid var(--story-card-border-init,transparent);
  box-shadow:var(--story-card-shadow,none);
  transition:transform var(--story-card-transition,350ms) cubic-bezier(.16,1,.3,1),box-shadow var(--story-card-transition,350ms) ease,border-color var(--story-card-transition,350ms) ease;
}
.cg-stories-grid-card:hover{transform:translateY(calc(-1 * var(--story-card-lift,0px)));box-shadow:var(--story-card-shadow-hover,var(--story-card-shadow,none));border-color:var(--story-card-border-hover,transparent)}
.cg-stories-grid-card img{transition:transform var(--story-card-transition,350ms) cubic-bezier(.16,1,.3,1)}
.cg-stories-grid-card:hover img{transform:scale(var(--story-card-zoom,1))}
.cg-stories-grid-overlay{background:var(--story-card-overlay-bg,transparent)!important;opacity:var(--story-card-overlay-init,0)!important;backdrop-filter:blur(var(--story-card-overlay-blur,0px));-webkit-backdrop-filter:blur(var(--story-card-overlay-blur,0px));transition:opacity var(--story-card-transition,350ms) ease}
.cg-stories-grid-card:hover .cg-stories-grid-overlay{opacity:var(--story-card-overlay-hover,0)!important}
.cg-stories-grid-card-copy{opacity:var(--story-card-text-init,1);align-items:var(--story-card-halign,flex-start)!important;justify-content:var(--story-card-valign,flex-end)!important;text-align:var(--story-card-text-align,left)!important;transition:opacity var(--story-card-transition,350ms) ease,transform var(--story-card-transition,350ms) cubic-bezier(.16,1,.3,1);transform:translateY(var(--story-card-copy-shift,0px))}
.cg-stories-grid-card:hover .cg-stories-grid-card-copy{opacity:var(--story-card-text-hover,1);transform:translateY(0)}
.cg-stories-grid-card-title{font-size:var(--story-card-title-size,18px)!important}
.cg-stories-grid-card-category{display:var(--story-card-category-display,none)}
.cg-stories-grid-card-location{display:var(--story-card-location-display,block)}
.cg-stories-grid-card-date{display:var(--story-card-date-display,none)}
.cg-stories-grid-card-btn{display:var(--story-card-button-display,none);margin-top:9px;padding:7px 18px;border:1px solid var(--story-card-button-border,rgba(255,255,255,.45));border-radius:999px;background:var(--story-card-button-bg,rgba(255,255,255,.18));color:var(--story-card-button-color,#fff);font:600 10px/1.2 var(--font,Montserrat,sans-serif);letter-spacing:1.4px;text-transform:uppercase}
.cg-stories-grid-card{color:#fff}
.cg-stories-grid-card-eyebrow,.cg-stories-grid-card-meta{color:rgba(255,255,255,.88)}
.cg-stories-grid-card-title{color:#fff}

/* Patch 21 — Dynamic Testimonials */
.cg-dynamic-testimonials-section{display:flex;align-items:center;justify-content:center;box-sizing:border-box;overflow:hidden}
.cg-dynamic-testimonials-inner{margin:0 auto;box-sizing:border-box;color:var(--dt-text,#342f2b)}
.cg-dynamic-testimonial-card{position:relative;box-sizing:border-box;background:var(--dt-card-bg,#fff);padding:var(--dt-pad,40px);border-radius:var(--dt-radius,0);text-align:var(--dt-align,center);min-width:0}
.cg-dynamic-testimonial-card blockquote{margin:0;font:400 var(--dt-quote-size,30px)/var(--dt-quote-lh,1.5) Georgia,"Times New Roman",serif;color:var(--dt-text,#342f2b)}
.cg-dynamic-testimonial-mark{display:block;color:var(--dt-accent,#7e9a8f);font:400 46px/1 Georgia,"Times New Roman",serif;margin-bottom:12px}
.cg-dynamic-testimonial-name{margin-top:22px;color:var(--dt-accent,#7e9a8f);font:600 var(--dt-name-size,13px)/1.4 var(--font,Montserrat,sans-serif);letter-spacing:.16em;text-transform:uppercase}
.cg-dynamic-testimonial-meta{margin-top:6px;color:var(--dt-meta,#7c7168);font:500 var(--dt-meta-size,10px)/1.5 var(--font,Montserrat,sans-serif);letter-spacing:.1em;text-transform:uppercase}
.cg-dynamic-testimonials-grid{display:grid}
.cg-dynamic-testimonial-split{display:flex;align-items:stretch}
.cg-dynamic-testimonial-split.side-right{flex-direction:row-reverse}.cg-dynamic-testimonial-split.side-top{flex-direction:column}.cg-dynamic-testimonial-split.side-bottom{flex-direction:column-reverse}
.cg-dynamic-testimonial-photo{flex:0 0 var(--dt-image-w,46%);min-height:260px;overflow:hidden;border-radius:var(--dt-image-radius,0);background:#d7d0c8}
.cg-dynamic-testimonial-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:var(--dt-image-pos,center)}
.cg-dynamic-testimonial-split .cg-dynamic-testimonial-card{flex:1;display:flex;flex-direction:column;justify-content:center}
.cg-dynamic-testimonial-split.no-image .cg-dynamic-testimonial-card{width:100%}
.cg-dynamic-testimonials-empty{padding:36px;border:1px dashed rgba(90,80,70,.3);text-align:center;font:400 12px/1.6 var(--font,Montserrat,sans-serif);color:#746b63}

/* Patch 29-30: Custom Composition published sections */
.cg-custom-composition-section{position:relative;overflow:hidden;width:100%;box-sizing:border-box}
.cg-custom-composition-stage{position:relative;width:100%;height:100%;min-height:inherit;box-sizing:border-box}
.cg-custom-composition-item{position:absolute;box-sizing:border-box;overflow-wrap:anywhere}
.cg-custom-composition-item h2{margin:0;font:inherit;color:inherit;line-height:inherit;letter-spacing:inherit}
.cg-custom-composition-item img,.cg-custom-composition-item video,.cg-custom-composition-item iframe{display:block;width:100%;height:100%;min-height:inherit;border:0;border-radius:inherit}
.cg-custom-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;width:auto;min-width:max-content}


/* Patch 33.1 — section background video */
.cg-builder-section.cg-has-section-background-video{position:relative;overflow:hidden}.cg-section-background-video-layer{position:absolute;inset:-12%;z-index:0;pointer-events:none;overflow:hidden;transform:translate3d(0,var(--cg-image-motion-y,0px),0);will-change:transform}.cg-section-background-video-media{position:absolute;inset:0;width:100%;height:100%;border:0;pointer-events:none}.cg-section-background-video-overlay{position:absolute;inset:0;pointer-events:none}.cg-builder-section.cg-has-section-background-video>:not(.cg-section-background-video-layer){position:relative;z-index:1}
