/* Avant Capital palette — hero recolor only */
:root{--av-charcoal:#332F29;--av-taupe:#A58C6C;--av-ivory:#F4ECE4;--av-white:#FBFAF8}
.section_hero{background-color:var(--av-white);background-image:linear-gradient(180deg,var(--av-white) 0%,var(--av-ivory) 100%);color:var(--av-charcoal)}
.section_hero .tag,.section_hero .tag:where(.w-variant-b062a3fc-6846-6fcd-bb14-f70118f0e34a){color:var(--av-charcoal)}
.circle{background-color:var(--av-taupe)}
.section_hero .button-primary{background-color:var(--av-taupe);color:var(--av-white)}
.section_hero .link_circle,.section_hero .arrow_circle_background{background-color:var(--av-taupe)}
.section_hero .arrow_circle_background{transition:background-color .5s cubic-bezier(.455,.03,.515,.955)}
.section_hero .button-primary:hover .arrow_circle_background{background-color:var(--av-charcoal)}
/* nav: plain colours instead of the invert/difference trick used on the dark hero */
.nav_component{filter:none;mix-blend-mode:normal}
.nav_menu_link,.nav_menu_link.w--current{color:var(--av-charcoal)}
.nav_logo{width:100%;height:auto;display:block}
@media screen and (max-width:767px){
 .nav_menu,.nav_menu_container{background-color:var(--av-white)}
}
/* Explore sign stays on the right now that the paragraph is removed */
@media screen and (min-width:480px){.hero_bottom_container{justify-content:flex-end}}
/* Hero CTAs: secondary button + event link */
.av-cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}
.section_hero .button-primary.av-secondary{background-color:transparent;color:var(--av-charcoal);box-shadow:inset 0 0 0 1px var(--av-taupe)}
.section_hero .av-secondary .link_circle,.section_hero .av-secondary .arrow_circle_background{background-color:transparent}
.section_hero .av-secondary .arrow_circle_background{transition:transform .5s cubic-bezier(.455,.03,.515,.955),background-color .5s}
.section_hero .av-secondary:hover .arrow_circle_background{background-color:var(--av-ivory)}
/* Hero button hover: circle fills the whole button (100%), text colour stays put */
.section_hero .av-cta-row .arrow_circle_background{transform:scale(1)!important;transition:transform .6s cubic-bezier(.455,.03,.515,.955),background-color .6s cubic-bezier(.455,.03,.515,.955)!important}
.section_hero .av-cta-row .button-primary:hover .arrow_circle_background{transform:scale(30)!important}
.section_hero .av-cta-row .button-primary:not(.av-secondary) .text-size-regular{filter:none!important;color:var(--av-white)!important}
.av-event-link{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.5rem;color:var(--av-charcoal);text-decoration:none}
.av-event-icon{color:var(--av-taupe);flex:none}
.av-event-text{border-bottom:1px solid var(--av-taupe);padding-bottom:.125rem}
.av-event-arrow{width:.75rem;height:.75rem;flex:none}
.av-event-link:hover .av-event-text{border-bottom-color:var(--av-charcoal)}
.av-event-link{max-width:100%}
.av-event-text{min-width:0}
/* Our approach (was case study) */
.av-hide{display:none!important}
.section_cases{background-color:var(--av-white);color:var(--av-charcoal)}
.section_cases .text-size-huge{color:var(--av-taupe)}
.section_cases .button-primary.av-cta{background-color:var(--av-taupe);color:var(--av-white);transition:background-color .4s}
.section_cases .av-cta .link_circle,.section_cases .av-cta .arrow_circle_background{background-color:transparent}
.section_cases .av-cta:hover{background-color:var(--av-charcoal)}
@media screen and (min-width:992px){
 .section_cases{min-height:100vh;display:flex;align-items:center}
 .section_cases>.padding-global{width:100%}
}
.section_cases .av-cta{width:fit-content;align-self:flex-start}
/* tags: readable size + brand colour on light sections (dark variants keep their light text) */
.tag[data-wf--tag--variant="base"]{color:var(--av-charcoal)}
/* Footer: re-theme existing classes via their design tokens */
.footer-section{--base-color-neutral--white:var(--av-white);--base-color-neutral--black:var(--av-taupe);--base-color-neutral--neutral:var(--av-taupe);--base-color-neutral--neutral-darkest:var(--av-charcoal);--text-color--text-primary:var(--av-charcoal);--text-color--text-secondary:var(--av-taupe);color:var(--av-charcoal)}

