.hc-ref-page {
  --paper:#fbf7ef; --paper2:#f4ede2; --navy:#0c2c4a; --sage:#526846; --sage2:#3e5437;
  --gold:#c4973a; --ink:#27323a; --muted:#69706b; --line:rgba(12,44,74,.13);
  font-family:Montserrat,Arial,sans-serif; color:var(--ink); background:var(--paper);
}
.hc-ref-page *{box-sizing:border-box}
.hc-ref-page h1,.hc-ref-page h2,.hc-ref-page h3,.hc-ref-page h4{font-family:"Cormorant Garamond",serif;color:var(--navy);margin:0}
.hc-ref-wrap{max-width:1180px;width:calc(100% - 48px);margin:0 auto}
.hc-ref-page a{color:inherit}
.hc-topbar{background:rgba(251,247,239,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}
.hc-topbar-in{min-height:82px;display:grid;grid-template-columns:220px 1fr 165px;align-items:center;gap:24px}
.hc-brand img{width:180px;display:block}
.hc-navlinks{display:flex;justify-content:center;gap:29px}
.hc-navlinks a{text-decoration:none;font-size:12px;font-weight:600}
.hc-reserve{text-decoration:none;background:var(--sage2);color:white!important;padding:14px 20px;border-radius:5px;text-align:center;font-size:12px;font-weight:700}
.hc-hero{background:linear-gradient(90deg,#fbf8f1 0%,#fbf8f1 52%,#f4ecdf 52%);overflow:hidden}
.hc-hero-in{display:grid;grid-template-columns:1.03fr 1.12fr;min-height:515px}
.hc-hero-copy{padding:66px 45px 55px 0;position:relative}
.hc-hero-copy:before{content:"";position:absolute;left:-110px;bottom:0;width:210px;height:250px;opacity:.14;background:radial-gradient(ellipse at center,transparent 45%,var(--sage) 47%,transparent 49%)}
.hc-hero h1{font-size:70px;line-height:.84;letter-spacing:-.035em;font-weight:600}
.hc-hero p{font-size:16px;line-height:1.65;max-width:480px}
.hc-meta{display:flex;flex-wrap:wrap;gap:18px;margin:24px 0}
.hc-meta span{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--navy)}
.hc-meta svg,.hc-icon svg,.hc-aud-icon svg,.hc-take-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hc-meta svg{color:var(--gold);width:21px;height:21px}
.hc-hero-actions{display:flex;align-items:center;gap:27px}
.hc-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;text-decoration:none;background:var(--sage2);color:white!important;border-radius:5px;font-size:13px;font-weight:700}
.hc-text-link{font-size:13px;font-weight:600;text-decoration:none;color:var(--sage2)!important}
.hc-hero-photo{position:relative;min-height:515px;background:url("../images/hero-slide-1.jpg") center/cover no-repeat;border-bottom-left-radius:52% 44%}
.hc-hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(250,246,238,.11),transparent 28%)}
.hc-strip{padding:48px 0;border-bottom:1px solid var(--line);background:#fffdfa}
.hc-why{display:grid;grid-template-columns:1.1fr repeat(3,1fr);gap:0}
.hc-why-intro{padding-right:38px;border-right:1px solid var(--line)}
.hc-why h2{font-size:39px;line-height:.9}
.hc-rule{width:44px;height:2px;background:var(--gold);margin:17px 0}
.hc-why p{font-size:12px;line-height:1.7;color:var(--muted)}
.hc-feature{text-align:center;padding:0 30px;border-right:1px solid var(--line)}
.hc-feature:last-child{border-right:0}
.hc-icon{width:56px;height:56px;border-radius:50%;margin:0 auto 14px;background:#f0e9de;display:grid;place-items:center;color:var(--sage)}
.hc-feature h3{font-family:Montserrat;font-size:14px;line-height:1.35;color:var(--navy)}
.hc-feature p{font-size:11px}
.hc-section{padding:54px 0;border-bottom:1px solid var(--line)}
.hc-section.soft{background:#faf6ef}
.hc-title-center{text-align:center;margin-bottom:28px}
.hc-title-center h2{font-size:43px;line-height:.9}
.hc-title-center .hc-rule{margin:13px auto 0}
.hc-audience-grid{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.hc-audience{text-align:center;padding:23px 19px;border-right:1px solid var(--line)}
.hc-audience:last-child{border-right:0}
.hc-aud-icon{height:44px;display:grid;place-items:center;color:var(--sage)}
.hc-aud-icon svg{width:35px;height:35px}
.hc-audience h3{font-family:Montserrat;font-size:12px;line-height:1.35;margin-top:8px}
.hc-audience p{font-size:10px;line-height:1.5;color:var(--muted)}
.hc-speaker-section{padding:52px 0}
.hc-speaker-layout{display:grid;grid-template-columns:170px 1fr;gap:38px;align-items:start}
.hc-side-title h2{font-size:42px;line-height:.85}
.hc-side-title a{display:inline-block;margin-top:26px;color:var(--sage2);text-decoration:none;font-size:12px;font-weight:700}
.hc-speaker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px 20px}
.hc-speaker-card{min-width:0}
.hc-sp-img{height:205px;border-radius:7px;overflow:hidden;background:#e8dfd3;position:relative}
.hc-sp-img img{width:100%;height:100%;object-fit:cover;object-position:center 18%}
.hc-sp-img span{position:absolute;bottom:8px;right:8px;background:rgba(12,44,74,.87);color:white;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:700;text-transform:uppercase}
.hc-speaker-card h3{font-family:Montserrat;font-size:13px;margin-top:11px}
.hc-sp-role{font-size:9px!important;line-height:1.45!important;color:var(--muted);margin:5px 0 0!important}
.hc-sp-desc{font-size:10px!important;line-height:1.55!important;color:var(--muted);margin-top:9px!important}
.hc-agenda-section{background:#faf6ef}
.hc-glance{display:grid;grid-template-columns:.55fr 1.38fr .88fr;gap:32px;align-items:start}
.hc-agenda-box{display:none}
.hc-agenda-box.active{display:block}
.hc-ag-tabs{display:flex;gap:8px;margin-bottom:15px}
.hc-ag-tabs button{border:1px solid var(--line);background:white;padding:8px 11px;border-radius:999px;font-size:10px;font-weight:700;cursor:pointer}
.hc-ag-tabs button.active{background:var(--sage2);color:white}
.hc-ag-row{display:grid;grid-template-columns:92px 14px 1fr;gap:12px;min-height:42px}
.hc-ag-time{font-size:10px;font-weight:700;color:var(--navy);padding-top:4px}
.hc-ag-track{position:relative;display:flex;justify-content:center}
.hc-ag-track:after{content:"";position:absolute;top:13px;bottom:-3px;width:1px;background:var(--gold)}
.hc-ag-row:last-child .hc-ag-track:after{display:none}
.hc-ag-track span{width:8px;height:8px;border-radius:50%;background:var(--paper);border:2px solid var(--gold);margin-top:4px;position:relative;z-index:2}
.hc-ag-row h4{font-family:Montserrat;font-size:10px;color:var(--ink);margin-top:2px}
.hc-ag-row p{font-size:9px;line-height:1.4;color:var(--muted);margin:3px 0 12px}
.hc-take h2{font-size:42px;line-height:.9}
.hc-take-list{display:grid;gap:13px;margin-top:19px}
.hc-take-item{display:grid;grid-template-columns:25px 1fr;gap:10px;font-size:10px;line-height:1.5}
.hc-take-icon{color:var(--sage)}
.hc-take-icon svg{width:22px;height:22px}
.hc-bottom-section{padding:48px 0;background:#f8f2e9}
.hc-bottom-grid{display:grid;grid-template-columns:.95fr 1.25fr;gap:18px}
.hc-panel{border:1px solid var(--line);border-radius:9px;background:rgba(255,255,255,.56);padding:28px;min-height:230px}
.hc-panel h2{font-size:38px;line-height:.9}
.hc-panel p{font-size:11px;line-height:1.7;color:var(--muted)}
.hc-about{position:relative}
.hc-about img{position:absolute;right:22px;bottom:18px;width:92px;opacity:.9}
.hc-about p{max-width:72%}
.hc-ticket-panel{display:grid;grid-template-columns:.7fr 1.3fr;gap:20px}
.hc-ticket-copy p{max-width:390px}
.hc-pricing-box{background:white;border:1px solid var(--line);border-radius:8px;padding:18px;display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:0;align-items:stretch}
.hc-price{padding:4px 16px;border-right:1px solid var(--line)}
.hc-price:last-child{border-right:0}
.hc-price span{display:block;font-size:9px;font-weight:700}
.hc-price strong{display:block;font-family:"Cormorant Garamond";font-size:38px;line-height:.9;color:var(--sage2);margin:7px 0 3px}
.hc-price small{font-size:9px;color:var(--muted)}
.hc-purchase{display:flex;flex-direction:column;justify-content:center;gap:11px;padding-left:16px}
.hc-purchase .hc-btn{min-height:41px;font-size:10px;padding:0 15px}
.hc-purchase a:last-child{font-size:9px;text-decoration:none;color:var(--sage2);font-weight:700;text-align:center}
.hc-policy{margin-top:18px;border-top:1px solid var(--line);padding-top:15px}
.hc-policy summary{cursor:pointer;font-size:10px;font-weight:700;color:var(--sage2)}
.hc-policy div{font-size:9px;line-height:1.6;color:var(--muted);margin-top:10px}
.hc-footer{background:#f0e9de;padding:30px 0 18px;border-top:1px solid var(--line)}
.hc-footer-grid{display:grid;grid-template-columns:1.1fr .65fr .8fr 1fr;gap:36px}
.hc-footer-logo img{width:180px}
.hc-footer h4{font-family:Montserrat;font-size:9px;color:var(--ink);margin-bottom:8px}
.hc-footer p,.hc-footer a{font-size:9px;line-height:1.7;color:var(--muted);text-decoration:none}
.hc-email{display:flex;margin-top:12px}
.hc-email input{width:100%;border:1px solid var(--line);background:white;padding:10px;font-size:9px}
.hc-email button{border:0;background:#eee3d2;padding:0 14px;color:var(--sage2)}
.hc-footer-base{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:13px;margin-top:22px;font-size:8px;color:var(--muted)}

@media(max-width:1050px){
 .hc-topbar-in{grid-template-columns:190px 1fr 150px} .hc-navlinks{gap:16px}
 .hc-why{grid-template-columns:1fr 1fr} .hc-why-intro{border-bottom:1px solid var(--line);padding-bottom:25px}
 .hc-feature{padding:25px;border-bottom:1px solid var(--line)} .hc-audience-grid{grid-template-columns:repeat(3,1fr)}
 .hc-speaker-grid{grid-template-columns:repeat(2,1fr)} .hc-glance{grid-template-columns:1fr 1.4fr}
 .hc-take{grid-column:1/-1;display:grid;grid-template-columns:.45fr 1fr;gap:30px} .hc-take-list{grid-template-columns:1fr 1fr}
 .hc-bottom-grid{grid-template-columns:1fr} .hc-ticket-panel{grid-template-columns:.55fr 1.45fr}
}
@media(max-width:760px){
 .hc-ref-wrap{width:calc(100% - 28px)} .hc-topbar-in{grid-template-columns:1fr auto;min-height:70px}
 .hc-brand img{width:145px} .hc-navlinks{display:none} .hc-reserve{padding:11px 13px;font-size:10px}
 .hc-hero{background:#fbf8f1} .hc-hero-in{grid-template-columns:1fr;min-height:0} .hc-hero-copy{padding:48px 0 36px}
 .hc-hero h1{font-size:54px} .hc-hero-photo{min-height:330px;border-bottom-left-radius:0;border-top-left-radius:46% 33%}
 .hc-why,.hc-audience-grid,.hc-speaker-grid,.hc-glance,.hc-ticket-panel,.hc-pricing-box,.hc-footer-grid{grid-template-columns:1fr}
 .hc-why-intro,.hc-feature,.hc-audience{border-right:0;border-bottom:1px solid var(--line)} .hc-audience:last-child{border-bottom:0}
 .hc-speaker-layout{grid-template-columns:1fr} .hc-side-title{display:flex;justify-content:space-between;align-items:end} .hc-side-title h2{font-size:38px}
 .hc-sp-img{height:330px} .hc-agenda-section{padding-top:48px} .hc-glance{gap:38px}
 .hc-take{grid-column:auto;display:block} .hc-take-list{grid-template-columns:1fr} .hc-ticket-copy{margin-bottom:16px}
 .hc-pricing-box{gap:15px} .hc-price{border-right:0;border-bottom:1px solid var(--line);padding:14px 4px} .hc-price:nth-child(2){border-bottom:0}
 .hc-purchase{padding:0} .hc-about p{max-width:100%;padding-right:75px} .hc-footer-base{flex-direction:column}
}

/* Hero full-bleed refinement */
.hc-hero{
  position:relative;
  overflow:hidden;
  background:#fbf8f1;
}
.hc-hero:after{
  content:"";
  position:absolute;
  right:0;
  top:0;
  bottom:0;
  width:51.5vw;
  background:url("../images/hero-slide-1.jpg") center/cover no-repeat;
  z-index:0;
}
.hc-hero:before{
  content:"";
  position:absolute;
  right:0;
  top:0;
  bottom:0;
  width:55vw;
  background:
    radial-gradient(ellipse at 0% 50%, #fbf8f1 0 41%, rgba(251,248,241,.96) 41.3%, rgba(251,248,241,.42) 42.2%, transparent 43.2%);
  z-index:1;
  pointer-events:none;
}
.hc-hero-in{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  min-height:530px;
}
.hc-hero-copy{
  padding:68px 44px 58px 0;
  max-width:590px;
}
.hc-hero-photo{
  min-height:530px;
  background:none!important;
  border-radius:0!important;
}


/* Alternating section backgrounds */
#about{background:#fffdfa;}
#attend{background:#f4ede2!important;}
#speakers{background:#fffdfa;}
#agenda{background:#f4ede2!important;}
.hc-bottom-section{background:#fffdfa!important;}
.hc-footer{background:#eee5d8!important;}


/* Speaker carousel refinement */
.hc-speaker-layout{
  display:grid;
  grid-template-columns:170px minmax(0,1fr);
  gap:38px;
  align-items:start;
}
.hc-speaker-grid{
  display:flex!important;
  gap:18px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  overscroll-behavior-x:contain;
  padding:0 0 12px;
  scrollbar-width:thin;
}
.hc-speaker-grid::-webkit-scrollbar{height:10px}
.hc-speaker-grid::-webkit-scrollbar-track{background:rgba(12,44,74,.07);border-radius:999px}
.hc-speaker-grid::-webkit-scrollbar-thumb{background:rgba(82,104,70,.45);border-radius:999px}
.hc-speaker-card{
  flex:0 0 190px;
  scroll-snap-align:start;
}
.hc-sp-img{
  width:190px;
  height:190px!important;
  aspect-ratio:1/1;
  border-radius:8px;
}
.hc-speaker-card h3{font-size:12px;margin-top:10px}
.hc-sp-role{font-size:8.5px!important}
.hc-sp-desc{font-size:9px!important}


/* Fixed-height Summit at a Glance */
.hc-glance{
  align-items:stretch!important;
}
.hc-glance > div:nth-child(2){
  height:500px;
  display:flex;
  flex-direction:column;
  min-height:0;
}
.hc-ag-tabs{
  flex:0 0 auto;
}
.hc-agenda-box{
  overflow-y:auto;
  padding-right:10px;
  min-height:0;
  flex:1 1 auto;
  scrollbar-width:thin;
}
.hc-agenda-box::-webkit-scrollbar{width:9px}
.hc-agenda-box::-webkit-scrollbar-track{background:rgba(12,44,74,.07);border-radius:999px}
.hc-agenda-box::-webkit-scrollbar-thumb{background:rgba(196,151,58,.55);border-radius:999px}
.hc-agenda-box.active{display:block}
.hc-glance .hc-side-title,
.hc-glance .hc-take{
  height:500px;
}
.hc-take{
  overflow:hidden;
}


/* Ticket policy popup */
.hc-policy-trigger{
  margin-top:16px;
  border:0;
  background:transparent;
  color:var(--sage2);
  font:700 10px Montserrat,sans-serif;
  padding:0;
  cursor:pointer;
  text-decoration:underline;
  text-underline-offset:3px;
}
.hc-policy-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.hc-policy-modal.open{display:flex}
.hc-policy-backdrop{
  position:absolute;
  inset:0;
  background:rgba(8,24,39,.72);
  backdrop-filter:blur(4px);
}
.hc-policy-dialog{
  position:relative;
  z-index:1;
  width:min(680px,100%);
  max-height:min(78vh,720px);
  overflow:auto;
  background:#fffaf3;
  border:1px solid var(--line);
  border-radius:18px;
  padding:38px;
  box-shadow:0 28px 90px rgba(0,0,0,.28);
}
.hc-policy-close{
  position:absolute;
  right:16px;
  top:13px;
  width:36px;
  height:36px;
  border:0;
  border-radius:50%;
  background:#efe7da;
  color:var(--navy);
  font-size:25px;
  cursor:pointer;
}
.hc-policy-kicker{
  margin:0 0 8px;
  text-transform:uppercase;
  letter-spacing:.15em;
  font-size:10px;
  font-weight:800;
  color:var(--gold);
}
.hc-policy-dialog h2{font-size:44px;line-height:.9}
.hc-policy-copy{
  margin-top:22px;
  color:var(--muted);
  font-size:13px;
  line-height:1.75;
}
.hc-policy-done{margin-top:22px}
body.hc-modal-open{overflow:hidden}


@media(max-width:760px){
  .hc-hero:after{
    position:relative;
    display:block;
    width:100%;
    height:330px;
    background-position:center;
  }
  .hc-hero:before{
    display:none;
  }
  .hc-hero-in{
    grid-template-columns:1fr;
    min-height:0;
  }
  .hc-hero-photo{
    display:none;
  }
  .hc-speaker-layout{grid-template-columns:1fr}
  .hc-speaker-grid{padding-bottom:10px}
  .hc-speaker-card{flex-basis:170px}
  .hc-sp-img{width:170px;height:170px!important}
  .hc-glance > div:nth-child(2),
  .hc-glance .hc-side-title,
  .hc-glance .hc-take{
    height:auto;
  }
  .hc-agenda-box{
    max-height:430px;
  }
  .hc-policy-dialog{
    padding:30px 22px 24px;
  }
}


/* v3 — simplified two-column hero with full-right carousel */
.hc-hero-simple,
.hc-hero-simple:before,
.hc-hero-simple:after{
  background:none!important;
}
.hc-hero-simple:before,
.hc-hero-simple:after{
  display:none!important;
}
.hc-hero-simple{
  overflow:hidden;
  background:#fbf8f1!important;
}
.hc-hero-simple-grid{
  display:grid;
  grid-template-columns:50% 50%;
  min-height:520px;
  width:100%;
}
.hc-hero-text-side{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  background:#fbf8f1;
}
.hc-hero-text-inner{
  width:min(590px,calc(100% - 44px));
  padding:54px 46px 54px 0;
}
.hc-summit-hero-logo{
  display:block;
  width:118px;
  height:118px;
  object-fit:contain;
  margin:0 0 18px;
}
.hc-hero-simple h1{
  font-size:clamp(56px,5.15vw,76px);
  line-height:.84;
  letter-spacing:-.035em;
}
.hc-hero-simple .hc-meta{
  margin-top:24px;
}
.hc-hero-carousel{
  position:relative;
  min-height:520px;
  height:100%;
  overflow:hidden;
  background:#d8cfbf;
}
.hc-hero-slide{
  position:absolute;
  inset:0;
  opacity:0;
  transform:scale(1.025);
  transition:opacity .75s ease,transform 1.5s ease;
  pointer-events:none;
}
.hc-hero-slide.active{
  opacity:1;
  transform:scale(1);
  pointer-events:auto;
}
.hc-hero-slide:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(12,44,74,.08),transparent 30%,rgba(12,44,74,.08));
}
.hc-hero-slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.hc-slide-caption{
  position:absolute;
  left:26px;
  bottom:24px;
  z-index:2;
  max-width:310px;
  padding:10px 13px;
  border-radius:6px;
  background:rgba(251,247,239,.88);
  color:var(--navy);
  font:600 11px/1.35 Montserrat,sans-serif;
  backdrop-filter:blur(8px);
}
.hc-carousel-arrow{
  position:absolute;
  z-index:4;
  top:50%;
  transform:translateY(-50%);
  width:42px;
  height:42px;
  border:1px solid rgba(255,255,255,.7);
  border-radius:50%;
  background:rgba(12,44,74,.38);
  color:white;
  font-size:31px;
  line-height:1;
  cursor:pointer;
  backdrop-filter:blur(8px);
}
.hc-carousel-prev{left:18px}
.hc-carousel-next{right:18px}
.hc-carousel-dots{
  position:absolute;
  z-index:4;
  right:24px;
  bottom:26px;
  display:flex;
  gap:7px;
}
.hc-carousel-dots button{
  width:8px;
  height:8px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.58);
  cursor:pointer;
}
.hc-carousel-dots button.active{
  width:25px;
  border-radius:999px;
  background:white;
}

/* Brief speaker context without expanding the section */
.hc-speaker-intro{
  margin:11px 0 0!important;
  max-width:155px;
  color:var(--muted);
  font-size:9px!important;
  line-height:1.55!important;
}

/* Return Summit at a Glance to the compact reference size, with an internal schedule scroll */
.hc-glance{
  align-items:start!important;
}
.hc-glance > div:nth-child(2){
  height:auto!important;
  min-height:0!important;
  display:block!important;
}
.hc-glance .hc-side-title,
.hc-glance .hc-take{
  height:auto!important;
}
.hc-agenda-box{
  max-height:292px!important;
  overflow-y:auto!important;
  padding-right:10px;
  scrollbar-width:thin;
}
.hc-agenda-box::-webkit-scrollbar{width:8px}
.hc-agenda-box::-webkit-scrollbar-track{
  background:rgba(12,44,74,.07);
  border-radius:999px;
}
.hc-agenda-box::-webkit-scrollbar-thumb{
  background:rgba(196,151,58,.58);
  border-radius:999px;
}

@media(max-width:900px){
  .hc-hero-simple-grid{
    grid-template-columns:1fr;
  }
  .hc-hero-text-side{
    justify-content:center;
  }
  .hc-hero-text-inner{
    width:min(100% - 34px,590px);
    padding:46px 0 42px;
  }
  .hc-hero-carousel{
    min-height:390px;
  }
}
@media(max-width:600px){
  .hc-summit-hero-logo{
    width:94px;
    height:94px;
  }
  .hc-hero-simple h1{
    font-size:52px;
  }
  .hc-hero-carousel{
    min-height:330px;
  }
  .hc-slide-caption{
    left:14px;
    bottom:15px;
    max-width:245px;
  }
  .hc-carousel-arrow{
    width:36px;
    height:36px;
  }
  .hc-carousel-prev{left:10px}
  .hc-carousel-next{right:10px}
}


/* v4 header alignment */
.hc-topbar-in{
  display:flex!important;
  justify-content:space-between;
  align-items:center;
  gap:24px;
}
.hc-header-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:22px;
  margin-left:auto;
}
.hc-navlinks{
  justify-content:flex-end!important;
  gap:22px!important;
}

/* Hero carousel cleanup */
.hc-slide-caption,
.hc-carousel-arrow{
  display:none!important;
}
.hc-carousel-dots{
  right:22px;
  bottom:20px;
}

/* Who Should Attend: remove top and bottom row borders */
.hc-audience-grid{
  border-top:0!important;
  border-bottom:0!important;
}

/* Full agenda popup */
.hc-agenda-popup-trigger{
  display:inline-block;
  margin-top:26px;
  padding:0;
  border:0;
  background:transparent;
  color:var(--sage2);
  font:700 12px Montserrat,sans-serif;
  cursor:pointer;
  text-align:left;
}
.hc-agenda-popup-trigger:after{
  content:" →";
}
.hc-agenda-modal{
  position:fixed;
  inset:0;
  z-index:10000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.hc-agenda-modal.open{display:flex}
.hc-agenda-backdrop{
  position:absolute;
  inset:0;
  background:rgba(8,24,39,.74);
  backdrop-filter:blur(5px);
}
.hc-agenda-dialog{
  position:relative;
  z-index:1;
  width:min(850px,100%);
  max-height:min(88vh,900px);
  overflow:auto;
  background:#fffaf3;
  border:1px solid var(--line);
  border-radius:18px;
  padding:38px;
  box-shadow:0 30px 100px rgba(0,0,0,.3);
}
.hc-agenda-close{
  position:absolute;
  right:16px;
  top:14px;
  width:38px;
  height:38px;
  border:0;
  border-radius:50%;
  background:#efe6d8;
  color:var(--navy);
  font-size:27px;
  line-height:1;
  cursor:pointer;
}
.hc-agenda-kicker{
  margin:0 0 7px;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:10px;
  font-weight:800;
}
.hc-agenda-dialog h2{
  font-size:50px;
  line-height:.9;
}
.hc-agenda-subtitle{
  margin:10px 0 22px;
  color:var(--muted);
  font-size:12px;
}
.hc-full-agenda-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:18px;
}
.hc-full-agenda-tabs button{
  border:1px solid var(--line);
  background:white;
  color:var(--navy);
  padding:10px 14px;
  border-radius:999px;
  font:700 10px Montserrat,sans-serif;
  cursor:pointer;
}
.hc-full-agenda-tabs button.active{
  background:var(--sage2);
  color:white;
}
.hc-full-agenda-panel{
  display:none;
  border-top:1px solid var(--line);
}
.hc-full-agenda-panel.active{display:block}
.hc-full-agenda-row{
  display:grid;
  grid-template-columns:145px 1fr;
  gap:18px;
  padding:14px 4px;
  border-bottom:1px solid var(--line);
}
.hc-full-agenda-time{
  color:var(--sage2);
  font-size:11px;
  font-weight:800;
}
.hc-full-agenda-session strong{
  display:block;
  color:var(--navy);
  font-size:12px;
  line-height:1.4;
}
.hc-full-agenda-session span{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:10px;
  line-height:1.5;
}
.hc-agenda-modal-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:24px;
}
.hc-agenda-download{
  min-height:44px;
}
.hc-agenda-secondary{
  min-height:44px;
  padding:0 19px;
  border:1px solid var(--line);
  border-radius:5px;
  background:white;
  color:var(--navy);
  font:700 11px Montserrat,sans-serif;
  cursor:pointer;
}
.hc-agenda-disclaimer{
  margin:15px 0 0;
  color:var(--muted);
  font-size:9px;
  font-style:italic;
}

/* Summit graphic watermark backgrounds */
#attend,
.hc-bottom-section{
  position:relative;
  overflow:hidden;
}
#attend:before,
.hc-bottom-section:before{
  content:"";
  position:absolute;
  pointer-events:none;
  background-image:url("../images/summit-emblem-watermark.png");
  background-repeat:no-repeat;
  background-size:contain;
  opacity:.055;
  z-index:0;
}
#attend:before{
  width:460px;
  height:460px;
  right:-95px;
  top:-105px;
  transform:rotate(-8deg);
}
.hc-bottom-section:before{
  width:520px;
  height:520px;
  left:-145px;
  bottom:-250px;
  transform:rotate(11deg);
  opacity:.045;
}
#attend > .hc-ref-wrap,
.hc-bottom-section > .hc-ref-wrap{
  position:relative;
  z-index:1;
}

@media(max-width:900px){
  .hc-header-actions{gap:14px}
  .hc-navlinks{gap:13px!important}
}
@media(max-width:760px){
  .hc-header-actions{margin-left:auto}
  .hc-navlinks{display:none!important}
  .hc-agenda-dialog{padding:32px 20px 24px}
  .hc-agenda-dialog h2{font-size:40px}
  .hc-full-agenda-row{grid-template-columns:1fr;gap:5px}
  #attend:before{width:330px;height:330px;right:-120px;top:-45px}
  .hc-bottom-section:before{width:360px;height:360px;left:-130px;bottom:-150px}
}


/* v1.1 — Venue, tickets, and speaker profiles */
.hc-reserve,
.hc-ticket-trigger{
  border:0;
  cursor:pointer;
  font-family:Montserrat,Arial,sans-serif;
}
.hc-reserve{
  line-height:1.2;
}
.hc-speaker-card{
  cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease;
  outline:none;
}
.hc-speaker-card:hover,
.hc-speaker-card:focus-visible{
  transform:translateY(-3px);
  box-shadow:0 15px 35px rgba(12,44,74,.12);
}
.hc-speaker-more{
  margin-top:10px;
  padding:0;
  border:0;
  background:transparent;
  color:var(--sage2);
  font:700 9px/1.3 Montserrat,sans-serif;
  cursor:pointer;
}
.hc-speaker-more:after{content:" →"}

/* Ticket purchase modal */
.hc-ticket-modal{
  position:fixed;
  inset:0;
  z-index:10020;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.hc-ticket-modal.open{display:flex}
.hc-ticket-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(8,24,39,.78);
  backdrop-filter:blur(6px);
}
.hc-ticket-modal-dialog{
  position:relative;
  z-index:1;
  width:min(900px,100%);
  max-height:min(90vh,900px);
  overflow:auto;
  border:1px solid rgba(12,44,74,.12);
  border-radius:22px;
  background:#fffaf3;
  box-shadow:0 35px 110px rgba(0,0,0,.34);
}
.hc-ticket-modal-close,
.hc-speaker-modal-close{
  position:absolute;
  right:16px;
  top:15px;
  z-index:5;
  width:40px;
  height:40px;
  padding:0;
  border:0;
  border-radius:50%;
  background:#ede4d7;
  color:var(--navy);
  font-size:28px;
  line-height:1;
  cursor:pointer;
}
.hc-ticket-modal-header{
  padding:38px 42px 28px;
  background:
    radial-gradient(circle at 90% 18%,rgba(196,151,58,.18),transparent 28%),
    linear-gradient(135deg,#fbf7ef,#f1e7d8);
  border-bottom:1px solid var(--line);
}
.hc-ticket-modal-kicker{
  margin:0 0 8px;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.15em;
  font-size:10px;
  font-weight:800;
}
.hc-ticket-modal-header h2{
  font-size:54px;
  line-height:.88;
}
.hc-ticket-modal-header>p:last-child{
  max-width:650px;
  margin:15px 0 0;
  color:var(--muted);
  font-size:12px;
  line-height:1.7;
}
.hc-ticket-modal-body{
  display:grid;
  grid-template-columns:1fr .85fr;
  gap:0;
}
.hc-ticket-selector,
.hc-ticket-summary{
  padding:34px 40px;
}
.hc-ticket-selector{
  border-right:1px solid var(--line);
}
.hc-ticket-selector>label{
  display:block;
  margin-bottom:13px;
  color:var(--navy);
  font-size:12px;
  font-weight:800;
}
.hc-quantity-control{
  display:grid;
  grid-template-columns:50px 84px 50px;
  align-items:center;
  width:max-content;
  border:1px solid var(--line);
  border-radius:10px;
  overflow:hidden;
  background:white;
}
.hc-quantity-control button{
  height:50px;
  border:0;
  background:#f1e8da;
  color:var(--navy);
  font-size:24px;
  cursor:pointer;
}
.hc-quantity-control input{
  width:84px;
  height:50px;
  border:0;
  border-left:1px solid var(--line);
  border-right:1px solid var(--line);
  background:white;
  color:var(--navy);
  text-align:center;
  font:700 18px Montserrat,sans-serif;
  -moz-appearance:textfield;
}
.hc-quantity-control input::-webkit-outer-spin-button,
.hc-quantity-control input::-webkit-inner-spin-button{
  margin:0;
  -webkit-appearance:none;
}
.hc-ticket-price-notes{
  display:grid;
  gap:10px;
  margin-top:26px;
}
.hc-ticket-price-notes div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px 15px;
  border:1px solid var(--line);
  border-radius:11px;
  background:rgba(255,255,255,.7);
}
.hc-ticket-price-notes strong{
  color:var(--navy);
  font-size:11px;
}
.hc-ticket-price-notes span{
  color:var(--sage2);
  font-size:11px;
  font-weight:700;
  text-align:right;
}
.hc-ticket-policy-note{
  margin-top:18px;
  color:var(--muted);
  font-size:10px;
  line-height:1.6;
}
.hc-ticket-summary{
  background:#f7f0e5;
}
.hc-ticket-summary-label{
  margin:0 0 18px;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:9px;
  font-weight:800;
}
.hc-ticket-summary-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:11px 0;
  border-bottom:1px solid var(--line);
  color:var(--muted);
  font-size:11px;
}
.hc-ticket-summary-row strong{
  color:var(--navy);
  font-size:13px;
}
.hc-ticket-summary-total{
  padding:18px 0;
}
.hc-ticket-summary-total span{
  color:var(--navy);
  font-weight:800;
}
.hc-ticket-summary-total strong{
  font-family:"Cormorant Garamond",serif;
  font-size:36px;
  color:var(--sage2);
}
.hc-ticket-summary-message{
  min-height:34px;
  margin:12px 0 19px;
  color:var(--sage2);
  font-size:10px;
  line-height:1.5;
}
.hc-paypal-checkout-button{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:50px;
  padding:10px 16px;
  border:0;
  border-radius:7px;
  background:#0070ba;
  color:white!important;
  text-decoration:none;
  text-align:center;
  font:800 11px/1.3 Montserrat,sans-serif;
  cursor:pointer;
}
.hc-paypal-checkout-button:hover{background:#005ea6}
.hc-paypal-checkout-button.is-pending{
  background:#8b927f;
  cursor:not-allowed;
}
.hc-paypal-pending-note,
.hc-ticket-team-note{
  margin:10px 0 0;
  color:var(--muted);
  font-size:9px;
  line-height:1.55;
}
.hc-ticket-policy-link{
  margin-top:17px;
  padding:0;
  border:0;
  background:transparent;
  color:var(--sage2);
  text-decoration:underline;
  text-underline-offset:3px;
  font:700 9px Montserrat,sans-serif;
  cursor:pointer;
}

/* Speaker modal */
.hc-speaker-modal{
  position:fixed;
  inset:0;
  z-index:10015;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.hc-speaker-modal.open{display:flex}
.hc-speaker-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(8,24,39,.78);
  backdrop-filter:blur(6px);
}
.hc-speaker-modal-dialog{
  position:relative;
  z-index:1;
  width:min(1020px,100%);
  max-height:min(90vh,920px);
  overflow:auto;
  border:1px solid rgba(12,44,74,.12);
  border-radius:22px;
  background:#fffaf3;
  box-shadow:0 35px 110px rgba(0,0,0,.34);
}
.hc-speaker-modal-panel{display:none}
.hc-speaker-modal-panel.active{display:block}
.hc-speaker-modal-grid{
  display:grid;
  grid-template-columns:minmax(330px,.86fr) minmax(0,1.14fr);
}
.hc-speaker-modal-visual{
  position:relative;
  min-height:610px;
  overflow:hidden;
  background:#e8dfd3;
}
.hc-speaker-modal-slide{
  position:absolute;
  inset:0;
  opacity:0;
  transition:opacity .45s ease;
}
.hc-speaker-modal-slide.active{opacity:1}
.hc-speaker-modal-slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}
.hc-speaker-slide-arrow{
  position:absolute;
  z-index:3;
  top:50%;
  transform:translateY(-50%);
  width:40px;
  height:40px;
  border:1px solid rgba(255,255,255,.75);
  border-radius:50%;
  background:rgba(12,44,74,.44);
  color:white;
  font-size:29px;
  cursor:pointer;
}
.hc-speaker-slide-prev{left:14px}
.hc-speaker-slide-next{right:14px}
.hc-speaker-slide-dots{
  position:absolute;
  z-index:3;
  left:50%;
  bottom:18px;
  display:flex;
  gap:7px;
  transform:translateX(-50%);
}
.hc-speaker-slide-dots button{
  width:9px;
  height:9px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.55);
  cursor:pointer;
}
.hc-speaker-slide-dots button.active{
  width:26px;
  border-radius:999px;
  background:white;
}
.hc-speaker-modal-copy{
  padding:48px 48px 40px;
}
.hc-speaker-modal-kicker{
  margin:0 0 8px;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.15em;
  font-size:10px;
  font-weight:800;
}
.hc-speaker-modal-copy h2{
  font-size:52px;
  line-height:.88;
}
.hc-speaker-modal-role{
  margin:13px 0 22px;
  color:var(--sage2);
  font-size:11px;
  line-height:1.5;
  font-weight:800;
}
.hc-speaker-modal-bio{
  color:var(--muted);
  font-size:12px;
  line-height:1.78;
}
.hc-speaker-modal-bio p{margin:0}
.hc-speaker-org-links{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:25px;
}
.hc-speaker-org-link{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 13px;
  border:1px solid var(--line);
  border-radius:999px;
  background:white;
  color:var(--sage2)!important;
  text-decoration:none;
  font-size:9px;
  font-weight:800;
}
.hc-speaker-org-link:hover{
  background:var(--sage2);
  color:white!important;
}

@media(max-width:820px){
  .hc-ticket-modal-body,
  .hc-speaker-modal-grid{
    grid-template-columns:1fr;
  }
  .hc-ticket-selector{
    border-right:0;
    border-bottom:1px solid var(--line);
  }
  .hc-speaker-modal-visual{
    min-height:430px;
  }
}
@media(max-width:560px){
  .hc-ticket-modal,
  .hc-speaker-modal{
    padding:12px;
  }
  .hc-ticket-modal-header,
  .hc-ticket-selector,
  .hc-ticket-summary{
    padding-left:22px;
    padding-right:22px;
  }
  .hc-ticket-modal-header h2,
  .hc-speaker-modal-copy h2{
    font-size:42px;
  }
  .hc-speaker-modal-copy{
    padding:34px 22px 28px;
  }
  .hc-speaker-modal-visual{
    min-height:350px;
  }
}


/* v1.2 — anchor spacing, speaker padding, footer links and signup */
.hc-speaker-card{
  padding:8px;
  border-radius:11px;
  background:rgba(255,255,255,.2);
}
.hc-speaker-card:hover,
.hc-speaker-card:focus-visible{
  background:rgba(255,255,255,.78);
}
.hc-speaker-card .hc-sp-img{
  width:100%!important;
  height:auto!important;
  aspect-ratio:1/1;
}
.hc-footer-logo a{
  display:inline-block;
}
.hc-footer-logo a:hover{
  opacity:.82;
}
.hc-footer p strong{
  color:var(--ink);
}
.hc-footer p a{
  color:var(--muted);
  text-decoration:none;
}
.hc-footer p a:hover{
  color:var(--sage2);
}
.hc-email{
  position:relative;
}
.hc-email button[disabled]{
  opacity:.55;
  cursor:wait;
}
.hc-email-note{
  margin:7px 0 0!important;
  font-size:8px!important;
  line-height:1.45!important;
}
.hc-signup-status{
  min-height:15px;
  margin:5px 0 0!important;
  color:var(--sage2)!important;
  font-size:8px!important;
  line-height:1.45!important;
}
.hc-signup-status.is-error{
  color:#8b352f!important;
}
.hc-honeypot{
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
.hc-sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}


/* v1.3.1 — targeted structure-safe refinements */
.hc-speaker-scroll-callout{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:9px;
  margin:10px 0 0 208px;
  color:var(--sage2);
  font:700 9px/1 Montserrat,sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.hc-speaker-scroll-callout strong{
  font-size:17px;
  line-height:1;
}

@media(max-width:760px){
  /* Restore the v1.2 speaker layout; only move the supporting text. */
  .hc-speaker-layout{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }
  .hc-side-title{
    display:block!important;
    text-align:left!important;
  }
  .hc-side-title>div{
    display:block!important;
  }
  .hc-side-title>a{
    display:inline-block!important;
    margin-top:18px!important;
  }
  .hc-side-title .hc-speaker-intro{
    display:block!important;
    width:100%!important;
    max-width:650px!important;
    margin:14px 0 0!important;
    font-size:11px!important;
    line-height:1.65!important;
  }
  .hc-speaker-scroll-callout{
    display:none!important;
  }

  /* Keep the approved mobile Reserve Your Seat redesign only. */
  .hc-ticket-panel{
    grid-template-columns:1fr!important;
  }
  .hc-pricing-box{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
    padding:18px!important;
  }
  .hc-pricing-box .hc-price{
    min-height:150px!important;
    padding:18px 12px!important;
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    background:#fffdfa!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
  }
  .hc-pricing-box .hc-price:first-child,
  .hc-pricing-box .hc-price:nth-child(2){
    border-right:1px solid var(--line)!important;
    border-bottom:1px solid var(--line)!important;
  }
  .hc-pricing-box .hc-price strong{
    font-size:48px!important;
    line-height:.9!important;
  }
  .hc-pricing-box .hc-purchase{
    grid-column:1/-1!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:12px!important;
    padding:8px 0 0!important;
  }
  .hc-pricing-box .hc-purchase .hc-btn{
    width:100%!important;
    min-height:50px!important;
  }
  .hc-pricing-box .hc-purchase a:last-child{
    max-width:100%!important;
    font-size:10px!important;
    line-height:1.55!important;
  }

  /* Ensure all modal dialogs remain usable in iOS/Safari previews. */
  .hc-ticket-modal,
  .hc-policy-modal,
  .hc-agenda-modal,
  .hc-speaker-modal{
    padding:10px!important;
  }
  .hc-ticket-modal-dialog,
  .hc-policy-dialog,
  .hc-agenda-dialog,
  .hc-speaker-modal-dialog{
    width:100%!important;
    max-height:86vh!important;
    overflow:auto!important;
    -webkit-overflow-scrolling:touch!important;
    border-radius:18px!important;
  }
}


/* v1.3.2 — code cleanup, popup fallback, and speaker spacing correction */
.hc-ticket-trigger,
.hc-agenda-popup-trigger,
.hc-policy-trigger,
.hc-ticket-modal-close,
.hc-agenda-close,
.hc-agenda-secondary,
.hc-policy-close,
.hc-policy-done,
.hc-speaker-modal-close{
  text-decoration:none!important;
}
.hc-speaker-card{
  color:inherit;
  text-decoration:none!important;
}
.hc-speaker-more{
  display:inline-block;
}

/* CSS-only modal fallback for local iOS previews that do not execute JavaScript. */
#hcTicketModal:target,
#hcAgendaModal:target,
#hcPolicyModal:target{
  display:flex!important;
}
#hcSpeakerModal:has(.hc-speaker-modal-panel:target){
  display:flex!important;
}
#hcSpeakerModal .hc-speaker-modal-panel:target{
  display:block!important;
}

/* Desktop: callout belongs directly below the speaker rail, not in the left title column. */
.hc-speaker-scroll-callout{
  grid-column:2!important;
  justify-content:flex-start!important;
  margin:7px 0 0!important;
  padding:0!important;
}
.hc-speaker-section{
  padding-bottom:14px!important;
}

@media(max-width:760px){
  /* Preserve the approved v1.2 mobile speaker design; only show the callout below the cards. */
  .hc-speaker-scroll-callout{
    display:flex!important;
    grid-column:1!important;
    justify-content:flex-start!important;
    margin:8px 0 0!important;
    padding:0!important;
  }
  .hc-speaker-section{
    padding-bottom:28px!important;
  }
}


/* v1.3.3 — mobile modal positioning, compact ticketing, and CSS tab fallbacks */
.hc-ag-tabs a,
.hc-full-agenda-tabs a{
  text-decoration:none;
}
.hc-ag-tabs a{
  border:1px solid var(--line);
  background:white;
  padding:8px 11px;
  border-radius:999px;
  font-size:10px;
  font-weight:700;
  cursor:pointer;
}
.hc-ag-tabs a.active,
.hc-full-agenda-tabs a.active{
  background:var(--sage2);
  color:white;
}
.hc-full-agenda-tabs a{
  border:1px solid var(--line);
  background:white;
  color:var(--navy);
  padding:10px 14px;
  border-radius:999px;
  font:700 10px Montserrat,sans-serif;
  cursor:pointer;
}

/* CSS-only day switching for local iOS file previews that do not run JavaScript. */
.hc-glance:has(#day2:target) #day1{display:none!important}
.hc-glance:has(#day2:target) #day2{display:block!important}
.hc-glance:has(#day2:target) [data-ag="day1"]{background:white!important;color:#1688ff!important}
.hc-glance:has(#day2:target) [data-ag="day2"]{background:var(--sage2)!important;color:white!important}
.hc-glance:has(#day1:target) #day1{display:block!important}
.hc-glance:has(#day1:target) #day2{display:none!important}
.hc-glance:has(#day1:target) [data-ag="day1"]{background:var(--sage2)!important;color:white!important}
.hc-glance:has(#day1:target) [data-ag="day2"]{background:white!important;color:#1688ff!important}

#hcAgendaModal:has(.hc-full-agenda-panel:target){display:flex!important}
#hcAgendaModal:has(#fullDay2:target) #fullDay1{display:none!important}
#hcAgendaModal:has(#fullDay2:target) #fullDay2{display:block!important}
#hcAgendaModal:has(#fullDay2:target) [data-full-agenda-tab="fullDay1"]{background:white!important;color:var(--navy)!important}
#hcAgendaModal:has(#fullDay2:target) [data-full-agenda-tab="fullDay2"]{background:var(--sage2)!important;color:white!important}
#hcAgendaModal:has(#fullDay1:target) #fullDay1{display:block!important}
#hcAgendaModal:has(#fullDay1:target) #fullDay2{display:none!important}
#hcAgendaModal:has(#fullDay1:target) [data-full-agenda-tab="fullDay1"]{background:var(--sage2)!important;color:white!important}
#hcAgendaModal:has(#fullDay1:target) [data-full-agenda-tab="fullDay2"]{background:white!important;color:var(--navy)!important}

/* Precisely center the close glyph inside every circular close control. */
.hc-ticket-modal-close,
.hc-speaker-modal-close,
.hc-agenda-close,
.hc-policy-close{
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  line-height:1!important;
  text-align:center!important;
}
.hc-ticket-modal-close>span,
.hc-speaker-modal-close>span,
.hc-agenda-close>span,
.hc-policy-close>span{
  display:block;
  font:400 27px/1 Arial,sans-serif;
  transform:translateY(-1px);
}

@media(max-width:760px){
  /* Ticketing popup: consistent center placement and compact one-screen presentation. */
  .hc-ticket-modal{
    align-items:center!important;
    justify-content:center!important;
    padding:8px!important;
  }
  .hc-ticket-modal-dialog{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    height:auto!important;
    max-height:calc(100dvh - 16px)!important;
    overflow:hidden!important;
    border-radius:16px!important;
  }
  .hc-ticket-modal-header{
    flex:0 0 auto;
    padding:14px 48px 11px 16px!important;
  }
  .hc-ticket-modal-kicker{
    margin:0 0 4px!important;
    font-size:7px!important;
    line-height:1.25!important;
  }
  .hc-ticket-modal-header h2{
    font-size:34px!important;
    line-height:.92!important;
  }
  .hc-ticket-modal-header>p:last-child{
    margin:6px 0 0!important;
    font-size:9px!important;
    line-height:1.35!important;
  }
  .hc-ticket-modal-body{
    display:flex!important;
    flex-direction:column!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  .hc-ticket-selector{
    flex:0 0 auto;
    padding:11px 15px 9px!important;
    border-right:0!important;
    border-bottom:1px solid var(--line)!important;
  }
  .hc-ticket-selector>label{
    margin-bottom:6px!important;
    font-size:9px!important;
  }
  .hc-quantity-control{
    grid-template-columns:40px 58px 40px!important;
    border-radius:8px!important;
  }
  .hc-quantity-control button,
  .hc-quantity-control input{
    height:39px!important;
  }
  .hc-quantity-control input{
    width:58px!important;
    font-size:15px!important;
  }
  .hc-quantity-control button{
    font-size:20px!important;
    touch-action:manipulation!important;
  }
  .hc-ticket-price-notes{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:5px!important;
    margin-top:9px!important;
  }
  .hc-ticket-price-notes div{
    min-height:49px!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:2px!important;
    padding:6px 4px!important;
    border-radius:8px!important;
    text-align:center!important;
  }
  .hc-ticket-price-notes strong,
  .hc-ticket-price-notes span{
    font-size:7.5px!important;
    line-height:1.25!important;
    text-align:center!important;
  }
  .hc-ticket-policy-note{
    margin-top:6px!important;
    font-size:7.5px!important;
    line-height:1.3!important;
  }
  .hc-ticket-summary{
    flex:1 1 auto;
    min-height:0!important;
    padding:9px 15px 11px!important;
    overflow:hidden!important;
  }
  .hc-ticket-summary-label{
    margin:0 0 3px!important;
    font-size:7px!important;
  }
  .hc-ticket-summary-row{
    padding:4px 0!important;
    font-size:8px!important;
  }
  .hc-ticket-summary-row strong{
    font-size:9px!important;
  }
  .hc-ticket-summary-total{
    padding:6px 0!important;
  }
  .hc-ticket-summary-total strong{
    font-size:26px!important;
  }
  .hc-ticket-summary-message{
    min-height:0!important;
    margin:4px 0 6px!important;
    font-size:7.5px!important;
    line-height:1.25!important;
  }
  .hc-paypal-checkout-button{
    min-height:37px!important;
    padding:7px 10px!important;
    font-size:8.5px!important;
  }
  .hc-paypal-pending-note{
    margin:4px 0 0!important;
    font-size:6.8px!important;
    line-height:1.25!important;
  }
  .hc-ticket-policy-link{
    margin-top:5px!important;
    font-size:7.5px!important;
  }
  .hc-ticket-team-note{
    display:none!important;
  }

  /* Speaker popup: move it down from the viewport edge and preserve internal scrolling. */
  .hc-speaker-modal{
    align-items:flex-start!important;
    justify-content:center!important;
    padding:24px 10px 10px!important;
  }
  .hc-speaker-modal-dialog{
    width:100%!important;
    max-height:calc(100dvh - 34px)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    touch-action:pan-y!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .hc-speaker-modal-visual{
    min-height:300px!important;
  }

  /* Full agenda / PDF popup: lower starting position and reliable touch scrolling. */
  .hc-agenda-modal{
    align-items:flex-start!important;
    justify-content:center!important;
    padding:24px 10px 10px!important;
  }
  .hc-agenda-dialog{
    width:100%!important;
    max-height:calc(100dvh - 34px)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    touch-action:pan-y!important;
    -webkit-overflow-scrolling:touch!important;
    padding:30px 18px 22px!important;
  }
  .hc-full-agenda-panel{
    overflow:visible!important;
    max-height:none!important;
  }
  .hc-agenda-modal-actions{
    position:relative!important;
  }

  /* Keep the policy popup comfortably below the top edge as well. */
  .hc-policy-modal{
    align-items:flex-start!important;
    justify-content:center!important;
    padding:24px 10px 10px!important;
  }
  .hc-policy-dialog{
    max-height:calc(100dvh - 34px)!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
}


/* v1.3.4 — real-browser mobile modal fixes and stable controls */
.hc-speaker-card{
  border:0;
  font:inherit;
  text-align:left;
  color:inherit;
  cursor:pointer;
}
.hc-agenda-popup-trigger,
.hc-ag-tabs button,
.hc-full-agenda-tabs button,
.hc-ticket-modal-close,
.hc-speaker-modal-close,
.hc-agenda-close,
.hc-agenda-secondary,
.hc-policy-close,
.hc-policy-done{
  font-family:inherit;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.hc-agenda-popup-trigger{
  border:0;
  background:transparent;
  padding:0;
}
.hc-ticket-modal-close,
.hc-speaker-modal-close,
.hc-agenda-close,
.hc-policy-close{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.hc-ticket-modal-close>span,
.hc-speaker-modal-close>span,
.hc-agenda-close>span,
.hc-policy-close>span{
  display:block!important;
  width:1em;
  height:1em;
  line-height:.92!important;
  text-align:center!important;
  transform:none!important;
}
.hc-quantity-control,
.hc-quantity-control button,
.hc-quantity-control input,
.hc-ticket-price-notes,
.hc-ticket-summary,
.hc-full-agenda-tabs,
.hc-ag-tabs{
  position:relative;
  z-index:2;
  pointer-events:auto!important;
}

@media(max-width:760px){
  /* Ticketing opens near the top and occupies nearly the full browser viewport. */
  .hc-ticket-modal{
    align-items:flex-start!important;
    justify-content:center!important;
    padding:12px 8px max(8px,env(safe-area-inset-bottom))!important;
  }
  .hc-ticket-modal-dialog{
    width:100%!important;
    height:calc(100dvh - 20px)!important;
    max-height:calc(100dvh - 20px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
  }
  .hc-ticket-modal-body{
    overflow:visible!important;
  }
  .hc-ticket-selector,
  .hc-ticket-summary{
    overflow:visible!important;
  }
  .hc-ticket-modal-close{
    top:10px!important;
    right:10px!important;
  }
  .hc-quantity-control button{
    min-width:44px!important;
    min-height:44px!important;
    pointer-events:auto!important;
  }
  .hc-quantity-control input{
    min-height:44px!important;
    pointer-events:auto!important;
  }

  /* Speaker and full-agenda popups start below the browser chrome, not under it. */
  .hc-speaker-modal,
  .hc-agenda-modal,
  .hc-policy-modal{
    align-items:flex-start!important;
    justify-content:center!important;
    padding:52px 10px max(10px,env(safe-area-inset-bottom))!important;
  }
  .hc-speaker-modal-dialog,
  .hc-agenda-dialog,
  .hc-policy-dialog{
    width:100%!important;
    max-height:calc(100dvh - 64px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
  }
  .hc-agenda-close,
  .hc-speaker-modal-close,
  .hc-policy-close{
    top:10px!important;
    right:10px!important;
  }
  .hc-full-agenda-panel{
    max-height:none!important;
    overflow:visible!important;
  }
}


/* v1.3.5 — stable first-open modals and clean local preview */
.hc-ticket-trigger,
.hc-policy-trigger{
  appearance:none;
  -webkit-appearance:none;
  border:0;
  cursor:pointer;
  font-family:inherit;
}
.hc-policy-trigger{
  background:transparent;
  padding:0;
}

/* Real-browser previews use JavaScript; disable the old hash fallback. */
#hcTicketModal:target,
#hcAgendaModal:target,
#hcPolicyModal:target,
#hcSpeakerModal:has(.hc-speaker-modal-panel:target){
  display:none!important;
}
#hcTicketModal.open,
#hcAgendaModal.open,
#hcPolicyModal.open,
#hcSpeakerModal.open{
  display:flex!important;
}

@media(max-width:760px){
  .hc-ticket-modal,
  .hc-agenda-modal,
  .hc-speaker-modal,
  .hc-policy-modal{
    position:fixed!important;
    inset:0!important;
    width:100%!important;
    height:100dvh!important;
    overflow:hidden!important;
  }

  /* Ticketing ends when its content ends. It only scrolls if the
     content is genuinely taller than the usable browser viewport. */
  .hc-ticket-modal{
    align-items:flex-start!important;
    padding:max(10px,env(safe-area-inset-top)) 8px max(10px,env(safe-area-inset-bottom))!important;
  }
  .hc-ticket-modal-dialog{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:calc(100dvh - 20px)!important;
    margin:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
  }

  /* Agenda, speaker, and policy dialogs always initialize near the
     top of the visible browser viewport and scroll internally. */
  .hc-agenda-modal,
  .hc-speaker-modal,
  .hc-policy-modal{
    align-items:flex-start!important;
    padding:max(14px,env(safe-area-inset-top)) 10px max(10px,env(safe-area-inset-bottom))!important;
  }
  .hc-agenda-dialog,
  .hc-speaker-modal-dialog,
  .hc-policy-dialog{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:calc(100dvh - 28px)!important;
    margin:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
  }
}

/* v1.3.11 — unified speaker-card, rail, and profile refinements */
.hc-image-coming-soon{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  padding:24px;
  background:
    radial-gradient(circle at 20% 18%,rgba(210,156,49,.16),transparent 34%),
    linear-gradient(145deg,#f4ede2 0%,#e8dfd3 100%);
  color:var(--navy);
  text-align:center;
}
.hc-image-coming-soon span{
  font:700 18px/1.25 Montserrat,Arial,sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* Keep every card the same size while tightening the internal content rhythm. */
.hc-speaker-grid{
  align-items:stretch!important;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
}
.hc-speaker-card{
  display:flex!important;
  flex-direction:column!important;
  height:390px!important;
  min-height:390px!important;
  overflow:hidden!important;
}
.hc-speaker-card h3{
  min-height:28px!important;
  margin-top:7px!important;
  line-height:1.2!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
}
.hc-speaker-card .hc-sp-role{
  min-height:34px!important;
  max-height:34px!important;
  margin-top:2px!important;
  line-height:1.32!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:3!important;
  overflow:hidden!important;
}
.hc-speaker-card .hc-sp-desc{
  margin-top:5px!important;
  line-height:1.42!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:5!important;
  overflow:hidden!important;
}
.hc-speaker-card .hc-speaker-more{
  margin-top:auto!important;
  padding-top:6px!important;
  flex:0 0 auto!important;
}

/* Lift the rail instruction visually without changing the section's overall height. */
.hc-speaker-scroll-callout{
  transform:translateY(-15px)!important;
}

@media(max-width:760px){
  .hc-speaker-card{
    height:390px!important;
    min-height:390px!important;
  }
  .hc-speaker-card h3{
    min-height:30px!important;
    margin-top:7px!important;
  }
  .hc-speaker-card .hc-sp-role{
    min-height:36px!important;
    max-height:36px!important;
    margin-top:2px!important;
  }
  .hc-speaker-card .hc-sp-desc{
    margin-top:5px!important;
    line-height:1.42!important;
  }
  .hc-speaker-card .hc-speaker-more{
    padding-top:6px!important;
  }
  .hc-speaker-scroll-callout{
    transform:translateY(-12px)!important;
  }
  .hc-image-coming-soon span{
    font-size:15px;
  }
}

/* v1.3.14 — restore stable rail behavior and simplify anchor fallbacks */
.hc-speaker-grid{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-behavior:auto!important;
  scroll-snap-type:none!important;
  overscroll-behavior-x:contain!important;
  overscroll-behavior-y:auto!important;
  scrollbar-gutter:auto!important;
  -webkit-overflow-scrolling:touch;
}
.hc-speaker-grid:focus-visible{
  outline:2px solid rgba(82,104,70,.55);
  outline-offset:5px;
}

/* Sensible native-hash fallback if JavaScript is delayed or unavailable. */
.hc-ref-page section[id]{
  scroll-margin-top:22vh;
}

/* Touch devices retain gentle card snapping; desktop trackpads remain continuous. */
@media (hover:none) and (pointer:coarse), (max-width:760px){
  .hc-speaker-grid{
    scroll-snap-type:x proximity!important;
  }
  .hc-ref-page section[id]{
    scroll-margin-top:18vh;
  }
}

/* v1.3.15 — two targeted production fixes only */
/* Chrome/macOS trackpads now use their native left/right gesture; handled in JS. */
.hc-pricing-box .hc-price:nth-child(2) small{
  white-space:nowrap!important;
}
