/* ===== ENCORE 2026 standalone landing page — Figma "1560px and up" (node 287:2175) ===== */

/* ---- Base ---- */
*, *::before, *::after { box-sizing: border-box; }
html, body { width: 100%; max-width: 100%; overflow-x: hidden; }
body { margin: 0; -webkit-text-size-adjust: 100%; }
img, video, iframe { max-width: 100%; }
img { height: auto; display: block; }
p, h1, h2, h3, h4, h5, h6, li, span, a, div { overflow-wrap: break-word; word-wrap: break-word; }

.skip-link {
  position: absolute;
  left: 8px;
  top: 8px;
  z-index: 100;
  padding: 8px 16px;
  border-radius: 8px;
  background-color: #212e3b;
  color: #fafafa;
  font-family: 'Inter', 'Segoe UI', system-ui, -apple-system, sans-serif;
  text-decoration: none;
  transform: translateY(-200%);
}
.skip-link:focus { transform: none; }

#main-2 {
  background-color: #ffffff;
  color: #212e3b;
  font-family: 'Inter', 'Segoe UI', system-ui, -apple-system, sans-serif;
}
#main-2 h1, #main-2 h2, #main-2 h3 {
  font-family: 'Inter', 'Segoe UI', system-ui, -apple-system, sans-serif;
  color: #212e3b;
  letter-spacing: normal;
  margin: 0;
}
#main-2 p { margin: 0; }
#main-2 ul { margin: 0; padding: 0; list-style: none; }
#main-2 .container {
  width: min(100% - clamp(32px, 6vw, 96px), 1344px);
  max-width: 1344px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
  min-width: 0;
}
#main-2 .section { margin: 0; }

/* ---- Shared type ---- */
#main-2 .section-head { display: flex; flex-direction: column; gap: 8px; }
#main-2 .section-label {
  font-size: clamp(0.95rem, 0.8rem + 0.75vw, 1.5rem);
  font-weight: 500;
  line-height: 1.34;
  text-transform: uppercase;
  color: #125477;
}
#main-2 .section-head h2 {
  font-size: clamp(1.9rem, 1.2rem + 2.9vw, 3.5rem);
  font-weight: 600;
  line-height: 1.15;
  color: #125477;
}
#main-2 .section-intro {
  font-size: clamp(1.02rem, 0.95rem + 0.45vw, 1.375rem);
  line-height: 1.36;
  margin-top: 8px;
}

/* ---- Buttons ---- */
#main-2 .btn.btn-register {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: auto;
  max-width: 100%;
  padding: clamp(0.85rem, 0.6rem + 1vw, 1.5rem) clamp(2.5rem, 1rem + 7vw, 10rem);
  border: 0;
  border-radius: 8px;
  background-image: linear-gradient(180deg, #212e3b 0%, #2f5e8d 100%);
  color: #fafafa;
  font-family: inherit;
  font-size: clamp(1.15rem, 0.95rem + 1.05vw, 2rem);
  font-weight: 600;
  line-height: 1.25;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  white-space: normal;
  filter: drop-shadow(-0.5px -0.5px 1px rgba(0, 0, 0, 0.2)) drop-shadow(0.5px 0.5px 1px rgba(0, 0, 0, 0.2));
  transition: transform 0.18s ease, filter 0.18s ease;
}
#main-2 .btn.btn-register:hover,
#main-2 .btn.btn-register:focus {
  color: #ffffff;
  transform: translateY(-2px);
  filter: drop-shadow(0 6px 14px rgba(33, 46, 59, 0.35));
}
#main-2 .btn-arrow {
  width: clamp(40px, 3.3vw, 63px);
  height: clamp(23px, 1.9vw, 36px);
  flex-shrink: 0;
  background-image: url("../images/arrow-right.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
#main-2 .btn.btn-outline-dark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  max-width: 100%;
  padding: clamp(0.6rem, 0.45rem + 0.5vw, 0.75rem) clamp(2.5rem, 1rem + 7vw, 10rem);
  border: 4px solid #212e3b;
  border-radius: 8px;
  background: transparent;
  color: #212e3b;
  font-family: inherit;
  font-size: clamp(1.1rem, 0.95rem + 0.85vw, 1.75rem);
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  text-align: center;
  white-space: normal;
  box-shadow: -0.5px -0.5px 2px rgba(0, 0, 0, 0.2), 0.5px 0.5px 2px rgba(0, 0, 0, 0.2);
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}
#main-2 .btn.btn-outline-dark:hover,
#main-2 .btn.btn-outline-dark:focus {
  color: #212e3b;
  transform: translateY(-2px);
  box-shadow: 0 6px 14px rgba(33, 46, 59, 0.25);
}