/* Delhi Roadshow section (scoped) */
.section_roadshow{background-color:var(--av-white);color:var(--av-charcoal);--base-color-neutral--black:var(--av-charcoal);--base-color-neutral--neutral:rgba(165,140,108,.45);--base-color-neutral--neutral-light:rgba(165,140,108,.45)}
.roadshow_content{display:grid;grid-template-columns:1.3fr .9fr;gap:4rem;align-items:start}
.roadshow_item{display:flex;align-items:center;gap:.75rem}
.roadshow_icon{flex:none;width:3rem;height:3rem;border-radius:50%;background-color:var(--av-ivory);color:var(--av-taupe);display:flex;align-items:center;justify-content:center}
.roadshow_row{align-items:stretch}
.roadshow_row>.roadshow_item+.roadshow_item{border-left:1px solid rgba(165,140,108,.4);padding-left:1rem}
.roadshow_link{color:var(--av-taupe);text-decoration:none;border-bottom:1px solid var(--av-taupe);padding-bottom:.125rem;font-size:1.125rem}
.roadshow_link:hover{color:var(--av-charcoal);border-color:var(--av-charcoal)}
.roadshow_card{background-color:var(--av-white);border:1px solid rgba(165,140,108,.35);border-radius:1.25rem;padding:2.5rem;box-shadow:0 20px 50px rgba(51,47,41,.06)}
.roadshow_card .form_input{background-color:var(--av-white)}
.roadshow_consent{display:flex;align-items:flex-start;gap:.75rem}
.roadshow_consent input{flex:none;width:1.25rem;height:1.25rem;margin-top:.2rem;accent-color:var(--av-taupe)}
.roadshow_privacy{color:var(--av-charcoal);text-decoration:underline}
.section_roadshow .roadshow_submit{width:100%;max-width:none;border:0;font:inherit;cursor:pointer;justify-content:center;background-color:var(--av-taupe);color:var(--av-white);transition:background-color .4s}
.section_roadshow .roadshow_submit .link_circle,.section_roadshow .roadshow_submit .arrow_circle_background{background-color:transparent}
.section_roadshow .roadshow_submit:hover{background-color:var(--av-charcoal)}
@media screen and (max-width:991px){
 .roadshow_content{grid-template-columns:1fr;gap:3rem}
}
@media screen and (max-width:767px){
 .roadshow_row>.roadshow_item+.roadshow_item{border-left:0;padding-left:0}
 .roadshow_card{padding:1.5rem}
 .roadshow_row{flex-flow:column;align-items:flex-start}
}
#roadshow-form-status:empty{display:none}
/* Hero on mobile: text above the animation, animation below the content */
@media screen and (max-width:767px){
 .section_hero .padding-section-hero{position:relative;z-index:3;padding-bottom:4rem}
 .section_hero .hero_background_wrapper{align-items:flex-end}
 .section_hero .hero_bottom_container{align-items:flex-end}
}
/* Hero CTAs on mobile: two rows (primary, then secondary), each full width */
@media screen and (max-width:767px){
 .av-cta-row{flex-direction:column;align-items:stretch}
 .section_hero .av-cta-row .button-primary{max-width:none;width:100%}
}
/* "Discuss your property goals" button: full width on mobile */
@media screen and (max-width:767px){
 .section_cases .button-primary.av-cta{width:100%;max-width:none}
}
/* Footer: size the right-hand blocks to their content so they sit flush with the right edge */
.footer-section .footer_top_content>.max-width-large,
.footer-section .footer_bottom_container>.max-width-large,
.footer-section .footer_menu_wrapper>.max-width-xsmall{width:auto}
/* Footer menus: use the full width on mobile */
@media screen and (max-width:767px){
 .footer-section .footer_bottom_container>.max-width-large{width:100%}
 .footer-section .footer_menu_wrapper{width:100%;justify-content:space-between}
}

