@import url('https://fonts.googleapis.com/css2?family=Hanken+Grotesk:wght@400;500;600;700;800&display=swap');

/* ===== ADHD Detective — global scoped stylesheet =====
   Typography & colors now live in the Elementor widget settings (Style tab).
   This sheet only carries what Elementor cannot express natively:
   layout grids, spacing rhythm, hover motion, animations, breakpoint fixes. */
html{scroll-behavior:smooth}
body{background:#EFF4F7;font-family:'Hanken Grotesk',system-ui,sans-serif;color:#2C4257;-webkit-font-smoothing:antialiased}

/* Layout container resets (applied to every adhd container) */
.adhd-con{padding:0!important;gap:0!important}

/* Section shells: 1240px page column */
.adhd-sec{max-width:1240px!important;margin:0 auto!important;width:100%}

/* Eyebrow spacing */
.adhd-eyebrow{margin-bottom:16px}

/* Headings — balance only (size/weight/color set in widget) */
.adhd-h1 .elementor-heading-title{text-wrap:balance}
.adhd-h1{margin-bottom:24px}

/* Body text rhythm */
.adhd-body p{margin:0 0 18px}
.adhd-body p:last-child{margin-bottom:0}

/* Buttons — motion & underline kill only (colors/padding/radius set in widget) */
.adhd-btn-fill .elementor-button,.adhd-btn-outline .elementor-button,.adhd-btn-purple .elementor-button,.adhd-btn-outline-light .elementor-button,.adhd-arrow-link .elementor-button,.adhd-nav-menu a,.adhd-logo a{text-decoration:none!important}
.adhd-btn-fill .elementor-button,.adhd-btn-outline .elementor-button,.adhd-btn-purple .elementor-button,.adhd-btn-outline-light .elementor-button{transition:background-color .18s,color .18s,border-color .18s,transform .18s;will-change:transform}
.adhd-btn-fill .elementor-button:hover,.adhd-btn-outline .elementor-button:hover,.adhd-btn-purple .elementor-button:hover{transform:translateY(-2px)}

/* Arrow link (hero "Services →") — underline & icon slide (color/size set in widget) */
.adhd-arrow-link .elementor-button{background:none!important;border:none;border-radius:0;padding:0 0 2px;border-bottom:1.5px solid rgba(23,38,63,.25)}
.adhd-arrow-link .elementor-button-icon{transition:transform .25s ease;display:inline-block}
.adhd-arrow-link .elementor-button:hover .elementor-button-icon{transform:translateX(5px)}
.adhd-arrow-link .elementor-button-icon svg{width:14px;height:14px;fill:currentColor}

/* Button rows */
.adhd-btn-row{display:flex!important;flex-direction:row!important;align-items:center;gap:24px!important;flex-wrap:wrap}
.adhd-btn-row--webinar{gap:14px!important}
.adhd-btn-row--center{justify-content:center;gap:18px!important}

/* ===== Header ===== */
.adhd-nav{position:sticky!important;top:0;z-index:50;background:rgba(239,244,247,.9)!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(23,38,63,.1)}
.adhd-nav-inner{max-width:1240px!important;margin:0 auto!important;width:100%;display:flex!important;flex-direction:row!important;align-items:center;justify-content:space-between;padding:18px 56px!important}
.adhd-logo img{height:46px;width:auto;display:block}
.adhd-nav-right{display:flex!important;flex-direction:row!important;align-items:center;gap:34px!important;width:auto!important}
.adhd-nav-menu a,.adhd-nav-menu .xpro-elementor-nav-menu a{color:#55677E!important;font-weight:600!important;font-size:15px!important;letter-spacing:.01em;transition:color .18s;text-decoration:none}
.adhd-nav-menu a:hover,.adhd-nav-menu .xpro-elementor-nav-menu a:hover{color:#2C4257!important;background:transparent!important}

/* ===== Hero ===== */
.adhd-hero{display:grid!important;grid-template-columns:1.15fr .85fr;gap:56px!important;padding:80px 56px 76px!important;align-items:center}
.adhd-hero-p p{margin:0}

/* Portrait + floating accent */
.adhd-portrait-wrap{position:relative!important}
.adhd-float-accent{position:absolute!important;inset:-14px -14px 22px 22px;background:#65BEC2!important;border-radius:16px;opacity:.24;z-index:0;animation:adhdFloatY 7s ease-in-out infinite}
.adhd-portrait{position:relative;z-index:1;border-radius:16px;overflow:hidden;background:#DCE7EC;aspect-ratio:4/5}
.adhd-portrait img{width:100%!important;height:100%!important;object-fit:cover;object-position:top;display:block;border-radius:16px}

/* ===== About ===== */
.adhd-about{display:grid!important;grid-template-columns:.8fr 1.2fr;gap:56px!important;padding:78px 56px!important;align-items:start;scroll-margin-top:84px}
.adhd-about .adhd-eyebrow{margin-bottom:16px}
.adhd-sig{margin-top:26px!important;padding-top:22px!important;border-top:1px solid rgba(23,38,63,.14);display:flex!important;flex-direction:row!important;align-items:center;gap:14px!important;flex-wrap:wrap}
.adhd-sig-name p,.adhd-sig-role p{margin:0}

/* ===== Services ===== */
.adhd-services-bg{background:#F7FAFC!important;scroll-margin-top:64px}
.adhd-services-inner{padding:78px 56px!important}
.adhd-sec-head{max-width:640px;margin-bottom:48px!important}
.adhd-svc-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:26px!important}
.adhd-card{background:#EFF4F7!important;border:1px solid rgba(23,38,63,.1);border-radius:14px;padding:32px!important;transition:transform .28s cubic-bezier(.22,.61,.36,1),box-shadow .28s cubic-bezier(.22,.61,.36,1),border-color .28s}
.adhd-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px -22px rgba(44,66,87,.55);border-color:rgba(101,190,194,.6)!important}
.adhd-card--alt{background:#F7FAFC!important;padding:34px 30px!important}
.adhd-icon-circle{width:46px!important;height:46px;border-radius:50%;background:rgba(101,190,194,.20);display:flex!important;align-items:center;justify-content:center;margin-bottom:16px}
.adhd-icon-circle img{width:23px!important;height:23px!important}
.adhd-svc-list ul{list-style:none;margin:0;padding:0}
.adhd-svc-list li{position:relative;padding-left:20px;margin-bottom:10px}
.adhd-svc-list li:last-child{margin-bottom:0}
.adhd-svc-list li::before{content:"";position:absolute;left:2px;top:8px;width:6px;height:6px;border-radius:50%;background:#537896}

/* ===== Process ===== */
.adhd-process{padding:78px 56px!important;scroll-margin-top:64px}
.adhd-proc-intro p{margin:0 0 16px}
.adhd-proc-intro p:last-child{margin-bottom:0}
.adhd-proc-grid{display:grid!important;grid-template-columns:repeat(3,1fr);gap:26px!important}
.adhd-proc-p p{margin:0}

/* ===== Webinars ===== */
.adhd-webinars-sec{padding:0 56px 78px!important;scroll-margin-top:84px}
.adhd-webinar-panel{display:grid!important;grid-template-columns:.85fr 1.15fr;border-radius:18px;overflow:hidden;background:#2C4257!important}
.adhd-webinar-logo{background:#fff!important;display:flex!important;align-items:center;justify-content:center;padding:48px 40px!important}
.adhd-webinar-logo img{width:100%;max-width:300px;height:auto;display:block}
.adhd-webinar-body{padding:52px 48px!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center}
.adhd-webinar-p p{margin:0}

/* ===== Contact ===== */
.adhd-contact{padding:80px 56px!important;text-align:center;scroll-margin-top:64px;background:#DCEEF0!important}
.adhd-contact .adhd-eyebrow{margin-bottom:16px}

/* ===== Footer ===== */
.adhd-footer{padding:34px 56px!important;display:flex!important;flex-direction:row!important;align-items:center;justify-content:space-between;border-top:1px solid rgba(23,38,63,.1);gap:20px!important;flex-wrap:wrap}
.adhd-footer-logo img{height:30px;width:auto;display:block}
.adhd-footer-text p{margin:0}

/* ===== Motion ===== */
/* Scroll-reveal is frontend-only: never hide elements inside the Elementor editor preview */
body:not(.elementor-editor-active) .adhd-reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1)}
body:not(.elementor-editor-active) .adhd-reveal.in{opacity:1;transform:none}
body:not(.elementor-editor-active) .adhd-hero-in{animation:adhdHeroRise .9s cubic-bezier(.22,.61,.36,1) both}
body.elementor-editor-active .adhd-float-accent{animation:none}
@keyframes adhdHeroRise{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
@keyframes adhdFloatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@media(prefers-reduced-motion:reduce){
  .adhd-reveal,.adhd-hero-in,.adhd-float-accent{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}
  .adhd-card:hover,.adhd-btn-fill .elementor-button:hover,.adhd-btn-outline .elementor-button:hover,.adhd-btn-purple .elementor-button:hover{transform:none!important}
}

/* ===== Responsive (design breakpoint: 820px) ===== */
@media(max-width:820px){
  .adhd-hero,.adhd-about,.adhd-svc-grid,.adhd-proc-grid,.adhd-webinar-panel{grid-template-columns:1fr!important}
  .adhd-hero,.adhd-about,.adhd-services-inner,.adhd-process,.adhd-webinars-sec,.adhd-contact,.adhd-footer{padding-left:24px!important;padding-right:24px!important}
  .adhd-nav-inner{padding-left:24px!important;padding-right:24px!important}
}
/* H1 40px for the 768–820 band; below 768 the widget's own mobile size (40px) applies */
@media(min-width:768px) and (max-width:820px){
  .adhd-h1 .elementor-heading-title{font-size:40px!important}
}

/* No horizontal scroll guard */
html,body{overflow-x:clip}

/* ===== Header shell: make the XPRO wrapper sticky (sticky must live on body's direct child) ===== */
header.xpro-theme-builder-header{position:sticky;top:0;z-index:50}
body.admin-bar header.xpro-theme-builder-header{top:32px}

/* ===== Desktop menu row ===== */
.adhd-nav-menu .xpro-elementor-horizontal-navbar-nav{gap:34px;align-items:center}
@media (min-width:821px){
  .adhd-nav-menu .xpro-elementor-horizontal-navbar-nav>li{margin:0}
  .adhd-nav-menu .xpro-elementor-horizontal-navbar-nav>li:not(.adhd-menu-book)>a{margin:0;padding:0;min-height:0;border-bottom:none}
  .adhd-nav-menu .xpro-elementor-horizontal-navbar-nav>li.adhd-menu-book>a{margin:0;min-height:0;border:1.5px solid #2C4257;border-radius:30px}
  .adhd-nav-menu .xpro-elementor-horizontal-navbar-nav>li.adhd-menu-book>a:hover{border-color:#65BEC2}
}

/* Book now pill (menu item .adhd-menu-book) */
.adhd-nav-menu .adhd-menu-book>a{border:1.5px solid #2C4257;color:#2C4257!important;padding:9px 18px!important;border-radius:30px;font-weight:700!important;font-size:14px!important;transition:border-color .18s,color .18s,background-color .18s}
.adhd-nav-menu .adhd-menu-book>a:hover{border-color:#65BEC2;color:#3f5c73!important;background:transparent!important}

/* ===== Align XPRO hamburger breakpoint to the design's 820px =====
   XPRO 'tablet' mode drawers at <=1024; restore desktop look for 821-1024. */
@media screen and (min-width:821px) and (max-width:1024px){
  .adhd-nav-menu .xpro-elementor-horizontal-menu-responsive-tablet{position:static!important;height:auto!important;width:auto!important;max-width:none!important;right:auto;top:auto;text-align:left;background:transparent!important;padding:0!important;overflow:visible!important;z-index:auto;-webkit-transform:none!important;transform:none!important;transition:none}
  .adhd-nav-menu .xpro-elementor-horizontal-menu-responsive-tablet .xpro-elementor-horizontal-navbar-nav{flex-direction:row!important;align-items:center!important;padding-top:0!important}
  .adhd-nav-menu .xpro-elementor-horizontal-menu-responsive-tablet .xpro-elementor-horizontal-navbar-nav>li{width:auto!important}
  .adhd-nav-menu .xpro-elementor-horizontal-menu-responsive-tablet .xpro-elementor-horizontal-navbar-nav>li>a{width:auto!important;padding:0!important;border-bottom:none!important;min-height:0!important;justify-content:flex-start}
  .adhd-nav-menu .xpro-elementor-horizontal-menu-responsive-tablet .xpro-elementor-horizontal-menu-close{display:none!important}
  .adhd-nav-menu .xpro-elementor-horizontal-menu-responsive-tablet ~ .xpro-elementor-horizontal-menu-toggler-wrapper,
  .adhd-nav-menu .xpro-elementor-horizontal-menu-responsive-tablet ~ .xpro-elementor-horizontal-menu-overlay{display:none!important}
  .adhd-nav-menu .xpro-elementor-horizontal-menu-responsive-tablet .xpro-elementor-horizontal-navbar-nav>li.adhd-menu-book>a{padding:9px 18px!important;border:1.5px solid #2C4257!important;border-radius:30px}
  .adhd-nav-menu .xpro-elementor-horizontal-menu-responsive-tablet .xpro-elementor-horizontal-navbar-nav>li.adhd-menu-book>a:hover{border-color:#65BEC2!important;color:#3f5c73!important}
}

/* ===== Widget spacing (must out-rank Elementor's .e-con>.elementor-widget resets) ===== */
.elementor-widget.adhd-eyebrow{margin-bottom:16px!important}
.elementor-widget.adhd-eyebrow--hero{margin-bottom:22px!important}
.elementor-widget.adhd-h1{margin-bottom:24px!important}
.elementor-widget.adhd-hero-p{margin-bottom:34px!important;max-width:490px!important}
.adhd-about .elementor-widget.adhd-h2{margin-bottom:22px!important}
.adhd-sec-head .elementor-widget.adhd-h2{margin-bottom:0!important}
.adhd-process .elementor-widget.adhd-h2{margin-bottom:24px!important;max-width:560px!important}
.elementor-widget.adhd-proc-intro{margin-bottom:46px!important;max-width:760px!important}
.elementor-widget.adhd-icon-circle{margin-bottom:16px!important}
.elementor-widget.adhd-card-title{margin-bottom:16px!important}
.elementor-widget.adhd-proc-num{margin-bottom:14px!important}
.elementor-widget.adhd-proc-title{margin-bottom:12px!important}
.elementor-widget.adhd-webinar-title{margin-bottom:14px!important}
.elementor-widget.adhd-webinar-p{margin-bottom:28px!important}
.elementor-widget.adhd-contact-title{margin-bottom:28px!important}
.elementor-widget.adhd-body{margin-bottom:0!important}

/* Drawer close button branding */
.adhd-nav-menu .xpro-elementor-horizontal-menu-close{background:#2C4257!important;color:#EFF4F7!important;border-radius:8px}
.adhd-nav-menu .xpro-elementor-horizontal-menu-close:hover{background:#3f5c73!important}

/* Drawer branding (<=820px) */
@media screen and (max-width:820px){
  .adhd-nav-menu .xpro-elementor-horizontal-menu-responsive-tablet{background-color:#EFF4F7}
  .adhd-nav-menu .xpro-elementor-horizontal-navbar-nav{gap:0}
  .adhd-nav-menu .xpro-elementor-horizontal-navbar-nav>li>a{border-bottom:1px solid rgba(23,38,63,.1)}
  .adhd-nav-menu .adhd-menu-book>a{border:none;padding:20px 0!important;border-bottom:1px solid rgba(23,38,63,.1);border-radius:0}
}