/* ---- Hero ---- */
#main-2 .home-hero {
  position: relative;
  overflow: hidden;
  background-image: linear-gradient(180deg, #ddeaff 50.48%, #f5f5f5 100%);
  padding-top: clamp(3.5rem, 2rem + 6.5vw, 10.25rem);
  padding-bottom: clamp(3rem, 1.75rem + 5vw, 7.5rem);
}
#main-2 .hero-mark {
  position: absolute;
  top: 0;
  right: 12.85%;
  width: clamp(60px, 8.15vw, 124px);
  aspect-ratio: 313.62 / 440.05;
  background-image: url("../images/hero-mark.svg");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
  pointer-events: none;
}
#main-2 .hero-shell { position: relative; z-index: 1; }
#main-2 .hero-copy { min-width: 0; }
#main-2 .hero-title { line-height: normal; }
#main-2 .hero-title-kicker {
  display: block;
  font-size: clamp(2rem, 1.3rem + 3.2vw, 3.75rem);
  font-weight: 600;
  line-height: 1.3;
  color: #125477;
}
#main-2 .hero-title-main {
  display: block;
  font-size: clamp(2.4rem, 1.5rem + 4.6vw, 5.375rem);
  font-weight: 700;
  color: #125477;
  padding-left: clamp(0.5rem, 1.6vw, 1.5rem);
}
#main-2 .hero-tagline {
  max-width: 1042px;
  margin-top: 32px;
  font-size: clamp(1.02rem, 0.95rem + 0.45vw, 1.375rem);
  line-height: 1.36;
}
#main-2 .hero-tagline p + p { margin-top: 1.36em; }
#main-2 .hero-tagline strong { font-weight: 600; }
#main-2 .hero-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: clamp(1.25rem, 2.6vw, 2.5rem);
  margin-top: clamp(2rem, 4.2vw, 4rem);
  padding-left: clamp(0px, 1.6vw, 1.5rem);
}
#main-2 .hero-meta-item {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
#main-2 .hero-meta-icon {
  width: clamp(52px, 4.6vw, 70px);
  height: clamp(52px, 4.6vw, 70px);
  flex-shrink: 0;
  border-radius: 50%;
  background-color: #fafafa;
  background-repeat: no-repeat;
  background-position: center;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.12);
}
#main-2 .hero-meta-icon-date { background-image: url("../images/icon-date.svg"); background-size: 60% 60%; }
#main-2 .hero-meta-icon-location { background-image: url("../images/icon-location.svg"); background-size: 71% 71%; }
#main-2 .hero-meta-text {
  font-size: clamp(1.05rem, 0.9rem + 1vw, 1.75rem);
  font-weight: 500;
  text-decoration: underline;
  text-decoration-thickness: from-font;
  text-underline-position: from-font;
}
#main-2 .hero-note {
  margin-top: 16px;
  font-size: clamp(1.05rem, 0.95rem + 0.55vw, 1.5rem);
  line-height: 1.34;
  font-style: italic;
}
#main-2 .hero-actions {
  margin-top: clamp(2rem, 4.2vw, 4rem);
}

/* ---- Reasons ---- */
#main-2 .reasons-section {
  background-color: #f5f5f5;
  padding-top: clamp(3.5rem, 2rem + 5vw, 7.5rem);
  padding-bottom: clamp(3.5rem, 2rem + 5vw, 7.5rem);
}
#main-2 .reasons-head { text-align: center; }
#main-2 .reasons-head .section-intro {
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}
#main-2 .reasons-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
  align-items: stretch;
  margin-top: 40px;
}
#main-2 .reason-cell { min-width: 0; display: flex; }
#main-2 .reason-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(1.75rem, 2.9vw, 2.75rem);
  width: 100%;
  padding: 36px 32px;
  border-radius: 20px;
  background-color: #fafafa;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
#main-2 .reason-icon {
  width: clamp(80px, 7vw, 106px);
  height: clamp(80px, 7vw, 106px);
  flex-shrink: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
#main-2 .reason-icon-1 { background-image: url("../images/icon-reason-1.svg"); }
#main-2 .reason-icon-2 { background-image: url("../images/icon-reason-2.svg"); }
#main-2 .reason-icon-3 { background-image: url("../images/icon-reason-3.svg"); }
#main-2 .reason-title {
  font-size: clamp(1.2rem, 1rem + 0.9vw, 1.75rem);
  font-weight: 500;
  text-transform: uppercase;
  text-align: center;
  color: #125477;
}
#main-2 .reason-content { display: flex; flex-direction: column; gap: 24px; width: 100%; }
#main-2 .reason-content p {
  font-size: clamp(1rem, 0.93rem + 0.45vw, 1.375rem);
  line-height: 1.36;
  text-align: center;
}

/* ---- Photo pairs ---- */
#main-2 .photo-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  margin-top: 40px;
}
#main-2 .photo-pair img {
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