/* Hero orbit: seven concentric, slightly flattened orbit rings centred just off the hero's bottom-right corner.
   Icons travel around them in simulated 3D (position and size are driven by assets/orbit.js) and always sit above
   the ring lines. Sizes use vw so everything scales. */
.section_hero .hero_background_wrapper{height:100%;justify-content:flex-end;align-items:flex-end;pointer-events:none}
.orbit-system{--r0:7;--st:5;--k:1.8;--e:.7;--tilt:-10deg;--dx:0vw;--dy:1.5vw;--icon:clamp(55px,5.75vw,95px);position:absolute;z-index:0;right:-6vw;bottom:6vw;width:0;height:0;pointer-events:none}
.orbit{position:absolute;left:0;top:0;z-index:20;width:calc(var(--r)*2);height:calc(var(--r)*2*var(--e));border:1px solid rgba(90,72,55,.28);border-radius:50%;transform:translate(calc(-50% + var(--ox,0px)),calc(-50% + var(--oy,0px))) rotate(var(--tilt))}
.orbit-item{position:absolute;left:0;top:0;width:0;height:0;z-index:30;will-change:transform}
.orbit-icon{position:absolute;left:0;top:0;width:var(--icon);height:var(--icon);max-width:none;box-sizing:border-box;padding:4px;object-fit:contain;background:#fff;border:1px solid rgba(165,140,108,.28);border-radius:10px;transform:translate(-50%,-50%);box-shadow:0 10px 30px rgba(80,60,40,.14)}
.orbit-1{--r:calc((var(--r0) + var(--st) * 1) * 1vw * var(--k));--i:0;--ox:calc(var(--i)*var(--dx));--oy:calc(var(--i)*var(--dy))}
.orbit-2{--r:calc((var(--r0) + var(--st) * 2) * 1vw * var(--k));--i:1;--ox:calc(var(--i)*var(--dx));--oy:calc(var(--i)*var(--dy))}
.orbit-3{--r:calc((var(--r0) + var(--st) * 3) * 1vw * var(--k));--i:2;--ox:calc(var(--i)*var(--dx));--oy:calc(var(--i)*var(--dy))}
.orbit-4{--r:calc((var(--r0) + var(--st) * 4) * 1vw * var(--k));--i:3;--ox:calc(var(--i)*var(--dx));--oy:calc(var(--i)*var(--dy))}
.orbit-5{--r:calc((var(--r0) + var(--st) * 5) * 1vw * var(--k));--i:4;--ox:calc(var(--i)*var(--dx));--oy:calc(var(--i)*var(--dy))}
.orbit-6{--r:calc((var(--r0) + var(--st) * 6) * 1vw * var(--k));--i:5;--ox:calc(var(--i)*var(--dx));--oy:calc(var(--i)*var(--dy))}
.orbit-7{--r:calc((var(--r0) + var(--st) * 7) * 1vw * var(--k));--i:6;--ox:calc(var(--i)*var(--dx));--oy:calc(var(--i)*var(--dy))}
@media screen and (min-width:1700px){
 .orbit-system{--k:1.32}
}
@media screen and (max-width:767px){
 .orbit-system{display:none}   /* the orbit animation is hidden on mobile */
}
/* Shorter hero: tighter gap above the Explore sign and matching bottom spacing */
.section_hero .hero_content{grid-row-gap:0}
.section_hero .padding-section-hero{padding-bottom:5rem}
@media screen and (max-width:767px){
 .section_hero .hero_content{grid-row-gap:2.5rem}
 .section_hero .padding-section-hero{padding-bottom:4rem}
}
/* Wider logo: the updated logo is horizontal */
.nav_logo-wrapper{width:10.5rem}
@media screen and (max-width:767px){.nav_logo-wrapper{width:8.5rem}}

/* In-page navigation */
#companies,#delhi_roadshow,#case_study,#contact{scroll-margin-top:5rem}

/* Hide the Webflow badge */
.w-webflow-badge{display:none!important}
/* Mobile hamburger menu */
.av-burger{display:none;background:none;border:0;padding:.5rem;margin:-.5rem -.5rem -.5rem 0;cursor:pointer;flex-direction:column;justify-content:center;gap:5px}
.av-burger span{display:block;width:24px;height:2px;background:var(--av-charcoal);border-radius:2px;transition:transform .3s,opacity .3s}
.av-burger.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.av-burger.is-open span:nth-child(2){opacity:0}
.av-burger.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.av-mobile-menu{display:none}
@media screen and (max-width:767px){
 .nav_right-wrapper{width:auto;align-items:center}
 .av-nav-contact{display:none}
 .av-burger{display:flex}
 .nav_component{position:relative}
 .av-mobile-menu:not([hidden]){display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:var(--av-white);border-top:1px solid rgba(165,140,108,.3);box-shadow:0 20px 40px rgba(51,47,41,.08);padding:.5rem var(--_layout-spacing---padding-global--padding-global,1.25rem) 1rem}
 .av-mobile-link{padding:1rem 0;font-size:1.125rem;color:var(--av-charcoal);border-bottom:1px solid rgba(165,140,108,.2)}
 .av-mobile-link:last-child{border-bottom:0}
}

/* Navbar shows only the logo, centred */
.nav_container{justify-content:center}

/* Mobile hero: background photo, hero fills the screen (100vh) with the skyline anchored to the bottom */
@media screen and (max-width:767px){
 .section_hero{min-height:100vh;min-height:100svh;background-color:var(--av-ivory);background-image:url("hero-mob-bg.webp");background-size:cover;background-position:25% bottom;background-repeat:no-repeat}
 .section_hero .padding-section-hero{padding-bottom:4rem}
}

/* Mobile hero: pure black text, borders and icons so everything reads clearly over the photo */
@media screen and (max-width:767px){
 .section_hero{--av-charcoal:#000;color:#000}
 .section_hero .tag,.section_hero .heading-style-h1,.section_hero .explore_sign{color:#000}
 .section_hero .button-primary.av-secondary{color:#000;box-shadow:inset 0 0 0 1px #000}
 .section_hero .av-secondary .arrow_image,.section_hero .arrow_explore_icon img,.section_hero .av-event-arrow{filter:brightness(0)}
 .av-event-link{color:#000}
 .av-event-icon{color:#000}
 .av-event-link{background-color:rgba(255,255,255,.5);border-radius:var(--_border-radius---border-round);padding:.75rem 1.25rem}
 .av-event-text{border-bottom:0;padding-bottom:0}
 .section_hero .explore_sign{background-color:rgba(255,255,255,.5);border-radius:var(--_border-radius---border-round);padding:.5rem .875rem;width:fit-content}
}

/* Mobile hero: content centred vertically in the screen-height hero */
@media screen and (max-width:767px){
 .section_hero .padding-section-hero{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;padding-top:6rem;padding-bottom:4rem}
}

/* Mobile hero buttons: both the same width (the width of the longer one), not full width */
@media screen and (max-width:767px){
 .av-cta-row{display:inline-grid;grid-template-columns:1fr;width:max-content;max-width:100%;align-items:stretch}
 .section_hero .av-cta-row .button-primary{width:auto;max-width:none}
}

/* Desktop/tablet hero: fills the first screen (100vh) with the content centred vertically */
@media screen and (min-width:768px){
 .section_hero{min-height:100vh;min-height:100svh}
 .section_hero .padding-section-hero{flex:1 1 auto;display:flex;flex-direction:column;padding-top:6rem;padding-bottom:3rem}
 .section_hero .container-large{position:relative;flex:1 1 auto;display:flex;flex-direction:column;justify-content:center}
 .section_hero .hero_content{position:static;height:auto}
 .section_hero .hero_bottom_container{position:absolute;right:0;bottom:0;width:auto;z-index:3}
}
