/* Source of truth: VillaAgent Global Direction 02 — Editorial Heritage. */
:root{--va-midnight:#0B0F14;--va-gold:#D4B481;--va-ivory:#F7F4ED;--va-stone:#D9D1C6;--va-sage:#7C8A7A;--va-white:#FFFFFF;--navy:var(--va-midnight);--navy2:var(--va-midnight);--ivory:var(--va-ivory);--paper:var(--va-ivory);--gold:var(--va-gold);--ink:var(--va-midnight);--line:var(--va-stone);--serif:"Canela","Cormorant Garamond",Georgia,serif;--sans:"Avenir Next","Inter","Helvetica Neue",Arial,sans-serif}
body,button,input,select,textarea{font-family:var(--sans)}
h1,h2,h3,.stat strong,.steps strong,.cert-card strong,.preview-hero strong,.quote-villa strong,.quote-total strong,.proposal-body h3{font-family:var(--serif)}
.nav,.site-footer,.studio,.service-strip,.access,.dark-band,.partner,.issue-banner,.reviews-preview,.proposal-foot,.cert-card{background:var(--va-midnight)}
.studio-preview{background:var(--va-stone)}
.preview-bar{background:var(--va-white)}
.proposal-foot b,.service-strip div>span,.steps b{color:var(--va-gold)}
.studio-head p:last-child{color:#d3d2cb}
.site-footer .brand-stacked{width:260px;height:195px;margin-top:-15px;margin-bottom:14px}
.site-footer .brand-stacked img{width:100%;height:100%;object-fit:contain}
.site-footer .footer-links{padding-top:24px}
.site-footer p{max-width:310px}
.primary,.nav-apply,.submit-application{background:var(--va-gold);color:var(--va-midnight);border-color:var(--va-gold)}
.secondary-button{background:var(--va-midnight);color:var(--va-white);border-color:var(--va-midnight)}
.hero-actions>a:not(.primary),.editorial-link{border-bottom-color:var(--va-gold)}
.brand-icon{display:block;width:34px;height:34px;object-fit:contain;flex:none;margin-bottom:26px}
.feature-grid .brand-capability:before{display:none}
.cert-benefits .brand-capability>span{display:none}
.cert-benefits .brand-capability h3{margin-top:0}
.brand-capability{min-width:0}
.credential-identity{display:grid;grid-template-columns:240px minmax(0,1fr);align-items:center;gap:50px;padding:0 0 65px;margin-bottom:65px;border-bottom:1px solid var(--va-stone)}
.credential-identity>img{width:240px;height:240px;object-fit:contain}
.credential-identity h2{font-family:var(--serif);font-size:clamp(38px,4vw,60px);margin-bottom:20px}
.credential-identity p:not(.eyebrow){color:var(--va-muted);font-size:17px;line-height:1.8;max-width:550px}
.credential-identity .primary{margin-top:10px}
.quote-villa{background:linear-gradient(90deg,rgba(11,15,20,.78),rgba(11,15,20,.3)),url("assets/villaagent-hero.webp") center/cover}
@media(max-width:700px){.credential-identity{grid-template-columns:1fr;gap:25px;padding-bottom:40px;margin-bottom:40px}.credential-identity>img{width:190px;height:190px}.site-footer .brand-stacked{width:230px;height:173px;margin-left:-8px}.site-footer .footer-links{padding-top:0}}

/* Exact supplied logo artwork. Keep its native shape, colors and background. */
.nav .brand-image{width:243px;height:66px;padding:9px 12px;background:#F7F4ED;flex-shrink:0}
.nav .brand-image img{display:block;width:219px;height:48px;max-width:100%;object-fit:contain;filter:none}
.site-footer .brand-stacked{width:270px;height:223px;padding:0;margin:0 0 20px;background:#F7F4ED;max-width:100%}
.site-footer .brand-stacked img{width:100%;height:100%;object-fit:contain;filter:none}
.cert-card{background:#F7F4ED;color:var(--va-midnight);align-items:center;text-align:center}
.cert-card img{width:169px;height:155px;max-width:100%;margin:0 auto 24px;border:0;border-radius:0;filter:none;object-fit:contain}
.cert-card strong{color:var(--va-midnight)}
.cert-card small{color:#80603a}
.cert-card p{color:var(--va-muted)}
.credential-identity{grid-template-columns:169px minmax(0,1fr)}
.credential-identity>img{width:169px;height:155px;object-fit:contain;filter:none}
@media(max-width:700px){.credential-identity{grid-template-columns:1fr}.nav .brand-image{width:223px;height:61px;padding:8px 11px}.nav .brand-image img{width:201px;height:44px}.site-footer .brand-stacked{width:243px;height:201px;margin-left:0}}

/* Website direction: predominantly black, with white type and champagne gold.
   Preserve the approved artwork and text fonts; ivory is reserved for artwork
   plates and the illustrative agency proposal, never full-page sections. */
:root{
  color-scheme:dark;
  --va-surface:#10161C;
  --va-surface-raised:#171E25;
  --va-ink:#FFFFFF;
  --va-muted:#B8C0C6;
  --va-line:rgba(212,180,129,.25);
  --ink:var(--va-white);
  --line:var(--va-line);
}
html,body,.apply-body{background:var(--va-midnight);color:var(--va-white)}
::selection{background:var(--va-gold);color:var(--va-midnight)}
.hero,.page-hero,.intro,.white-label,.page-content,.final-cta,
.certification,.partner-intro,.faq-section,.article-layout,.apply-main{
  background:var(--va-midnight);color:var(--va-white);
}
.at-glance,.workflow,.magazine-preview,.agency-landscape,.advisor-stories,
.home-faq,.breadcrumb,.issue-banner,.reviews-preview,.service-strip{
  background:var(--va-surface);color:var(--va-white);
}
.hero-art,.hero-art:before,.hero-art:after{background:var(--va-midnight)}
.hero-art figcaption{color:var(--va-muted);border-color:var(--va-line)}
.hero h1,.page-hero h1{color:var(--va-white)}
.hero h1 em,.page-hero h1 em,h2 em,.section-title em,
.eyebrow,.eyebrow.dark,.hero .eyebrow,.page-hero .eyebrow,
.stat strong,.cert-card strong,.cert-card small,.cert-path i,
.workspace article>span,.flow-grid>article>strong,.feature-grid article:before{
  color:var(--va-gold);
}
.hero-deck,.page-hero .inner>p:last-child,.trust-row,
.stat span,.intro>div>p,.cert-head>p:last-child,.prose,.white-label p,
.cert-benefits p,.cert-card p,.workspace p,.workspace .featured p,
.feature-grid p,.dark-band .feature-grid p,.process p,.flow-grid p,
.magazine-lead>p:not(.eyebrow),.mag-card p,.twelve-stories .mag-card p,
.partner-intro p,.advisor-stories .section-head>p:last-child,
.faq-intro>p:last-child,.home-faq p,.faq-list details p,
.legal-note,.sample-note,.advisor-card p,.quote-card footer,
.studio-head p:last-child,.studio-controls>p,.form-status{
  color:var(--va-muted);
}
.hero-actions>a:not(.primary){color:var(--va-white)}
.trust-row,.intro,.at-glance,.stat,.workflow,.partner-intro,.home-faq,
.faq-section,.faq-list,.faq-list details,.credential-identity,
.process,.process article,.flow-grid,.flow-grid article,
.article-aside,.breadcrumb,.application-review{border-color:var(--va-line)}
.cert-layout,.cert-benefits,.feature-grid,.advisor-grid,.workspace{
  background:var(--va-line);border-color:var(--va-line);
}
.workspace{background:var(--va-midnight)}
.cert-benefits article,.feature-grid article,.dark-band .feature-grid article,
.workspace article,.advisor-card,.quote-card,.mag-card{
  background:var(--va-surface);color:var(--va-white);
}
.workspace .featured,.cert-card,.cert-path{background:var(--va-surface-raised);color:var(--va-white)}
.cert-path,.magazine-grid .mag-card,.quote-card,.advisor-grid{border-color:var(--va-line)}
.cert-benefits article:hover,.feature-grid article:hover,
.dark-band .feature-grid article:hover{background:var(--va-surface-raised)}
.advisor-card blockquote{color:var(--va-white)}
.advisor-card small,.mag-card span,.placeholder,.article-kicker,
.editorial-link,.article-body a,.article-aside a,.breadcrumb a,
.faq-list summary:after,.mag-card:hover h3{color:var(--va-gold)}
.mag-card small{color:var(--va-muted)}
.faq-list summary{color:var(--va-white)}
.faq-list summary:hover,.faq-list details[open] summary{color:var(--va-gold)}
.logo-wall{border-color:var(--va-line)}
.logo-wall .partner-logo{border-color:var(--va-line)}
.logo-wall .partner-logo.logo-on-dark{background:var(--va-surface-raised)}
.mini-ui{background:var(--va-midnight);color:var(--va-white)}
.mini-ui div{border-color:var(--va-line)}
.mini-ui small,.mini-ui i{color:var(--va-gold)}
.site-preview{border-color:var(--va-surface-raised)}
.preview-bar,.powered{background:var(--va-surface-raised);color:var(--va-white)}
.preview-bar b,.powered i{color:var(--va-gold)}
.studio-shell{background:var(--va-surface);color:var(--va-white)}
.studio-controls{background:var(--va-surface);border-color:var(--va-line)}
.studio-preview{background:var(--va-midnight)}
.file-button{color:var(--va-gold);border-color:var(--va-gold)}
.proposal{color-scheme:light;background:var(--va-white);color:var(--va-midnight)}
.apply-intro{background:transparent}
.apply-intro h1 em,.apply-benefits span,.form-heading,
.form-grid label em,.consent em{color:var(--va-gold)}
.application-card{background:var(--va-surface);color:var(--va-white)}
.application-card legend,.form-grid label,.form-intro strong{color:var(--va-white)}
.application-card legend{border-color:var(--va-line)}
.form-intro,.submission-note,.application-success>p:not(.eyebrow){color:var(--va-muted)}
.form-grid input,.form-grid select,.form-grid textarea,
.studio-controls input,.studio-controls select{
  background:var(--va-midnight);color:var(--va-white);border-color:#647078;
}
.form-grid input::placeholder,.form-grid textarea::placeholder{color:#9EA8AF}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--va-gold)}
.consent{background:var(--va-surface-raised);color:var(--va-muted)}
.consent input{accent-color:var(--va-gold)}
.application-review pre{background:var(--va-midnight);color:var(--va-white);border-color:var(--va-line)}
.secondary-button{background:transparent;color:var(--va-white);border-color:var(--va-gold)}
.secondary-button:hover{background:var(--va-surface-raised)}
.primary.light{background:var(--va-gold);color:var(--va-midnight)}
.submit-application span{color:var(--va-midnight)}
.submit-application:hover{background:#E1C99F;color:var(--va-midnight)}
.menu-toggle{border-color:var(--va-gold)}
a:focus-visible,button:focus-visible,summary:focus-visible,
input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--va-gold)}
dialog{background:var(--va-surface);color:var(--va-white)}
.close{color:var(--va-white)}
.partner:after{display:none}

/* Requested dark logo treatment: no light artwork plates. */
.nav .brand-image{width:239px;height:48px;padding:0;background:transparent}
.nav .brand-image img{width:239px;height:48px;filter:none}
.site-footer .brand-stacked{width:306px;height:223px;background:transparent;padding:0}
.site-footer .brand-stacked img{width:100%;height:100%}
.cert-card img,.credential-identity>img{background:transparent;filter:none}

/* Full-width photographic heroes with overlaid copy. */
.hero,.page-hero{
  display:flex;position:relative;isolation:isolate;overflow:hidden;
  min-height:690px;padding:100px 6vw;align-items:center;
  background:var(--va-midnight);color:var(--va-white);
}
.hero{min-height:790px}
.hero-copy,.page-hero .inner{
  position:relative;z-index:2;order:initial;align-self:center;
  width:100%;max-width:700px;min-width:0;padding:0;margin:0;border:0;
}
.hero h1,.page-hero h1{font-size:clamp(52px,5.7vw,88px);line-height:1.02}
.hero-deck,.page-hero .inner>p:last-child{max-width:620px;color:#EEF0F2;font-size:18px}
.hero .trust-row{color:#EEF0F2;border-color:rgba(255,255,255,.28);max-width:660px}
.hero-art{
  display:block;position:absolute;inset:0;z-index:0;order:initial;
  margin:0;width:100%;height:100%;background:var(--va-midnight);
}
.hero-art img{
  display:block;width:100%;height:100%;max-height:none;
  aspect-ratio:auto;object-fit:cover;object-position:var(--hero-position,65% 40%);
}
.hero-art:before{display:none}
.hero-art:after{
  display:block;content:"";position:absolute;inset:0;height:auto;border:0;
  background:linear-gradient(90deg,rgba(4,8,12,.9),rgba(4,8,12,.71) 40%,rgba(4,8,12,.24) 69%,rgba(4,8,12,.05));
}
.hero-art figcaption{display:none}
@media(min-width:1600px){.hero,.page-hero{min-height:820px;padding-left:max(6vw,calc((100vw - 1440px)/2))}.hero{min-height:880px}}
@media(max-width:1100px){
  .hero,.page-hero{padding:85px 6vw;min-height:670px}
  .hero-copy,.page-hero .inner{max-width:620px;padding:0}
  .hero h1,.page-hero h1{font-size:clamp(50px,6.5vw,72px)}
  .hero-art:after{background:linear-gradient(90deg,rgba(4,8,12,.91),rgba(4,8,12,.7) 53%,rgba(4,8,12,.25))}
}
@media(max-width:700px){
  .nav .brand-image{width:223px;height:45px;padding:0}
  .nav .brand-image img{width:223px;height:45px}
  .site-footer .brand-stacked{width:275px;height:200px}
  .hero,.page-hero{padding:270px 6vw 48px;min-height:740px;align-items:flex-end}
  .hero-copy,.page-hero .inner{align-self:flex-end;max-width:none;padding:0}
  .hero h1,.page-hero h1{font-size:clamp(42px,9vw,58px)}
  .hero-deck,.page-hero .inner>p:last-child{font-size:16px;line-height:1.75}
  .hero-art img{object-position:var(--hero-mobile-position,73% 25%)}
  .hero-art:after{background:linear-gradient(0deg,rgba(4,8,12,.98) 0%,rgba(4,8,12,.82) 43%,rgba(4,8,12,.22) 76%,rgba(4,8,12,.13))}
}
@media(max-width:359px){.nav .brand-image,.nav .brand-image img{width:202px;height:41px}}

/* Use the exact user-supplied primary artwork, preserving its 632:400 ratio. */
.nav,.site-footer{background:#0B0F13}
.nav{padding-top:6px;padding-bottom:6px}
.nav .brand-image{width:220px;height:auto;aspect-ratio:632/400;padding:0;background:transparent}
.nav .brand-image img{display:block;width:100%;height:auto;aspect-ratio:632/400;object-fit:contain;filter:none;transform:none}
.site-footer .brand-stacked{width:316px;height:auto;aspect-ratio:632/400;padding:0;margin:0 0 20px;background:transparent;max-width:100%}
.site-footer .brand-stacked img{display:block;width:100%;height:auto;aspect-ratio:632/400;object-fit:contain;filter:none;transform:none}
@media(max-width:700px){
  .nav .brand-image{width:176px;height:auto}
  .nav .brand-image img{width:100%;height:auto}
  .site-footer .brand-stacked{width:276px;height:auto}
}
