/* =====================================================================
   FluoroDose - Fluoride Varnish Study : page stylesheet
   Loaded by page-fluoride-varnish-study.php via wp_enqueue_style().
   Install at:  <astra-child-theme>/assets/css/fluoride-varnish-study.css

   SECTION 1 - Astra layout overrides (full-width plumbing; rarely edited).
   SECTION 2 - the landing-page design, scoped under #fds-landing so it can
               never collide with Astra / Elementor / WooCommerce styles.
   ===================================================================== */

/* ---- SECTION 1: Astra full-bleed layout overrides ------------------------
   Makes this page span the full viewport width with no sidebar, regardless of
   the theme's container settings. You normally won't need to edit this block.
   The .fds-fullbleed class is added to <body> by page-fluoride-varnish-study.php.
   ------------------------------------------------------------------------- */
.fds-fullbleed .site-content,
.fds-fullbleed .site-content > .ast-container,
.fds-fullbleed .site-content .ast-container{
  max-width:100% !important;
  width:100% !important;
  padding-left:0 !important;
  padding-right:0 !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
.fds-fullbleed #primary{
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
}
.fds-fullbleed #secondary{ display:none !important; }          /* no sidebar on this page */
.fds-fullbleed .ast-article-single,
.fds-fullbleed .ast-article-post,
.fds-fullbleed .entry-content{
  margin:0 !important;
  padding:0 !important;
  max-width:100% !important;
}
.fds-fullbleed .ast-separate-container .ast-article-single{ padding:0 !important; }
#fds-landing{ width:100%; max-width:100%; }

