/* Targeted corrections to the locked Harsten sections. */
.section3 #caseTitle.harsten-long-title {
  font-size:clamp(30px,2.38vw,36px) !important;
  line-height:1.02 !important; letter-spacing:-.018em !important;
  overflow-wrap:normal !important; word-break:normal !important;
  hyphens:none !important; max-width:100% !important;
}
@media(max-width:900px) {
  .section3 #caseTitle.harsten-long-title {font-size:clamp(10px,2.65vw,14px) !important;}
}
/* Restore the heavier gold label, icons and arrows in How It Works. */
.section2-live .s2-eyebrow {font-weight:800 !important;}
.section2-live .s2-iconrow svg {stroke-width:3.6 !important;}
.section2-live .s2-arrow {font-weight:700 !important;}
/* Higher-resolution approved Quick Capture composition. */
#section4.harsten-restored-image {
  overflow:hidden !important; background:transparent !important;
  border:0 !important; outline:0 !important; aspect-ratio:auto !important;
}
#section4.harsten-restored-image > img {
  display:block !important; width:100% !important; height:auto !important;
  margin:0 !important; max-width:100% !important; object-fit:contain !important;
  filter:none !important;
}
/* Teal documentation section. Keep its text and evidence card editable. */
#section5.section5-live {
  background:radial-gradient(circle at 88% 18%,rgba(26,100,105,.38),transparent 34%),linear-gradient(115deg,#002934,#003941 55%,#00434a) !important;
}
#section5 .s5-inner {
  grid-template-columns:minmax(0,43.5fr) minmax(0,56.5fr);
  box-sizing:border-box; gap:3.2cqw; padding:2.6cqw 4.8cqw;
}
#section5 .s5-title {font-size:3.45cqw;line-height:1.02;}
#section5 .s5-copyblock {align-self:center;}
#section5 .s5-card {box-sizing:border-box;max-width:100%;}
#section5 .s5-bottom {
  display:grid; grid-template-columns:4.5cqw 4.5cqw 2.7cqw minmax(0,1fr);
  grid-template-rows:3.35cqw auto;gap:.65cqw;align-items:center;
}
#section5 .s5-thumb {
  width:4.5cqw;height:3.35cqw;
  background-image:url('/harsten-documentation-reference.png');
  background-repeat:no-repeat;background-color:#fff;
}
#section5 .s5-thumb.one {
  background-image:url('/harsten-documentation-reference.png');
  background-size:1535% 696%;background-position:53% 65.7%;
}
#section5 .s5-thumb.two {
  background-image:url('/harsten-documentation-reference.png');
  background-size:1893% 696%;background-position:59.85% 65.7%;
}
#section5 .s5-more {width:2.7cqw;height:3.35cqw;}
#section5 .s5-attach {
  grid-column:1 / 4;grid-row:2;font-size:.72cqw;
  white-space:normal;line-height:1.25;min-width:0;
}
#section5 .s5-actions {
  grid-column:4;grid-row:1 / 3;justify-self:end;margin-left:0;
  display:flex;gap:.65cqw;max-width:100%;
}
#section5 .s5-btn {font-size:.84cqw;padding:.78cqw .9cqw;}
/* Logos are repaired in the artwork; no opaque HTML logo patches. */
.section1-lock,#section6 > img {filter:none !important;}