/* ---- Program ---- */
#main-2 .program-section {
  background-image: linear-gradient(180deg, #f5f5f5 10.58%, #ddeaff 100%);
  padding-top: clamp(3.5rem, 2rem + 5vw, 7.5rem);
  padding-bottom: clamp(3.5rem, 2rem + 5vw, 7.5rem);
}
#main-2 .program-head .section-intro { max-width: 1344px; }
#main-2 .program-cols {
  display: grid;
  grid-template-columns: minmax(0, 2.06fr) minmax(0, 1fr);
  gap: 28px;
  align-items: stretch;
  margin-top: 40px;
}
#main-2 .day-list {
  display: flex;
  flex-direction: column;
  gap: 28px;
}
#main-2 .day-item {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: clamp(1.25rem, 2.4vw, 2.25rem) 24px;
  border-radius: 8px;
  background-color: #fafafa;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
#main-2 .day-icon {
  width: clamp(76px, 7vw, 106px);
  height: clamp(76px, 7vw, 106px);
  flex-shrink: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
#main-2 .day-icon-0 { background-image: url("../images/icon-day-0.svg"); background-size: 77.4% 77.4%; }
#main-2 .day-icon-1 { background-image: url("../images/icon-day-1.svg"); }
#main-2 .day-icon-2 { background-image: url("../images/icon-day-2.svg"); }
#main-2 .day-icon-3 { background-image: url("../images/icon-day-3.svg"); }
#main-2 .day-item p {
  font-size: clamp(1rem, 0.93rem + 0.45vw, 1.375rem);
  line-height: 1.36;
  min-width: 0;
}
#main-2 .day-item strong { font-weight: 600; }
#main-2 .topics-col {
  display: flex;
  flex-direction: column;
  gap: 24px;
  min-width: 0;
}
#main-2 .topics-head {
  font-size: clamp(1.25rem, 1rem + 1.05vw, 2rem);
  font-weight: 600;
  line-height: 1.25;
  text-transform: uppercase;
}
#main-2 .topics-list {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 12px;
}
#main-2 .topic-pill {
  padding: 12px 40px;
  border-radius: 8px;
  background-color: #fafafa;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  font-size: clamp(1rem, 0.93rem + 0.45vw, 1.375rem);
  font-weight: 500;
  line-height: 1.36;
}

/* ---- Featured speakers ---- */
#main-2 .speakers-section {
  background-image: linear-gradient(180deg, #ddeaff 50.48%, #f5f5f5 100%);
  padding-top: clamp(3.5rem, 2rem + 5vw, 7.5rem);
  padding-bottom: clamp(3.5rem, 2rem + 5vw, 7.5rem);
}
#main-2 .speakers-head { text-align: center; }
#main-2 .speakers-list {
  display: flex;
  flex-direction: column;
  gap: 28px;
  margin-top: 40px;
}
#main-2 .speaker-card {
  display: flex;
  align-items: center;
  gap: clamp(1.75rem, 2.9vw, 2.75rem);
  padding: 36px 32px;
  border-radius: 20px;
  background-color: #fafafa;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
#main-2 .speaker-photo {
  width: clamp(150px, 16.4vw, 248px);
  height: clamp(150px, 16.4vw, 248px);
  flex-shrink: 0;
  border-radius: 50%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
#main-2 .speaker-photo-1 { background-image: url("../images/speaker-1.jpg"); }
#main-2 .speaker-photo-2 { background-image: url("../images/speaker-2.jpg"); }
#main-2 .speaker-photo-3 { background-image: url("../images/speaker-3.jpg"); }
#main-2 .speaker-body {
  display: flex;
  flex-direction: column;
  gap: 24px;
  min-width: 0;
}
#main-2 .speaker-name {
  font-size: clamp(1.2rem, 1rem + 0.9vw, 1.75rem);
  font-weight: 500;
  text-transform: uppercase;
  color: #125477;
}
#main-2 .speaker-body p {
  font-size: clamp(1rem, 0.93rem + 0.45vw, 1.375rem);
  line-height: 1.36;
}
#main-2 .speaker-body strong { font-weight: 600; }
#main-2 .speakers-more {
  margin-top: 40px;
  text-align: center;
  font-style: italic;
}
#main-2 .speakers-more-title {
  font-size: clamp(1.05rem, 0.95rem + 0.55vw, 1.5rem);
  line-height: 1.34;
}
#main-2 .speakers-more-text {
  margin-top: 8px;
  font-size: clamp(1rem, 0.93rem + 0.45vw, 1.375rem);
  line-height: 1.36;
}