/* ---- SECTION 2: landing-page design (scoped to #fds-landing) -------------- */
/* Scoped to #fds-landing so theme/plugin styles cannot collide. */
#fds-landing,#fds-landing *{box-sizing:border-box;}
/* ============================================================
     CENTRIX FLUORODOSE — clinical / Swiss landing page
     Palette: clinical white, charcoal ink, single Centrix-blue
     accent reserved for data + conversion. Geometric sans.
     ============================================================ */#fds-landing{
    --ink:#15181c;
    --ink-soft:#565c66;
    --ink-faint:#878d97;
    --line:#e3e6eb;
    --line-strong:#c7ccd4;
    --paper:#ffffff;
    --paper-2:#f4f6f9;
    --paper-3:#eef1f6;
    --blue:#0a59ab;        /* primary deep Centrix blue */
    --blue-press:#08447f;
    --cyan:#0094d6;        /* brighter data accent */
    --blue-ink:#072c54;    /* darkest */
    --blue-wash:#eaf2fb;   /* tinted callout fill */

    --maxw:1440px;
    --measure:660px;
    --sans:"Helvetica Neue",Helvetica,Arial,"Segoe UI",sans-serif;
    --mono:"SFMono-Regular",ui-monospace,"Roboto Mono","DejaVu Sans Mono",Menlo,Consolas,monospace;
  }#fds-landing *{box-sizing:border-box;}#fds-landing{-webkit-text-size-adjust:100%;}#fds-landing{
    margin:0;
    font-family:var(--sans);
    color:var(--ink);
    background:var(--paper);
    line-height:1.55;
    font-size:17px;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
  }
  #fds-landing{
  background-color:#fff;                       /* fill below the fade */
  background-image:linear-gradient(
    to bottom,
    #f7f7f7 0,
    #f7f7f7 10px,                               /* solid top band */
    #fff   140px                                /* fade completes here */
  );
  background-repeat:no-repeat;
  background-size:100% 140px;                   /* fade only spans the top 140px */
}
#fds-landing img{display:block;max-width:100%;}#fds-landing a{color:var(--blue);text-decoration:none;}#fds-landing a:hover{text-decoration:underline;}#fds-landing .wrap{max-width:var(--maxw);margin:0 auto;padding:0 40px;}#fds-landing .kicker{
    font-family:var(--mono);
    font-size:12px;
    letter-spacing:.18em;
    text-transform:uppercase;
    color:var(--blue);
    margin:0 0 22px;
    font-weight:500;
  }#fds-landing .kicker.muted{color:var(--ink-faint);}#fds-landing h1,#fds-landing h2,#fds-landing h3{font-weight:700;letter-spacing:-.02em;line-height:1.04;margin:0;text-wrap:balance;}/* ---------- buttons ---------- */#fds-landing .btn-pill{
    display:inline-flex;align-items:center;gap:8px;
    background:var(--blue);color:#fff;
    font-size:14px;font-weight:600;
    padding:11px 20px;border-radius:999px;
    transition:background .15s ease;
  }#fds-landing .btn-pill:hover{background:var(--blue-press);text-decoration:none;}/* ---------- hero ---------- */#fds-landing .hero{border-bottom:1px solid var(--line);}#fds-landing .hero .wrap{
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:72px;
    padding-top:76px;padding-bottom:84px;
    align-items:start;
  }#fds-landing .hero h1{
    font-size:clamp(40px,4.6vw,62px);
    margin:0 0 26px;
  }#fds-landing .hero h1 .em{color:var(--blue);}#fds-landing .hero .lede{
    font-size:19px;color:var(--ink-soft);
    max-width:34em;margin:0 0 40px;
  }/* chart */#fds-landing .chart-card{margin-top:4px; padding-top: 10px;}#fds-landing .chart-head{display:flex;align-items:baseline; justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px;padding-bottom:10px;}#fds-landing .chart-title{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-weight:600;}#fds-landing .chart-sub{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-faint);}#fds-landing .chart-row{display:flex;align-items:stretch;gap:8px;margin-top:40px;}#fds-landing .yaxis-title{
    writing-mode:vertical-rl;transform:rotate(180deg);
    font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;
    color:var(--ink-soft);align-self:center;white-space:nowrap;flex:none;
  }#fds-landing .chart{
    --h:360px;
    position:relative;
    flex:1;min-width:0;
    margin-left:30px;
    height:var(--h);
    border-left:1.5px solid var(--ink);
    border-bottom:1.5px solid var(--ink);
    display:grid;
    grid-template-columns:repeat(4,1fr);
    align-items:end;
    gap:clamp(14px,3vw,34px);
    padding:0 clamp(8px,2vw,22px);
  }/* y gridline ticks (subtle) */#fds-landing .chart .ytick{position:absolute;left:0;right:0;border-top:1px dashed var(--line);}#fds-landing .chart .ytick.zero{border-top:none;}#fds-landing .chart .ytick span{position:absolute;left:-32px;top:-7px;font-family:var(--mono);font-size:10px;color:var(--ink-faint);width:26px;text-align:right;}#fds-landing .col{position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;}#fds-landing .bar{
    width:100%;max-width:78px;
    background:var(--line-strong);
    transform:scaleY(0);transform-origin:bottom;
    transition:transform .9s cubic-bezier(.16,.84,.34,1);
    position:relative;border-radius:3px 3px 0 0;
  }#fds-landing .bar.lead{background:linear-gradient(180deg,var(--cyan),var(--blue));}#fds-landing .col .val{
    position:absolute;top:-30px;left:50%;transform:translateX(-50%);
    font-weight:700;font-size:18px;color:var(--ink);
    opacity:0;transition:opacity .5s ease .55s;white-space:nowrap;
  }#fds-landing .col.lead .val{color:var(--blue);font-size:21px;}#fds-landing .chart.in .bar{transform:scaleY(1);}#fds-landing .chart.in .val{opacity:1;}#fds-landing .xlabels{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,3vw,34px);padding:14px clamp(8px,2vw,22px) 0;margin-left:55px;}#fds-landing .xl{text-align:center;}#fds-landing .xl .brand{font-weight:700;font-size:13px;line-height:1.2;}#fds-landing .xl.lead .brand{color:var(--blue);}#fds-landing .xl .spec{font-family:var(--mono);font-size:10.5px;color:var(--ink-faint);margin-top:4px;letter-spacing:.02em;}#fds-landing .chart-caption{font-size:12.5px;color:var(--ink-faint);line-height:1.5;margin-top:22px;    padding-left: 4.5em;
    padding-right: 3.5em;}#fds-landing .axis-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:10px;}/* ---------- conversion module ---------- */#fds-landing .convert{
    border:1px solid var(--line);
    border-top:3px solid var(--blue);
    background:var(--paper);
    padding:34px 32px 32px;
    position:sticky;top:98px;
    box-shadow:0 1px 0 var(--line),0 18px 40px -28px rgba(8,44,84,.4);
  }#fds-landing .convert h2{font-size:23px;line-height:1.12;margin-bottom:8px;}#fds-landing .convert .sub{font-size:14px;color:var(--ink-soft);margin:0 0 34px;}
  #fds-landing .field-label{font-family:var(--mono);font-size:1.5emx;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-weight:700;display:block;margin-bottom:9px;}
  #fds-landing .zip-row{display:flex;gap:10px;}
  
  #fds-landing input{
    font-family:var(--sans);font-size:15px;color:var(--ink);
    background:var(--paper);border:1px solid var(--line-strong);
    border-radius:7px;padding:16px 13px;width:100%;
    transition:border-color .15s ease,box-shadow .15s ease;
  }
  
  #fds-landing select{
    font-family:var(--sans);font-size:15px;color:var(--ink);
    border:1px solid var(--line-strong);
    border-radius:7px;padding:1px 13px;width:100%;
    transition:border-color .15s ease,box-shadow .15s ease;
  }
  
  #fds-landing input:focus,#fds-landing select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(10,89,171,.14);}#fds-landing input::placeholder{color:var(--ink-faint);}#fds-landing .zip-row input{max-width:150px;letter-spacing:.12em;}#fds-landing .btn {
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    background:var(--blue);color:#fff;border:none;cursor:pointer;
    font-family:var(--sans);font-size:15px;font-weight:600;
    padding:12px 22px;border-radius:7px;white-space:nowrap;
    transition:background .15s ease;
  }#fds-landing .btn:hover{background:var(--blue-press);}#fds-landing .btn:disabled{opacity:.5;cursor:not-allowed;}#fds-landing .btn.block{width:100%;padding:14px;font-size:16px;}#fds-landing .field-err{color:#b23232;font-size:12.5px;margin-top:8px;display:none;}#fds-landing .field-err.show{display:block;}/* rep card (revealed) */#fds-landing .rep-card{
    margin-top:18px;border:1px solid var(--line);background:var(--paper-2);
    border-left:3px solid var(--cyan);
    border-radius:8px;padding:16px 18px;
    display:none;
  }#fds-landing .rep-card.show{display:block;animation:reveal .4s ease;}
  
  
  #fds-landing input.hs-button{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    background:var(--blue);color:#fff;border:none;cursor:pointer;
    font-family:var(--sans);font-size:18px;font-weight:600;
    padding:16px 22px;border-radius:7px;white-space:nowrap;
    transition:background .15s ease;
  }
  #fds-landing input.hs-button:hover{background:var(--blue-press);}
  #fds-landing input.hs-button:disabled{opacity:.5;cursor:not-allowed;}
  #fds-landing input.hs-button.block{width:100%;padding:14px;font-size:16px;}
  #fds-landing .field-err{color:#b23232;font-size:12.5px;margin-top:8px;display:none;}
  #fds-landing .field-err.show{display:block;}/* rep card (revealed) */
  
  #fds-landing .rep-card{
    margin-top:18px;border:1px solid var(--line);background:var(--paper-2);
    border-left:3px solid var(--cyan);
    border-radius:8px;padding:16px 18px;
    display:none;
  }
  
  ul.hs-error-msgs {
	  margin: 0;
  }
  ul.hs-error-msgs li {
	  list-style-type: none;
	  
  }
  
  /* ---- HubSpot consent checkbox (subscription opt-in) --------------------- */
