/* DOBERTO VCF — Brand refinement V9 */
:root{
  --brand-green:#19d993;
  --brand-green-soft:#7ce5bb;
  --brand-ink:#04100c;
}

/* Real brand mark in every header */
.brand{letter-spacing:.045em!important;text-transform:none!important}
.brand .dot{
  width:38px!important;
  height:38px!important;
  flex:0 0 38px!important;
  border-radius:12px!important;
  background:url('../icons/doberto-vcf-mark.svg?v=20260825-9') center/100% 100% no-repeat!important;
  box-shadow:0 10px 28px rgba(0,217,139,.14)!important;
  animation:none!important;
}
.brand .dot:before,.brand .dot:after{display:none!important;content:none!important}
.brand-logo{width:38px;height:38px;flex:0 0 38px;display:block;border-radius:12px;box-shadow:0 10px 28px rgba(0,217,139,.14)}

/* Less template-like surface treatment */
body:before{opacity:.16!important;background-size:54px 54px!important}
.topbar{box-shadow:0 12px 42px rgba(0,0,0,.25)!important}
.panel,.pro-step,.testi-card,.faq-item,.pro-kpi{box-shadow:0 16px 44px rgba(0,0,0,.16)!important}

/* Hero: real logo, restrained copy badge */
.hero:before{
  content:'DOBERTO VCF  •  RÉSEAU CONTACTS'!important;
  letter-spacing:.13em!important;
  color:#72dcb0!important;
  background:rgba(25,217,147,.055)!important;
}
.hero:after{
  content:''!important;
  white-space:normal!important;
  width:250px!important;
  height:290px!important;
  right:78px!important;
  border-radius:34px!important;
  background:
    url('../icons/doberto-vcf-mark.svg?v=20260825-9') center/146px 146px no-repeat,
    radial-gradient(circle at 50% 38%,rgba(64,244,179,.13),transparent 46%),
    linear-gradient(160deg,rgba(11,31,23,.96),rgba(4,13,10,.96))!important;
  border:1px solid rgba(123,234,188,.19)!important;
  box-shadow:18px 18px 0 -4px rgba(8,23,17,.92),18px 18px 0 -3px rgba(25,217,147,.09),0 28px 70px rgba(0,0,0,.28)!important;
  transform:translateY(-50%) rotate(2deg)!important;
  text-shadow:none!important;
}
.hero h1{max-width:620px!important;font-weight:700!important}
.hero p{max-width:590px!important;color:#9baaa5!important}

/* Human, product-like form treatment */
.hero + .panel{max-width:760px!important}
.hero + .panel:before{display:none!important;content:none!important}
.registration-head{margin:0 0 22px;padding:0 0 18px;border-bottom:1px solid rgba(143,255,203,.09)}
.registration-kicker{display:block;margin-bottom:7px;color:#61dfad;font-size:10px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.registration-head h2{margin:0 0 6px;font-family:'Space Grotesk',sans-serif;font-size:clamp(22px,4vw,29px);line-height:1.15;letter-spacing:-.035em;color:#eefcf6}
.registration-head p{margin:0;color:#80958d;font-size:12.5px;line-height:1.55}
label{font-size:12px!important;color:#9aa9a4!important}
input,select,.country-trigger{min-height:48px!important}
button{min-height:48px!important}

/* More editorial spacing, less generated-card feel */
.pro-how{margin-top:64px!important}
.pro-step{background:rgba(7,18,14,.7)!important}
.pro-step:after{display:none!important}
.pro-step-num{box-shadow:none!important}
.pro-step:hover{transform:translateY(-2px)!important}
.pro-trust{background:rgba(25,217,147,.035)!important}

.testi-grid{gap:12px!important}
.testi-card{background:rgba(7,18,14,.62)!important;border-color:rgba(143,255,203,.09)!important}
.testi-stars{font-size:10px!important;letter-spacing:.12em!important;opacity:.68}
.testi-quote{line-height:1.65!important}

.faq-item{background:rgba(7,18,14,.58)!important;border-color:rgba(143,255,203,.09)!important}
.faq-item summary{font-weight:650!important}

/* Clean sponsor treatment */
.sponsor-panel{opacity:.84!important;border-style:solid!important;background:rgba(255,255,255,.018)!important}
.sponsor-panel:before{content:'PUBLICITÉ'!important;font-size:9px!important;letter-spacing:.16em!important;opacity:.65}
.sponsor-cta{box-shadow:none!important}

/* Tables/admin feel like a real product console */
table{border-collapse:separate!important;border-spacing:0!important}
th{font-size:10px!important;letter-spacing:.09em!important;text-transform:uppercase!important;color:#82958e!important}
td{font-size:13px!important}
.pro-kpi{background:rgba(7,18,14,.74)!important}
.pro-kpi-label{letter-spacing:.09em!important}
.pro-list-toolbar{background:rgba(7,18,14,.58)!important}

/* Footer/legal */
.pro-footer{opacity:.92}
.pro-footer a{text-decoration:none!important}
.legal-page .brand:before{
  content:'';
  display:inline-block;
  width:38px;
  height:38px;
  margin-right:10px;
  border-radius:12px;
  vertical-align:middle;
  background:url('../icons/doberto-vcf-mark.svg?v=20260825-9') center/100% 100% no-repeat;
}

/* Tour must remain fully usable above Android/iOS system bars */
.tour-tooltip{overscroll-behavior:contain}
@media(max-width:680px){
  .tour-tooltip{
    width:calc(100vw - 24px)!important;
    max-width:none!important;
    max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important;
    overflow-y:auto!important;
    padding:18px 18px calc(18px + env(safe-area-inset-bottom))!important;
    border-radius:20px!important;
  }
  .tour-footer{
    position:sticky;
    bottom:calc(-18px - env(safe-area-inset-bottom));
    z-index:2;
    margin:14px -18px calc(-18px - env(safe-area-inset-bottom));
    padding:12px 18px calc(14px + env(safe-area-inset-bottom));
    background:linear-gradient(180deg,rgba(8,20,15,.76),#07110d 36%);
    border-top:1px solid rgba(143,255,203,.08);
  }
  .tour-actions{gap:7px!important}.tour-next{min-height:40px!important;padding:8px 13px!important}.tour-skip{min-height:40px!important}
}

@media(max-width:820px){
  .hero{padding-right:280px!important}
  .hero:after{right:34px!important;width:190px!important;height:230px!important;background-size:112px 112px,auto,auto!important}
}
@media(max-width:680px){
  .topbar{top:8px!important;margin:8px 10px 0!important}
  .brand{font-size:14px!important}
  .brand .dot,.brand-logo{width:34px!important;height:34px!important;flex-basis:34px!important}
  .hero{min-height:auto!important;padding:48px 24px 180px!important;text-align:left!important}
  .hero:after{top:auto!important;bottom:24px!important;right:24px!important;width:132px!important;height:132px!important;transform:none!important;border-radius:24px!important;background-size:82px 82px,auto,auto!important;box-shadow:10px 10px 0 -3px rgba(8,23,17,.92),10px 10px 0 -2px rgba(25,217,147,.08)!important}
  .hero:before{font-size:9px!important}
  .hero h1{font-size:36px!important}
}