/* ---- About the organizer ---- */
#main-2 .about-section {
  background-color: #f5f5f5;
  padding-top: clamp(3.5rem, 2rem + 5vw, 7.5rem);
  padding-bottom: clamp(2rem, 1.5rem + 2vw, 3.5rem);
}
#main-2 .about-head { text-align: center; }
#main-2 .about-text {
  margin-top: 40px;
  text-align: center;
  font-size: clamp(1.02rem, 0.95rem + 0.45vw, 1.375rem);
  line-height: 1.36;
}
#main-2 .about-text p + p { margin-top: 1.36em; }
#main-2 .about-cta {
  display: flex;
  justify-content: center;
  margin-top: 40px;
}

/* ---- Logos band ---- */
#main-2 .logos-section {
  background-color: #f5f5f5;
  padding-top: clamp(1.5rem, 3vw, 3rem);
  padding-bottom: clamp(3.5rem, 2rem + 5vw, 7.5rem);
}
#main-2 .logos-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(2rem, 4vw, 4rem);
  width: min(100%, 988px);
  margin-left: auto;
  margin-right: auto;
}
#main-2 .logo-encore {
  width: clamp(280px, 41vw, 617px);
  aspect-ratio: 617 / 252;
  flex-shrink: 1;
  background-image: url("../images/logo-encore.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
#main-2 .logos-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(1.5rem, 2.6vw, 2.5rem);
  flex-shrink: 0;
}
#main-2 .logo-dti {
  width: clamp(170px, 15.8vw, 239px);
  aspect-ratio: 238.64 / 115.8;
  background-image: url("../images/logo-dti.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
#main-2 .logo-taxcore {
  width: clamp(170px, 15.8vw, 239px);
  aspect-ratio: 238.83 / 76.81;
  background-image: url("../images/logo-taxcore.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/* ---- Registration ---- */
#main-2 .register-section {
  background-image: linear-gradient(180deg, #f5f5f5 34.62%, #edf1f9 100%);
  padding-top: clamp(3.5rem, 2rem + 5vw, 7.5rem);
  padding-bottom: clamp(3.5rem, 2rem + 5vw, 7.5rem);
}
#main-2 .register-head { text-align: center; }
#main-2 .register-actions {
  display: flex;
  justify-content: center;
  margin-top: 40px;
}

/* ---- Testimonials ---- */
#main-2 .quotes-section {
  background-image: linear-gradient(180deg, #edf1f9 0%, #ddeaff 77.89%);
  padding-top: clamp(3.5rem, 2rem + 5vw, 7.5rem);
  padding-bottom: clamp(4rem, 2.5rem + 6.5vw, 11.25rem);
}
#main-2 .quotes-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
  align-items: stretch;
  margin-top: 40px;
}
#main-2 .quote-card {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 36px 32px;
  border-radius: 20px;
  background-color: #fafafa;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
#main-2 .quote-text {
  font-size: clamp(1.2rem, 1rem + 0.9vw, 1.75rem);
  font-weight: 500;
  color: #125477;
}
#main-2 .quote-attr {
  font-size: clamp(1rem, 0.93rem + 0.45vw, 1.375rem);
  line-height: 1.36;
  margin-top: auto;
}

/* ---- Responsive ---- */
@media (max-width: 1100px) {
  #main-2 .program-cols { grid-template-columns: 1fr; }
  #main-2 .quotes-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 992px) {
  #main-2 .reasons-grid {
    grid-template-columns: 1fr;
    max-width: 680px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 900px) {
  #main-2 .logos-row {
    flex-direction: column;
    justify-content: center;
    gap: 2.5rem;
  }
  #main-2 .logo-encore { width: min(100%, 480px); }
  #main-2 .speaker-card {
    flex-direction: column;
    text-align: center;
  }
  #main-2 .speaker-body { align-items: center; }
}
@media (max-width: 768px) {
  #main-2 .hero-mark { display: none; }
  #main-2 .hero-meta { flex-direction: column; align-items: flex-start; padding-left: 0; }
  #main-2 .hero-actions .btn.btn-register { width: 100%; }
  #main-2 .program-head { text-align: center; }
  #main-2 .quotes-head { text-align: center; }
  #main-2 .photo-pair { grid-template-columns: 1fr; }
  #main-2 .quotes-grid { grid-template-columns: 1fr; }
  #main-2 .day-item { flex-direction: column; text-align: center; }
  #main-2 .topics-head { text-align: center; }
  #main-2 .topic-pill { text-align: center; padding: 12px 20px; }
  #main-2 .register-actions .btn.btn-register { width: 100%; }
  #main-2 .about-cta .btn.btn-outline-dark { width: 100%; }
}
@media (max-width: 480px) {
  #main-2 .hero-meta-item { gap: 8px; }
  #main-2 .reason-card { padding: 28px 20px; }
  #main-2 .day-item { padding: 20px 16px; }
  #main-2 .speaker-card { padding: 28px 20px; }
  #main-2 .quote-card { padding: 28px 20px; }
}