#fds-landing .legal-consent-container{ margin-top:24px; margin-bottom: 24px; }

/* remove the <ul> bullet + indentation HubSpot wraps the checkbox in */
#fds-landing .legal-consent-container .inputs-list{
  list-style:none; margin:0; padding:0;
}
#fds-landing .legal-consent-container .hs-form-booleancheckbox{ margin:0; }

/* checkbox + text on one top-aligned row, matching the form's type */
#fds-landing .hs-form-booleancheckbox-display{
  display:flex; align-items:flex-start; gap:10px;
  cursor:pointer;
  font-family:var(--sans); font-size:14px; line-height:1.45;
  color:var(--ink-soft);
}
#fds-landing .hs-form-booleancheckbox-display > span{ display:block; margin-left: 5px;}

/* the checkbox itself: undo the inherited input styling, rebuild it to match
   the form's border + Centrix-blue language */
#fds-landing .hs-form-booleancheckbox-display input[type="checkbox"]{
  appearance:none; -webkit-appearance:none;
  flex:0 0 auto;
  width:22px; height:22px; min-width:18px;
  margin:1px 0 0; padding:0;          /* nudge to align with first text line */
  border:1px solid var(--line-strong);
  border-radius:5px;
  background:var(--paper);
  cursor:pointer;
  transition:border-color .15s ease, background-color .15s ease, box-shadow .15s ease;
}
#fds-landing .hs-form-booleancheckbox-display input[type="checkbox"]:checked{
  border-color:var(--blue);
  background:var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M3.5 8.5l3 3 6-6.5'/%3E%3C/svg%3E") center / 12px 12px no-repeat;
}
#fds-landing .hs-form-booleancheckbox-display input[type="checkbox"]:focus-visible{
  outline:none; border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(10,89,171,.14);
}
  
  label.hs-error-msg {color: #f6aba7;}
  
  @keyframes reveal{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}#fds-landing .rep-card .rc-kick{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);font-weight:600;margin-bottom:8px;}#fds-landing .rep-card .rc-name{font-weight:700;font-size:17px;margin-bottom:6px;}#fds-landing .rep-card .rc-line{display:flex;gap:8px;font-size:14px;color:var(--ink-soft);margin-top:3px;}#fds-landing .rep-card .rc-line .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);width:48px;flex:none;padding-top:2px;}#fds-landing .divider-rule{height:1px;background:var(--line);margin:26px 0 24px;}#fds-landing .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}#fds-landing .form-grid .full{grid-column:1/-1;}#fds-landing .form-grid label{display:block;}#fds-landing .consent{font-size:11.5px;color:var(--ink-faint);line-height:1.5;margin-top:14px;}#fds-landing .form-success{display:none;text-align:center;padding:18px 6px 6px;}#fds-landing .form-success.show{display:block;animation:reveal .4s ease;}#fds-landing .form-success .ok{width:46px;height:46px;border-radius:50%;background:var(--blue-wash);color:var(--blue);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-size:22px;font-weight:700;}#fds-landing .form-success h3{font-size:19px;margin-bottom:8px;}#fds-landing .form-success p{font-size:14px;color:var(--ink-soft);margin:0;}/* ---------- section scaffolding ---------- */#fds-landing section.block{padding:96px 0;border-bottom:1px solid var(--line);}#fds-landing .narrow{max-width:var(--measure);margin:0 auto;}#fds-landing .sec-num{font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--ink-faint);margin-bottom:40px;display:flex;align-items:center;gap:14px;}#fds-landing .sec-num::after{content:"";flex:1;height:1px;background:var(--line);}/* clinical context */#fds-landing .ctx h2{font-size:clamp(28px,3.2vw,40px);margin-bottom:20px;line-height:1.08;}#fds-landing .ctx h2 .em{color:var(--blue);}#fds-landing .ctx p{font-size:18px;color:var(--ink-soft);margin:0 0 18px;}#fds-landing .ctx .pair{margin-bottom:54px;}#fds-landing .ctx .pair:last-child{margin-bottom:0;}#fds-landing .visual-band{margin:0 auto;max-width:560px;}#fds-landing .visual-band img{margin:0 auto;}#fds-landing .visual-cap{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-faint);text-align:center;margin-top:18px;line-height:1.5;}
  
  /* clinical */#fds-landing .clinical .wrap{display:grid;grid-template-columns:1.08fr .86fr;gap:84px;align-items:center;}#fds-landing .clinical-frame{position:relative;}
  
  /* evidence / anchor */#fds-landing .evidence .wrap{display:grid;grid-template-columns:.92fr 1.08fr;gap:64px;align-items:center;}#fds-landing .cover-frame{position:relative;}#fds-landing .cover-ph{
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;
    width:100%; /* aspect-ratio:8.5/11; */
    border:1px solid var(--line-strong);
    box-shadow:0 30px 60px -34px rgba(8,44,84,.55);
    /* background:
      repeating-linear-gradient(135deg,var(--paper-2) 0 14px,var(--paper-3) 14px 28px); */
    color:var(--ink-faint);text-align:center;padding:24px;
  }#fds-landing .cover-ph .ph-mark{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);}#fds-landing .cover-ph .ph-sub{font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;color:var(--ink-faint);max-width:24ch;line-height:1.6;}#fds-landing .cover-ph .ph-icon{width:34px;height:34px;border:1.5px solid var(--line-strong);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:13px;color:var(--ink-faint);}#fds-landing .cover-tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;color:var(--ink-faint);text-align:center;margin-top:14px;text-transform:uppercase;}#fds-landing .evidence h2{font-size:clamp(26px,2.8vw,34px);line-height:1.12;margin-bottom:24px;}#fds-landing .bigquote{font-size:20px;line-height:1.5;color:var(--ink);font-style:italic;border-left:3px solid var(--cyan);padding:4px 0 4px 22px;margin:0 0 16px;}#fds-landing .quote-attr{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--ink-faint);margin:0 0 30px;}#fds-landing .stat-line{font-size:18px;color:var(--ink-soft);margin:0 0 30px;}#fds-landing .stat-line strong{color:var(--ink);font-weight:700;}#fds-landing .remember{
    background:var(--blue-ink);color:#fff;
    padding:22px 26px;border-radius:10px;margin-bottom:28px;
    display:flex;align-items:center;gap:18px;
  }#fds-landing .remember .big{font-size:34px;font-weight:800;line-height:1;color:var(--cyan);flex:none;}#fds-landing .remember .txt{font-size:15px;font-weight:600;letter-spacing:.01em;line-height:1.35;}/* the 3x stat strip */#fds-landing .statstrip{background:var(--paper-2);border-bottom:1px solid var(--line);}#fds-landing .statstrip .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;}#fds-landing .stat{padding:54px 30px;text-align:center;position:relative;}#fds-landing .stat::before{content:"";position:absolute;left:0;top:30px;bottom:30px;width:1px;background:var(--line);}#fds-landing .stat:first-child::before{display:none;}#fds-landing .stat .n{font-size:clamp(46px,5.2vw,68px);font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--blue);}#fds-landing .stat .n .u{font-size:.45em;font-weight:700;color:var(--cyan);}#fds-landing .stat .l{font-size:14px;color:var(--ink-soft);margin-top:14px;max-width:22ch;margin-left:auto;margin-right:auto;}/* closing CTA band */#fds-landing .closing{background:var(--cyan);color:#fff;border-bottom:none;}#fds-landing .closing .wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:84px 40px;}#fds-landing .closing .kicker{color:var(--blue-wash);}#fds-landing .closing h2{font-size:clamp(40px,4.6vw,62px);line-height:1.06;margin-bottom:20px;color:rgba(255,255,255,.98)}#fds-landing .closing p{font-size:18px;color:rgba(255,255,255,.78);margin:0 0 34px;max-width:30em;}#fds-landing .closing .btn-lg{
    display:inline-flex;align-items:center;gap:10px;background:#fff;color:var(--blue-ink);
    font-size:16px;font-weight:700;padding:16px 30px;border-radius:8px;cursor:pointer;border:none;font-family:var(--sans);
    transition:transform .15s ease,box-shadow .15s ease;
  }#fds-landing .closing .btn-lg:hover{transform:translateY(-1px);box-shadow:0 14px 30px -16px rgba(0,0,0,.6);}#fds-landing .closing .product img{filter:drop-shadow(0 24px 40px rgba(0,0,0,.45));}/* footer — minimal compliance block; site template supplies real chrome */#fds-landing footer.foot{background:var(--paper);padding:54px 0 64px;}#fds-landing .disclaimer{font-size:12px;color:var(--ink-faint);line-height:1.65;max-width:var(--maxw);padding-top:30px;}#fds-landing .foot-meta{margin-top:18px;font-size:12.5px;color:var(--ink-faint);}/* ---------- responsive ---------- */
  