/* One brand gold for editable marketing text, line icons and accents. */
:root { --harsten-gold:#d2b27f; }
.section2-live .s2-eyebrow,
.section2-live .s2-arrow,
#section5 .s5-label { color:var(--harsten-gold) !important; }
.section2-live .s2-iconrow svg,
#section5 .s5-card-head svg { stroke:var(--harsten-gold) !important; }
.section2-live .s2-rule { background:var(--harsten-gold) !important; }
#section5 .s5-btn { border-color:var(--harsten-gold) !important; }

/* Monthly pricing, with the same cream, dark teal and brand gold palette. */
.hero-pricing { left:63.6%; top:.4%; width:6.2%; height:6.1%; }
#pricing { scroll-margin-top:18px; background:#f8f5ef; color:#002934; }
#pricing .hp-inner { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,76px);align-items:center;padding:clamp(28px,4.8vw,72px); }
#pricing .hp-eyebrow {margin:0 0 20px;font:800 13px/1.4 Arial,Helvetica,sans-serif;letter-spacing:.16em;color:var(--harsten-gold);}
#pricing h2 {margin:0 0 24px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(32px,3.6vw,54px);line-height:1.07;letter-spacing:-.025em;}
#pricing .hp-copy {margin:0;max-width:450px;font-size:clamp(16px,1.4vw,21px);line-height:1.55;color:#435c63;}
#pricing .hp-note {margin:32px 0 0;font:italic 26px/1.3 Georgia,'Times New Roman',serif;color:#687467;}
#pricing .hp-plan {padding:clamp(26px,3vw,44px);background:linear-gradient(135deg,#002934,#003b42);border:1px solid rgba(210,178,127,.55);border-radius:20px;box-shadow:0 12px 26px rgba(0,41,52,.12);color:#fff;}
#pricing .hp-plan-name {margin:0 0 12px;color:var(--harsten-gold);font-size:15px;font-weight:700;letter-spacing:.03em;}
#pricing .hp-price {margin:0 0 16px;display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;}
#pricing .hp-price > span:first-child {font-size:clamp(46px,4.4vw,66px);font-weight:700;line-height:1.05;letter-spacing:-.04em;}
#pricing .hp-period {font-size:17px;color:#dce4e3;}
#pricing .hp-plan-copy {margin:0 0 24px;font-size:16px;line-height:1.5;color:#dce4e3;}
#pricing .hp-features {list-style:none;margin:0 0 30px;padding:22px 0 0;border-top:1px solid rgba(210,178,127,.3);display:grid;gap:15px;}
#pricing .hp-features li {position:relative;padding-left:27px;font-size:15px;line-height:1.5;}
#pricing .hp-features li::before {content:'✓';position:absolute;left:0;color:var(--harsten-gold);font-weight:700;}
#pricing .hp-start {display:flex;align-items:center;justify-content:center;gap:14px;width:100%;box-sizing:border-box;border:1px solid var(--harsten-gold);border-radius:10px;padding:16px 20px;background:var(--harsten-gold);color:#002934;font-size:17px;font-weight:700;text-decoration:none;transition:background .15s;}
#pricing .hp-start:hover {background:#dfc49b;}
#pricing .hp-start:focus-visible {outline:3px solid #fff;outline-offset:4px;}
@media(max-width:760px) {
 #pricing .hp-inner {grid-template-columns:minmax(0,1fr);gap:26px;padding:28px 22px;}
 #pricing .hp-note {margin-top:20px;}
 #pricing .hp-plan {padding:28px 22px;}
 #pricing h2 {font-size:36px;}
}

/* Pricing is a modal opened from the top navigation. */
button.hero-pricing {padding:0;font:inherit;}
dialog#pricing {box-sizing:border-box;width:min(1100px,calc(100% - 32px));max-width:1100px;max-height:calc(100dvh - 40px);margin:auto;padding:0;border:1px solid rgba(210,178,127,.55);border-radius:22px;overflow:auto;box-shadow:0 24px 80px rgba(0,20,26,.4);font-family:Arial,Helvetica,sans-serif;}
dialog#pricing::backdrop {background:rgba(0,25,33,.72);backdrop-filter:blur(5px);}
dialog#pricing .hp-inner {padding:48px;gap:36px;}
dialog#pricing h2 {font-size:clamp(32px,3.1vw,44px);}
dialog#pricing .hp-plan {padding:32px;}
dialog#pricing .hp-close {position:absolute;top:10px;right:12px;z-index:2;width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;background:#f8f5ef;color:#002934;font-size:28px;line-height:1;cursor:pointer;}
dialog#pricing .hp-close:hover {background:#e9dfcf;}
dialog#pricing .hp-close:focus-visible {outline:2px solid #002934;outline-offset:2px;}
@media(max-width:760px) {
 dialog#pricing {width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:16px;}
 dialog#pricing .hp-inner {padding:48px 22px 24px;gap:24px;}
 dialog#pricing .hp-plan {padding:26px 22px;}
}

/* FAQ opens from the existing top menu. */
button.hero-faq {left:69.8%;top:.4%;width:4.6%;height:6.1%;padding:0;font:inherit;}
dialog#faq {box-sizing:border-box;width:min(900px,calc(100% - 32px));max-width:900px;max-height:calc(100dvh - 40px);margin:auto;padding:0;border:1px solid rgba(210,178,127,.55);border-radius:22px;overflow:auto;background:#f8f5ef;color:#002934;box-shadow:0 24px 80px rgba(0,20,26,.4);font-family:Arial,Helvetica,sans-serif;}
dialog#faq::backdrop {background:rgba(0,25,33,.72);backdrop-filter:blur(5px);}
#faq .hf-inner {padding:44px 48px 32px;}
#faq .hf-eyebrow {margin:0 0 14px;color:var(--harsten-gold);font-size:13px;font-weight:800;letter-spacing:.16em;}
#faq h2 {margin:0 0 14px;font:700 clamp(32px,3.2vw,44px)/1.08 Georgia,'Times New Roman',serif;letter-spacing:-.025em;}
#faq .hf-intro {margin:0 0 26px;color:#435c63;font-size:16px;line-height:1.5;}
#faq .hf-questions {border-top:1px solid #ded9ce;}
#faq details {border-bottom:1px solid #ded9ce;}
#faq summary {position:relative;list-style:none;cursor:pointer;padding:20px 38px 20px 0;font-size:17px;font-weight:700;line-height:1.4;}
#faq summary::-webkit-details-marker {display:none;}
#faq summary::after {content:'+';position:absolute;right:2px;top:17px;width:28px;height:28px;text-align:center;border:1px solid var(--harsten-gold);border-radius:50%;color:#8c6b3c;font-size:22px;font-weight:400;line-height:26px;}
#faq details[open] summary::after {content:'−';}
#faq details p {margin:0;padding:0 38px 22px 0;font-size:16px;line-height:1.6;color:#435c63;}
#faq summary:focus-visible {outline:2px solid #002934;outline-offset:2px;border-radius:4px;}
#faq .hf-close {position:absolute;top:10px;right:12px;z-index:2;width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;background:#f8f5ef;color:#002934;font-size:28px;line-height:1;cursor:pointer;}
#faq .hf-close:hover {background:#e9dfcf;}
#faq .hf-close:focus-visible {outline:2px solid #002934;outline-offset:2px;}
#faq .hf-bottom {display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:26px;}
#faq .hf-bottom>span {font:italic 21px/1.3 Georgia,'Times New Roman',serif;color:#687467;}
#faq .hf-bottom a {padding:13px 22px;border-radius:9px;background:var(--harsten-gold);color:#002934;font-size:16px;font-weight:700;text-decoration:none;white-space:nowrap;}
#faq .hf-bottom a:hover {background:#dfc49b;}
#faq .hf-bottom a:focus-visible {outline:2px solid #002934;outline-offset:3px;}
@media(max-width:600px) {
 dialog#faq {width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:16px;}
 #faq .hf-inner {padding:44px 22px 24px;}
 #faq summary {font-size:16px;}
 #faq details p {padding-right:0;font-size:15px;}
 #faq .hf-bottom {align-items:flex-start;flex-direction:column;}
}

/* Security and privacy popup, matching the other top-menu dialogs. */
button.hero-security {left:56.6%;top:.4%;width:7%;height:6.1%;padding:0;font:inherit;}
dialog#security {box-sizing:border-box;width:min(980px,calc(100% - 32px));max-width:980px;max-height:calc(100dvh - 40px);margin:auto;padding:0;border:1px solid rgba(210,178,127,.55);border-radius:22px;overflow:auto;background:#f8f5ef;color:#002934;box-shadow:0 24px 80px rgba(0,20,26,.4);font-family:Arial,Helvetica,sans-serif;}
dialog#security::backdrop {background:rgba(0,25,33,.72);backdrop-filter:blur(5px);}
#security .hs-inner {padding:44px 48px 36px;}
#security .hs-eyebrow {margin:0 0 14px;color:var(--harsten-gold);font-size:13px;font-weight:800;letter-spacing:.16em;}
#security h2 {margin:0 0 16px;font:700 clamp(32px,3.2vw,44px)/1.08 Georgia,'Times New Roman',serif;letter-spacing:-.025em;}
#security .hs-intro {margin:0 0 28px;color:#435c63;font-size:17px;line-height:1.5;}
#security .hs-cards {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
#security .hs-cards article {padding:24px;border:1px solid rgba(210,178,127,.45);border-radius:14px;background:#00323b;color:#fff;}
#security .hs-cards svg {width:30px;height:30px;margin-bottom:14px;fill:none;stroke:var(--harsten-gold);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
#security h3 {margin:0 0 10px;font-size:18px;line-height:1.3;}
#security .hs-cards p {margin:0;font-size:15px;line-height:1.55;color:#e1e8e7;}
#security .hs-policy {display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:28px;padding-top:24px;border-top:1px solid #ded9ce;}
#security .hs-policy h3 {font-size:17px;}
#security .hs-policy p {margin:0;font-size:15px;line-height:1.5;color:#435c63;}
#security .hs-policy a {flex-shrink:0;padding:14px 20px;border-radius:9px;background:var(--harsten-gold);color:#002934;font-size:15px;font-weight:700;text-decoration:none;}
#security .hs-policy a:hover {background:#dfc49b;}
#security .hs-policy a:focus-visible {outline:2px solid #002934;outline-offset:3px;}
#security .hs-close {position:absolute;top:10px;right:12px;z-index:2;width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;background:#f8f5ef;color:#002934;font-size:28px;line-height:1;cursor:pointer;}
#security .hs-close:hover {background:#e9dfcf;}
#security .hs-close:focus-visible {outline:2px solid #002934;outline-offset:2px;}
@media(max-width:650px) {
 dialog#security {width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:16px;}
 #security .hs-inner {padding:44px 22px 26px;}
 #security .hs-cards {grid-template-columns:minmax(0,1fr);gap:14px;}
 #security .hs-policy {align-items:flex-start;flex-direction:column;gap:18px;}
}

/* More detailed disclosures retain the approved Security popup design. */
#security .hs-details {margin-top:24px;border-top:1px solid #ded9ce;}
#security .hs-details details {border-bottom:1px solid #ded9ce;}
#security .hs-details summary {padding:18px 0;font-size:16px;font-weight:700;cursor:pointer;}
#security .hs-details p {margin:0;padding:0 0 20px;color:#435c63;font-size:15px;line-height:1.6;}
#security .hs-details summary:focus-visible {outline:2px solid #002934;outline-offset:2px;}

/* Complete Use Cases popup from the top menu and homepage carousel button. */
button.hero-usecases {padding:0;font:inherit;}
dialog#use-cases-dialog {box-sizing:border-box;width:min(1120px,calc(100% - 32px));max-width:1120px;max-height:calc(100dvh - 40px);margin:auto;padding:0;border:1px solid rgba(210,178,127,.55);border-radius:22px;overflow:auto;background:#f8f5ef;color:#002934;box-shadow:0 24px 80px rgba(0,20,26,.4);font-family:Arial,Helvetica,sans-serif;}
dialog#use-cases-dialog::backdrop {background:rgba(0,25,33,.72);backdrop-filter:blur(5px);}
#use-cases-dialog .hu-inner {padding:42px 40px 30px;}
#use-cases-dialog .hu-eyebrow {margin:0 0 14px;color:var(--harsten-gold);font-size:13px;font-weight:800;letter-spacing:.14em;}
#use-cases-dialog h2 {margin:0 0 14px;font:700 clamp(32px,3.1vw,42px)/1.08 Georgia,'Times New Roman',serif;letter-spacing:-.025em;}
#use-cases-dialog .hu-intro {margin:0 0 26px;color:#435c63;font-size:16px;line-height:1.5;}
#use-cases-dialog .hu-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
#use-cases-dialog article {display:flex;flex-direction:column;padding:22px;border:1px solid rgba(210,178,127,.45);border-radius:14px;background:#00323b;color:#fff;}
#use-cases-dialog article svg {width:28px;height:28px;margin-bottom:14px;fill:none;stroke:var(--harsten-gold);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}
#use-cases-dialog h3 {margin:0 0 12px;font-size:19px;line-height:1.25;}
#use-cases-dialog article p {margin:0 0 18px;font-size:14px;line-height:1.55;color:#e1e8e7;}
#use-cases-dialog .hu-tags {margin-top:auto;padding-top:12px;border-top:1px solid rgba(210,178,127,.25);font-size:12px;line-height:1.5;color:var(--harsten-gold);}
#use-cases-dialog .hu-bottom {display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;}
#use-cases-dialog .hu-bottom>span {font:italic 23px/1.3 Georgia,'Times New Roman',serif;color:#687467;}
#use-cases-dialog .hu-bottom a {padding:14px 24px;border-radius:9px;background:var(--harsten-gold);color:#002934;font-size:16px;font-weight:700;text-decoration:none;}
#use-cases-dialog .hu-bottom a:hover {background:#dfc49b;}
#use-cases-dialog .hu-bottom a:focus-visible {outline:2px solid #002934;outline-offset:3px;}
#use-cases-dialog .hu-close {position:absolute;top:10px;right:12px;z-index:2;width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;background:#f8f5ef;color:#002934;font-size:28px;line-height:1;cursor:pointer;}
#use-cases-dialog .hu-close:hover {background:#e9dfcf;}
#use-cases-dialog .hu-close:focus-visible {outline:2px solid #002934;outline-offset:2px;}
@media(max-width:900px) {#use-cases-dialog .hu-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:600px) {
 dialog#use-cases-dialog {width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:16px;}
 #use-cases-dialog .hu-inner {padding:44px 22px 26px;}
 #use-cases-dialog .hu-grid {grid-template-columns:minmax(0,1fr);gap:14px;}
 #use-cases-dialog .hu-bottom {align-items:flex-start;flex-direction:column;}
}

/* Plain-language guide opened from How It Works and See How It Works. */
button.hero-how,button.hero-see-how {padding:0;font:inherit;}
dialog#how-it-works-dialog {box-sizing:border-box;width:min(1000px,calc(100% - 32px));max-width:1000px;max-height:calc(100dvh - 40px);margin:auto;padding:0;border:1px solid rgba(210,178,127,.55);border-radius:22px;overflow:auto;background:#f8f5ef;color:#002934;box-shadow:0 24px 80px rgba(0,20,26,.4);font-family:Arial,Helvetica,sans-serif;}
#how-it-works-dialog::backdrop {background:rgba(0,25,33,.72);backdrop-filter:blur(5px);}
#how-it-works-dialog .hw-inner {padding:42px 44px 30px;}
#how-it-works-dialog .hw-eyebrow {margin:0 0 14px;font-size:13px;font-weight:800;letter-spacing:.16em;color:var(--harsten-gold);}
#how-it-works-dialog h2 {margin:0 0 16px;font:700 clamp(32px,3.2vw,44px)/1.08 Georgia,'Times New Roman',serif;letter-spacing:-.025em;}
#how-it-works-dialog .hw-intro {max-width:760px;margin:0 0 26px;font-size:16px;line-height:1.55;color:#435c63;}
#how-it-works-dialog .hw-steps {list-style:none;margin:0;padding:0;display:grid;gap:14px;}
#how-it-works-dialog .hw-steps>li {display:grid;grid-template-columns:42px minmax(0,1fr);gap:18px;padding:22px 24px;background:#00323b;border:1px solid rgba(210,178,127,.45);border-radius:14px;color:#fff;}
#how-it-works-dialog .hw-number {display:grid;place-items:center;width:40px;height:40px;box-sizing:border-box;border:1px solid var(--harsten-gold);border-radius:50%;font-size:20px;font-weight:700;color:var(--harsten-gold);}
#how-it-works-dialog h3 {margin:0 0 9px;font-size:19px;line-height:1.3;}
#how-it-works-dialog li p {margin:0;color:#e1e8e7;font-size:15px;line-height:1.6;}
#how-it-works-dialog li strong {color:#fff;}
#how-it-works-dialog details {margin-top:12px;}
#how-it-works-dialog summary {cursor:pointer;color:var(--harsten-gold);font-size:14px;line-height:1.5;font-weight:700;}
#how-it-works-dialog summary:focus-visible {outline:2px solid var(--harsten-gold);outline-offset:4px;border-radius:2px;}
#how-it-works-dialog .hw-help {padding-top:12px;}
#how-it-works-dialog .hw-help p+p {margin-top:10px;}
#how-it-works-dialog .hw-example {margin-top:20px;padding:20px 24px;border:1px solid #d8c5a7;border-radius:12px;background:#eee7db;}
#how-it-works-dialog .hw-example strong {font-size:16px;}
#how-it-works-dialog .hw-example p {margin:8px 0 0;font-size:15px;line-height:1.6;color:#435c63;}
#how-it-works-dialog .hw-bottom {display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;}
#how-it-works-dialog .hw-bottom>span {font:italic 22px/1.3 Georgia,'Times New Roman',serif;color:#687467;}
#how-it-works-dialog .hw-bottom a {padding:14px 24px;background:var(--harsten-gold);color:#002934;border-radius:9px;font-size:16px;font-weight:700;text-decoration:none;white-space:nowrap;}
#how-it-works-dialog .hw-bottom a:hover {background:#dfc49b;}
#how-it-works-dialog .hw-bottom a:focus-visible {outline:2px solid #002934;outline-offset:3px;}
#how-it-works-dialog .hw-close {position:sticky;top:10px;float:right;margin:10px 12px -46px 0;z-index:2;width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;background:#f8f5ef;color:#002934;font-size:28px;line-height:1;cursor:pointer;}
#how-it-works-dialog .hw-close:hover {background:#e9dfcf;}
#how-it-works-dialog .hw-close:focus-visible {outline:2px solid #002934;outline-offset:2px;}
@media(max-width:600px) {
 dialog#how-it-works-dialog {width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:16px;}
 #how-it-works-dialog .hw-inner {padding:44px 20px 24px;}
 #how-it-works-dialog .hw-steps>li {padding:20px 16px;grid-template-columns:32px minmax(0,1fr);gap:12px;}
 #how-it-works-dialog .hw-number {width:32px;height:32px;font-size:17px;}
 #how-it-works-dialog h3 {font-size:18px;}
 #how-it-works-dialog .hw-bottom {align-items:flex-start;flex-direction:column;}
}
