/* Custom homepage revision: varied compositions and a richer supporting palette.
   Section roots retain their original spacing and alternating neutral surfaces. */
:root {
  --violet: #6956b9;
  --violet-soft: #f0edfc;
  --teal: #117478;
  --teal-soft: #e9f7f4;
  --warm: #aa5229;
  --warm-soft: #fff1e7;
}
main :is(h1, h2, h3) { text-wrap: balance; }

/* The logo blue remains the anchor; cyan and violet give the hero more depth. */
.hero {
  background:
    radial-gradient(ellipse at 91% 18%, rgb(135 87 214 / 32%), transparent 48%),
    radial-gradient(ellipse at 65% 86%, rgb(38 179 182 / 20%), transparent 48%),
    linear-gradient(120deg, #0b203b, #132d50 54%, #252647);
}
.hero::after {
  background:
    radial-gradient(ellipse at 42% 62%, rgb(44 180 237 / 23%), transparent 55%),
    radial-gradient(ellipse at 67% 20%, rgb(167 116 245 / 29%), transparent 42%);
}
@supports (background-clip: text) {
  .hero h1 em {
    background-image: linear-gradient(100deg, #73daff, #b6bdff 65%, #ebc5ed);
  }
}
.hero-layout { grid-template-columns: 1.04fr 1fr; gap: 60px; }
.question-bubble {
  margin-right: 56px;
  border-radius: 16px 16px 16px 4px;
  border-color: rgb(193 172 255 / 40%);
  background: linear-gradient(115deg, rgb(89 80 152 / 68%), rgb(39 67 113 / 80%));
}
.question-bubble > span { color: #d9d3ff; }
.answer-sheet {
  margin-left: 38px;
  border-radius: 16px;
  background: linear-gradient(140deg, #fff 26%, #f2f4ff 70%, #e7f8fa);
}
.source-preview {
  border-left-color: #8c7fdb;
  border-radius: 0 9px 9px 0;
  background: linear-gradient(105deg, #efedff, #edf9fc);
}
.source-preview > span { color: var(--violet); }
.source-preview > div > span:nth-child(2) { color: var(--teal); }
.source-preview > div > span:nth-child(3) { color: #96674b; }
.platform-strip > div > span:nth-child(2) { color: #b7d9ff; }
.platform-strip > div > span:nth-child(3) { color: #d9caff; }
.platform-strip > div > span:nth-child(4) { color: #adede5; }
.platform-strip > div > span:nth-child(5) { color: #e8d6c9; }

/* One large discovery tile, two smaller horizontal companion tiles. */
.value-grid { grid-template-columns: 1.05fr 1.35fr; gap: 20px; }
.value-grid article {
  position: relative;
  border: 0;
  border-radius: 15px;
  padding: 26px 30px 26px 154px;
  background: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.value-grid article:first-child {
  grid-row: span 2;
  padding: 36px;
  color: white;
  background:
    radial-gradient(circle at 100% 0, rgb(86 203 231 / 34%), transparent 59%),
    linear-gradient(135deg, #126ab0, #255ba3 70%, #455698);
  box-shadow: 0 16px 35px rgb(31 83 148 / 13%);
}
.value-grid article:first-child::after {
  content: "";
  position: absolute;
  width: 150px;
  height: 150px;
  right: 22px;
  top: 22px;
  border: 1px solid rgb(210 244 255 / 20%);
  border-radius: 50%;
  pointer-events: none;
  background: radial-gradient(circle, rgb(108 210 255 / 10%), transparent 70%);
}
.value-grid article:nth-child(2) { background: var(--violet-soft); }
.value-grid article:nth-child(3) { background: var(--warm-soft); }
.value-word { position: absolute; left: 30px; top: 28px; font-size: 30px; margin: 0; color: var(--violet); }
.value-grid article:nth-child(3) .value-word { color: var(--warm); }
.value-grid article:first-child .value-word { position: static; font-size: 48px; color: #fff; margin: 0 0 30px; }
.value-grid h3 { font-size: 18px; margin: 0 0 12px; }
.value-grid article:first-child h3 { font-size: 23px; max-width: 325px; }
.value-grid p { font-size: 13px; }
.value-grid article:not(:first-child) p { color: #5d677b; }
.value-grid article:first-child p { color: #d4eafa; max-width: 340px; }

/* A staggered illustration stage accompanies an open, unboxed service story. */
.service-tabs { width: max-content; max-width: 100%; margin-bottom: 32px; gap: 12px; padding: 5px; border: 0; background: #f1f4f8; border-radius: 10px; }
.service-tabs button { padding: 12px 23px; border-radius: 7px; font-size: 16px; }
.service-tabs button[aria-selected=true] { background: #fff; color: var(--violet); box-shadow: 0 3px 12px rgb(47 40 91 / 9%); }
.service-tabs button::after { display: none; }
.service-tabs button > span { display: block; margin: 3px 0 0; font-size: 11px; }
.service-panel {
  grid-template-columns: .9fr 1.25fr;
  gap: 78px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
}
.service-panel::before { display: none; }
.service-copy { grid-column: 2; grid-row: 1; padding: 24px 0; }
.service-copy .panel-label { color: var(--violet); }
.service-copy h3 { font-size: 28px; }
.feature-list { gap: 16px 20px; margin: 27px 0 30px; }
.feature-list li::before { border-radius: 50%; background: #8877c9; }
.service-visual {
  grid-column: 1;
  grid-row: 1;
  min-height: 360px;
  padding: 18px 38px 85px 12px;
  border: 0;
  border-radius: 45% 55% 42% 58% / 56% 48% 52% 44%;
  background: linear-gradient(140deg, #ebe5fc, #eaf2ff 62%, #e2f6f4);
  text-align: center;
  align-self: start;
  margin-top: 8px;
}
.service-visual::before { width: 285px; height: 285px; top: 19px; background: radial-gradient(circle, #fff9, transparent 72%); }
.service-visual img { width: 290px; height: auto; }
.service-visual-caption {
  position: absolute;
  bottom: 5px;
  right: -18px;
  width: 290px;
  padding: 20px 24px;
  margin: 0;
  text-align: left;
  border: 1px solid #e2e1f1;
  border-radius: 12px;
  background: rgb(255 255 255 / 96%);
  box-shadow: 0 14px 32px rgb(86 74 140 / 10%);
}
.service-visual-caption > strong { color: var(--violet); font-size: 13px; }
.service-visual-caption p { font-size: 12px; }

/* A vertical path gives this module a different rhythm from the card sections. */
#workflow > .container { display: grid; grid-template-columns: .75fr 1.25fr; gap: 95px; align-items: start; }
.workflow-heading { margin: 0; padding-top: 15px; }
.workflow-heading h2 { font-size: 36px; line-height: 1.55; }
.workflow-heading > p:last-child { max-width: 290px; font-size: 14px; margin-top: 20px; }
.workflow-grid { display: grid; grid-template-columns: 1fr; gap: 0; padding-left: 30px; }
.workflow-grid article {
  --step-color: #2176a9;
  position: relative;
  display: grid;
  grid-template-columns: 185px 1fr;
  gap: 7px 24px;
  padding: 23px 0 23px 28px;
  border-top: 0;
  border-bottom: 1px solid var(--line);
  border-left: 1px solid #d5dce8;
}
.workflow-grid article:first-child { padding-top: 7px; }
.workflow-grid article:last-child { border-bottom: 0; padding-bottom: 7px; }
.workflow-grid article:nth-child(2) { --step-color: #7160ae; }
.workflow-grid article:nth-child(3) { --step-color: #177572; }
.workflow-grid article:nth-child(4) { --step-color: #9b6038; }
.workflow-grid article::before {
  content: "";
  position: absolute;
  left: -5px;
  top: 31px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--step-color);
  box-shadow: 0 0 0 6px var(--subtle);
}
.workflow-grid article:first-child::before { top: 16px; }
.workflow-title { grid-row: 1 / 3; align-items: start; padding-top: 0; }
.workflow-title h3 { font-size: 18px; }
.workflow-title > span { color: var(--step-color); font-size: 22px; }
.workflow-grid p { margin: 0; font-size: 13px; }
.workflow-output { margin: 0; font-size: 11px; color: var(--step-color); }

/* A broad observation board, rather than another text/image split. */
.measurement-layout { display: block; }
.measurement-intro, .pricing-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; align-items: center; margin-bottom: 32px; }
.measurement-layout > .measurement-intro, .pricing-layout > .pricing-intro { max-width: none; }
.measurement-intro .section-lead, .pricing-intro .section-lead { margin: 0 0 12px; }
.evidence-table { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; padding: 0; border: 0; border-radius: 14px; background: #edf5fc; box-shadow: none; overflow: hidden; }
.evidence-table::before { display: none; }
.evidence-header { display: flex; justify-content: space-between; grid-column: 1 / -1; padding: 18px 30px; border: 0; background: #163958; color: #b1d5f0; font-size: 12px; }
.evidence-table article { display: block; padding: 29px 32px; border: 0; border-right: 1px solid #d6e5ee; }
.evidence-table article:nth-of-type(2) { background: #e6f3f0; }
.evidence-table article:nth-of-type(3) { background: #f0ecf8; border-right: 0; }
.evidence-table article strong { font-size: 22px; color: var(--primary); }
.evidence-table article:nth-of-type(2) strong { color: var(--teal); }
.evidence-table article:nth-of-type(3) strong { color: var(--violet); }
.evidence-table article span { font-size: 12px; margin: 7px 0 19px; color: #65758a; }
.evidence-table article p { font-size: 13px; color: #596c7b; }
.evidence-note { grid-column: 1 / -1; padding: 15px 30px; background: #f8fafc; font-size: 11px; color: #718399; }

/* Side navigation and a warm editorial stage for the industry content. */
.industry-workspace { display: grid; grid-template-columns: 175px 1fr; gap: 32px; align-items: start; }
.industry-controls { flex-direction: column; gap: 30px; margin: 0; padding-top: 10px; }
.industry-tabs { flex-direction: column; gap: 7px; width: 100%; }
.industry-tabs button { text-align: left; border: 0; border-radius: 8px; padding: 14px 20px; font-size: 15px; width: 100%; }
.industry-tabs button[aria-selected=true] { background: #fff; color: var(--primary); box-shadow: 0 5px 18px rgb(32 74 111 / 7%); }
.industry-tabs button[aria-selected=true]:hover { color: var(--primary); }
.industry-select-label { display: grid; gap: 9px; width: 100%; font-size: 12px; }
.industry-select-label select { min-width: 0; width: 100%; font-size: 12px; background: transparent; }
.industry-panel {
  grid-template-columns: 1.3fr .8fr;
  gap: 25px;
  border: 1px solid #f2dfd2;
  border-radius: 18px;
  padding: 35px;
  background: linear-gradient(130deg, #fff6ec, #fffaf5 56%, #f0edfa);
  min-height: 475px;
}
.industry-panel::before { inset: 10% 0 20% 60%; width: auto; height: auto; transform: none; border-radius: 50%; background: radial-gradient(ellipse, rgb(137 111 213 / 17%), transparent 70%); }
.industry-copy .panel-label { color: var(--warm); }
.industry-copy h3 { font-size: 25px; }
.industry-copy > p:not(.panel-label) { font-size: 13px; color: #5c697a; }
.industry-panel > img { width: 260px; height: auto; align-self: start; margin-top: 48px; }
.question-list { margin: 22px 0; }
.question-list > span { color: #876c5b; font-size: 12px; }
.question-list ul { font-size: 12px; }
.question-list li { background: rgb(255 255 255 / 68%); border-left-color: #dba988; padding: 8px 12px; color: #6e635d; }

/* Three plans step across the page, with the standard plan raised in the middle. */
.pricing-layout { display: block; }
.plan-list { display: grid; grid-template-columns: .95fr 1.1fr .95fr; grid-template-areas: "basic standard professional" "note note note"; gap: 22px; align-items: start; border: 0; }
.plan-list article {
  grid-area: basic;
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: 26px;
  padding: 30px;
  min-height: 365px;
  margin-top: 28px;
  border: 1px solid #d6e7f5;
  border-radius: 12px;
  background: #f1f8fe;
}
.plan-list article:last-of-type { grid-area: professional; border-color: #d4e9e4; background: #edf7f4; margin-top: 56px; }
.plan-list article.featured {
  grid-area: standard;
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: center;
  gap: 26px;
  padding: 36px;
  min-height: 422px;
  margin-top: 0;
  border: 1px solid #bfc5e9;
  background:
    radial-gradient(circle at 100% 10%, rgb(124 153 242 / 28%), transparent 50%),
    linear-gradient(135deg, #263e79, #45417a);
  color: #fff;
  box-shadow: 0 12px 30px rgb(55 53 117 / 12%);
}
.plan-name h3 { font-size: 23px; }
.plan-name > span { font-size: 12px; color: #6e8094; }
.featured .plan-name > span { color: #c7d1ed; }
.plan-description strong { font-size: 33px; }
.plan-description strong small { font-size: 12px; }
.plan-description p { font-size: 12px; margin-top: 12px; color: #5f6c7e; }
.featured .plan-description strong { color: #fff; font-size: 45px; }
.featured .plan-description strong small:last-child, .featured .plan-description p { color: #c7d1ed; }
.plan-list article:last-of-type .plan-description strong { color: var(--teal); }
.plan-list article > button { grid-column: 1; justify-content: start; width: max-content; padding: 5px 0; margin-top: auto; font-size: 13px; }
.plan-list article.featured > button { background: #fff; color: #3d4782; border-radius: 6px; padding: 10px 22px; min-height: 44px; gap: 30px; }
.pricing-note { grid-area: note; font-size: 11px; margin: 0; }

/* Magazine cover + two reading entries, then a compact FAQ below. */
.knowledge-layout { display: block; }
.knowledge-intro { margin-bottom: 30px; }
.reading-list { display: grid; grid-template-columns: 1.05fr 1fr; grid-template-rows: 1fr 1fr; gap: 18px 24px; margin: 0 0 34px; }
.reading-list button { border: 0; border-radius: 11px; background: white; padding: 28px 58px 28px 29px; }
.reading-list button > span { font-size: 12px; color: var(--teal); margin-bottom: 13px; }
.reading-list strong { font-size: 19px; }
.reading-list b { top: 28px; right: 25px; font-size: 26px; }
.reading-list button:first-child { grid-row: span 2; padding: 34px; background: linear-gradient(140deg, #e2ecfc, #ece6fc 72%, #f1e5f3); overflow: hidden; }
.reading-list button:first-child > span { color: var(--violet); }
.reading-list button:first-child strong { font-size: 29px; line-height: 1.65; margin-bottom: 17px; }
.reading-list button:first-child p { max-width: 350px; font-size: 13px; color: #56677a; }
.reading-list button:first-child b { top: auto; bottom: 22px; right: 25px; width: 40px; height: 40px; display: grid; place-items: center; background: #fff9; border-radius: 50%; color: var(--violet); }
.reading-list button:last-child > span { color: var(--warm); }
.reading-list button:hover { background: #eaf5fc; }
.reading-list button:first-child:hover { background: linear-gradient(140deg, #dbeafa, #e7dff7 72%, #f1e5f3); }
.faq-list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 55px; align-items: start; }
.faq-list details { padding: 20px 0; }
.faq-list details:first-child { grid-row: span 2; }
.faq-list details:last-child { grid-column: 2; }
.faq-list details > p { font-size: 13px; }
.contact-section {
  background:
    radial-gradient(ellipse at 8% 70%, rgb(23 183 188 / 40%), transparent 50%),
    radial-gradient(ellipse at 92% 6%, rgb(172 140 240 / 44%), transparent 45%),
    linear-gradient(110deg, #126698, #235b9d 52%, #444b8d);
}
.contact-layout { display: block; text-align: center; }
.contact-section h2 { font-size: 32px; }
.contact-actions { display: flex; justify-content: center; align-items: center; gap: 30px; margin-top: 30px; }

@media (max-width: 1100px) {
  .hero-layout { gap: 30px; }
  .value-grid article { padding-left: 125px; }
  .value-word { font-size: 26px; left: 25px; }
  .service-panel { gap: 45px; }
  .service-copy h3 { font-size: 25px; }
  .service-visual { min-height: 335px; padding-right: 20px; }
  .service-visual-caption { right: -10px; width: 270px; }
  #workflow > .container { gap: 48px; grid-template-columns: .75fr 1.4fr; }
  .workflow-heading h2 { font-size: 31px; }
  .workflow-grid article { grid-template-columns: 158px 1fr; gap: 7px 20px; }
  .workflow-title h3 { font-size: 17px; }
  .measurement-intro, .pricing-intro { gap: 60px; }
  .industry-workspace { grid-template-columns: 150px 1fr; gap: 24px; }
  .industry-panel { gap: 22px; padding: 30px; }
  .industry-copy h3 { font-size: 23px; }
  .plan-list article { padding: 24px; gap: 14px 15px; }
  .plan-list article.featured { padding: 29px; }
}
@media (max-width: 900px) {
  .answer-sheet { margin-left: 15px; }
  .question-bubble { margin-right: 15px; }
  .value-grid { grid-template-columns: .9fr 1.1fr; gap: 16px; }
  .value-grid article { padding: 23px; }
  .value-word { position: static; font-size: 24px; margin: 0 0 14px; }
  .value-grid article:first-child { padding: 28px; }
  .value-grid article:first-child .value-word { font-size: 40px; }
  .value-grid article:first-child h3 { font-size: 21px; }
  .value-grid h3 { font-size: 17px; }
  .service-panel { grid-template-columns: .85fr 1.2fr; gap: 40px; }
  .service-visual { min-height: 310px; padding: 20px 12px 85px; }
  .service-visual img { width: 220px; }
  .service-visual-caption { right: -12px; width: 235px; padding: 17px; }
  .service-copy h3 { font-size: 23px; }
  .feature-list { grid-template-columns: 1fr 1fr; font-size: 12px; gap: 12px; }
  #workflow > .container { grid-template-columns: 1fr; gap: 26px; }
  .workflow-heading { padding: 0; }
  .workflow-heading h2 br { display: none; }
  .workflow-heading > p:last-child { max-width: none; }
  .workflow-grid { padding-left: 8px; }
  .workflow-grid article { grid-template-columns: 195px 1fr; }
  .measurement-intro, .pricing-intro { grid-template-columns: 1fr; gap: 20px; }
  .measurement-intro h2 br, .pricing-intro h2 br { display: none; }
  .measurement-intro .section-lead, .pricing-intro .section-lead { max-width: 620px; }
  .evidence-table article { padding: 24px; }
  .evidence-table article strong { font-size: 20px; }
  .industry-workspace { grid-template-columns: 1fr; gap: 22px; }
  .industry-controls { display: flex; flex-direction: row; justify-content: space-between; align-items: center; gap: 20px; padding: 0; }
  .industry-tabs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 3px; width: auto; }
  .industry-tabs button { padding: 11px 13px; text-align: center; font-size: 13px; white-space: nowrap; }
  .industry-select-label { width: 155px; flex-shrink: 0; gap: 5px; }
  .industry-select-label select { padding: 8px; }
  .industry-panel { grid-template-columns: 1.5fr 1fr; min-height: 0; }
  .industry-panel > img { width: 235px; }
  .plan-list article { grid-template-columns: 1fr; }
  .plan-list { gap: 16px; }
  .plan-list article { padding: 23px; gap: 22px; min-height: 365px; }
  .plan-name h3 { font-size: 21px; }
  .plan-list article.featured { gap: 25px; padding: 25px; }
  .plan-description strong { font-size: 29px; }
  .featured .plan-description strong { font-size: 37px; }
  .reading-list { gap: 16px; }
  .reading-list button { padding: 24px 47px 24px 25px; }
  .reading-list button:first-child { padding: 29px; }
  .reading-list button:first-child strong { font-size: 25px; }
  .reading-list strong { font-size: 17px; }
  .reading-list b { right: 20px; top: 24px; }
  .faq-list { gap: 0 35px; }
  .contact-section h2 { font-size: 28px; }
}
@media (max-width: 600px) {
  .hero-layout { grid-template-columns: 1fr; gap: 35px; }
  .answer-sheet { margin-left: 12px; border-radius: 12px; padding: 21px; }
  .question-bubble { margin-right: 20px; }
  .value-grid { grid-template-columns: 1fr; gap: 15px; }
  .value-grid article { padding: 25px; }
  .value-grid article:first-child { grid-row: auto; padding: 28px; }
  .value-grid article:first-child .value-word { font-size: 36px; margin-bottom: 20px; }
  .value-grid article:first-child h3 { font-size: 21px; }
  .value-word { font-size: 25px; }
  .value-grid h3 { font-size: 18px; }
  .value-grid p { font-size: 13px; }
  .service-tabs { width: 100%; gap: 4px; margin-bottom: 25px; }
  .service-tabs button { flex: 1; padding: 10px 13px; font-size: 16px; }
  .service-tabs button > span { font-size: 10px; }
  .service-panel { grid-template-columns: 1fr; gap: 26px; }
  .service-copy { grid-column: 1; grid-row: 1; padding: 0; }
  .service-copy h3 { font-size: 25px; }
  .feature-list { margin: 22px 0; gap: 13px 10px; font-size: 12px; }
  .service-actions { gap: 18px; }
  .service-visual { grid-column: 1; grid-row: 2; display: block; margin-top: 0; min-height: 295px; padding: 10px 16px 75px; width: 92%; justify-self: center; }
  .service-visual img { width: 205px; }
  .service-visual-caption { bottom: 0; right: 0; width: 270px; max-width: 100%; text-align: left; }
  .service-visual-caption > strong { font-size: 12px; }
  .service-visual-caption p { font-size: 11px; }
  .service-visual::before { width: 235px; height: 235px; left: 50%; top: 10px; transform: translateX(-50%); }
  .workflow-heading h2 { font-size: 27px; }
  .workflow-heading > p:last-child { font-size: 13px; }
  .workflow-grid article { grid-template-columns: 1fr; gap: 11px; padding: 21px 0 21px 23px; }
  .workflow-title { grid-row: auto; align-items: center; }
  .workflow-title h3 { font-size: 19px; }
  .workflow-output { font-size: 11px; }
  .measurement-intro, .pricing-intro { gap: 17px; margin-bottom: 26px; }
  .evidence-table { grid-template-columns: 1fr; }
  .evidence-header { padding: 17px 22px; font-size: 11px; }
  .evidence-table article { padding: 24px; border-right: 0; }
  .evidence-table article strong { font-size: 21px; }
  .evidence-table article span { margin: 5px 0 14px; }
  .evidence-note { padding: 15px 22px; font-size: 10px; }
  .industry-controls { flex-direction: column; align-items: stretch; gap: 17px; }
  .industry-tabs { width: 100%; gap: 4px; }
  .industry-tabs button { padding: 10px 7px; font-size: 12px; }
  .industry-select-label { display: flex; justify-content: space-between; align-items: center; width: 100%; }
  .industry-select-label select { width: 175px; }
  .industry-panel { grid-template-columns: 1fr; gap: 16px; padding: 27px 23px; border-radius: 13px; }
  .industry-copy h3 { font-size: 24px; }
  .industry-panel > img { width: 190px; margin-top: 0; }
  .industry-panel::before { inset: auto; bottom: 15px; left: 50%; width: 240px; height: 225px; transform: translateX(-50%); }
  .question-list ul { font-size: 12px; }
  .plan-list { grid-template-columns: 1fr; grid-template-areas: "basic" "standard" "professional" "note"; gap: 16px; }
  .plan-list article, .plan-list article:last-of-type { grid-template-columns: 1fr; gap: 20px; padding: 26px; margin-top: 0; min-height: 0; }
  .plan-list article.featured { padding: 28px; gap: 23px; min-height: 0; }
  .plan-list article > button { grid-column: 1; min-height: 38px; }
  .plan-description strong { font-size: 34px; }
  .featured .plan-description strong { font-size: 42px; }
  .plan-name > span { font-size: 12px; }
  .plan-description p { font-size: 13px; }
  .pricing-note { font-size: 10px; }
  .knowledge-intro h2 { font-size: 26px; }
  .reading-list { grid-template-columns: 1fr; grid-template-rows: auto; gap: 14px; margin-bottom: 26px; }
  .reading-list button { padding: 24px 51px 24px 25px; }
  .reading-list button:first-child { grid-row: auto; padding: 28px 28px 67px; }
  .reading-list button:first-child strong { font-size: 27px; }
  .reading-list strong { font-size: 18px; }
  .reading-list button > span { font-size: 12px; }
  .faq-list { grid-template-columns: 1fr; gap: 0; }
  .faq-list details:first-child { grid-row: auto; }
  .faq-list details:last-child { grid-column: 1; }
  .faq-list details > p { font-size: 13px; }
  .contact-section h2 { font-size: 27px; }
  .contact-actions { gap: 18px; flex-wrap: wrap; margin-top: 26px; }
  .contact-actions .btn { font-size: 13px; }
}