/* ---------- responsive ---------- */
@media (max-width:980px){
  #fds-landing .hero .wrap{grid-template-columns:1fr;gap:54px;padding-top:54px;padding-bottom:60px;}
  #fds-landing .convert{position:static;}
  #fds-landing .clinical .wrap{grid-template-columns:1fr;gap:44px;}
  #fds-landing .evidence .wrap{grid-template-columns:1fr;gap:44px;}
  #fds-landing .cover-frame{max-width:420px;margin:0 auto;}
  #fds-landing .closing .wrap{grid-template-columns:1fr;gap:40px;padding:64px 40px;}
  #fds-landing .closing .product{order:-1;max-width:460px;}
}
  @media (max-width:640px){#fds-landing .wrap{padding:0 22px;}#fds-landing{font-size:16px;}#fds-landing section.block{padding:64px 0;}#fds-landing .statstrip .wrap{grid-template-columns:1fr;}#fds-landing .stat::before{display:none;}#fds-landing .stat{padding:34px 20px;border-top:1px solid var(--line);}#fds-landing .stat:first-child{border-top:none;}#fds-landing .form-grid{grid-template-columns:1fr;}#fds-landing .chart{--h:280px;}#fds-landing .col .val{font-size:15px;}#fds-landing .xl .brand{font-size:11.5px;}#fds-landing .remember{flex-direction:column;align-items:flex-start;gap:10px;}#fds-landing .remember .big{font-size:30px;}}

  @media (prefers-reduced-motion:reduce){#fds-landing .bar-anim,#fds-landing .bar{transition:none;transform:scaleY(1)!important;}#fds-landing .val{opacity:1!important;transition:none;}}
