/* Extend the existing tokens and components for the approved service catalog. */
.crm-skip { position:fixed; top:-5rem; left:1rem; z-index:10000; background:#fff; color:var(--dark); padding:.75rem 1rem; }
.crm-skip:focus { top:1rem; }
/* The reading-region skip target is not a control; controls retain their focus rings. */
main#home[tabindex="-1"]:focus { outline:none; }
.nav-services { position:relative; }
.nav-services summary { cursor:pointer; padding:8px 16px; border-radius:999px; color:var(--soft); font-size:.92rem; font-weight:600; list-style:none; white-space:nowrap; }
.nav-services summary::-webkit-details-marker { display:none; }
.nav-services summary::after { content:'⌄'; margin-left:.5rem; }
.service-menu { position:absolute; top:calc(100% + .75rem); left:0; min-width:17rem; display:grid; padding:.65rem; background:#fff; border:1px solid var(--line); border-radius:1rem; box-shadow:var(--shadow); z-index:100; }
.nav-links .service-menu a { display:block; padding:.8rem 1rem; border-radius:.65rem; }
.nav-links>.trigger-booking-btn { padding:.7rem 1.2rem; font-size:.9rem; white-space:nowrap; }
.service-presentation { padding-top:1rem; }
.service-presentation .crm-hero { min-height:0; padding-block:clamp(3rem,6vw,5.5rem); }
.service-presentation .crm-hero h1 { max-width:18ch; }
.service-actions .btn-secondary { text-decoration:none; padding:.875rem 1.5rem; font-size:1rem; }
.service-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
.service-detail-grid p { color:var(--soft); }
.service-detail-grid h2 { font-size:clamp(1.4rem,2.1vw,2rem); }
.service-detail-grid .crm-path { min-width:0; }
.service-center { display:flex; justify-content:center; margin:1.5rem 0; }
.service-faq { scroll-margin-top:8rem; }
.faq-list { max-width:58rem; margin:1.5rem auto; border:1px solid var(--line); border-radius:var(--radius); background:var(--card-bg); overflow:hidden; }
.faq-list details { padding:1.2rem 1.5rem; }
.faq-list details+details { border-top:1px solid var(--line); }
.faq-list summary { cursor:pointer; font-weight:700; line-height:1.5; color:var(--dark); }
.faq-list p { color:var(--soft); margin-top:1rem; line-height:1.7; }
.service-final { text-align:center; padding:clamp(2rem,5vw,4rem) clamp(1.25rem,4vw,3rem); margin-block:2rem 3rem; background:#fff4ed; color:var(--dark); border:1px solid #e2c4b6; border-radius:1.5rem; box-shadow:0 1rem 3rem #0000001a; }
.service-final .crm-actions { justify-content:center; }
.service-final h2 { font-size:clamp(2rem,3vw,3rem); max-width:22ch; margin-inline:auto; text-wrap:balance; }
.service-final .btn { min-height:3rem; }
.service-final .btn-primary { color:#fff; background:linear-gradient(135deg,#a80f08,#be2b0f); }
.service-final .btn-primary:hover { background:#8b160b; }
.service-final .btn-secondary { background:#fff; border-color:#9c5144; color:var(--maroon); text-decoration:none; }
.service-final .btn-secondary:hover { background:#fbe3d5; border-color:var(--maroon); }
.service-final .btn:focus-visible { outline:3px solid var(--maroon); outline-offset:5px; }
.service-offers .offer-card .btn { width:100%; padding:.8rem .7rem; font-size:.875rem; }
.service-offers .offer-card-actions { min-height:0; }
.service-offers .offer-price strong { font-size:clamp(2.1rem,2.6vw,2.9rem); }
.service-offers fieldset { margin:0; }
.service-offers .offer-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.service-offers[data-plan='quarterly'] .offer-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.capacity-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.service-capacity .offer-card .btn { width:100%; padding:.8rem .7rem; font-size:.875rem; }
.service-capacity .offer-card-actions { min-height:0; }
.service-calculator { display:grid; grid-template-columns:1fr 1.2fr; gap:2rem; align-items:center; }
.service-calculator label { display:block; color:var(--dark); font-weight:700; margin-bottom:.75rem; }
.service-calculator input { width:100%; padding:.85rem 1rem; border:1px solid #a89e9b; border-radius:.75rem; background:#fff; color:var(--dark); font:inherit; }
.service-calculator input[aria-invalid='true'] { border:2px solid var(--red); }
.service-calculator #budget-help { font-size:.875rem; color:var(--soft); margin-top:.75rem; }
.service-calculator #pricing-error { color:var(--red); font-size:.875rem; }
.service-calculator #calculated-prices { margin-top:1.5rem; }
.service-table-wrap { overflow-x:auto; max-width:100%; }
.service-table-wrap table { width:100%; border-collapse:collapse; min-width:30rem; }
.service-table-wrap th,.service-table-wrap td { text-align:left; padding:1rem; border-bottom:1px solid var(--line); }
.pricing-explainer { background:var(--card-bg); border:1px solid var(--line); border-radius:1rem; padding:1.5rem; }
.pricing-explainer summary { cursor:pointer; font-weight:700; }
.pricing-explainer p { margin-top:1rem; }
.service-presentation section[id],.offer-card { scroll-margin-top:8rem; }
.service-offers #ads { scroll-margin-top:8rem; }
.input-group[hidden],#calculated-prices[hidden],#pricing-error[hidden] { display:none; }
.services-section .service-card .crm-text-link { margin-top:auto; }
.services-section .service-card { display:flex; flex-direction:column; }
.services-section .service-card-heading { display:flex; align-items:center; gap:.7rem; margin-bottom:1rem; }
.services-section .service-card-heading .icon { flex:0 0 2.5rem; width:2.5rem; height:2.5rem; margin:0; }
.services-section .service-card-heading h3 { min-width:0; margin:0; }
.home-process { scroll-margin-top:8rem; }
.home-process .timeline { list-style:none; padding:0; margin:0; align-items:stretch; }
.home-process .step { min-width:0; }
.home-process .step h3 { min-height:2.5em; line-height:1.25; }
.home-process .center-copy h2 { font-size:clamp(2rem,3.5vw,2.8rem); }
.home-process .center-copy>p:last-child { font-size:1rem; color:var(--dark); }
/* A centered reading column gives long questions and answers equal breathing room. */
.home-faq-panel { display:grid; grid-template-columns:minmax(0,1fr); gap:2rem; padding:clamp(1.25rem,4vw,3.5rem); border:1px solid var(--line); border-radius:var(--radius); background:var(--card-bg); box-shadow:var(--shadow); }
.home-faq-heading { max-width:42rem; margin-inline:auto; text-align:center; }
.home-faq-heading .eyebrow { margin-bottom:1rem; }
.home-faq-heading h2 { font-size:clamp(2rem,3vw,2.8rem); line-height:1.15; margin:0 0 1rem; text-wrap:balance; }
.home-faq-heading>p:not(.eyebrow) { color:var(--soft); line-height:1.7; margin-bottom:1.25rem; }
.home-faq .faq-list { width:100%; max-width:54rem; margin:0 auto; border:0; border-radius:0; background:transparent; overflow:visible; }
.service-faq .faq-list details { padding:0; }
.service-faq .faq-list summary { position:relative; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.35rem clamp(1rem,2vw,1.5rem); list-style:none; min-height:4.5rem; font-size:clamp(.9375rem,1.2vw,1.0625rem); line-height:1.5; text-align:left; }
.service-faq .faq-list summary::-webkit-details-marker { display:none; }
.service-faq .faq-list summary>span { min-width:0; }
/* Draw the indicator from centered strokes so font metrics cannot offset it. */
.service-faq .faq-list summary::after { content:''; flex:0 0 1.75rem; width:1.75rem; height:1.75rem; border:1px solid var(--line); border-radius:50%; color:var(--dark); background-image:linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor); background-position:center; background-size:.625rem 2px,2px .625rem; background-repeat:no-repeat; }
.service-faq .faq-list details[open] summary::after { background-size:.625rem 2px,0 0; }
.service-faq .faq-list details[open] summary { color:#fff; }
.service-faq .faq-list p { margin:0; padding:0 clamp(1rem,2vw,1.5rem) 1.5rem; max-width:75ch; font-size:1rem; line-height:1.8; overflow-wrap:anywhere; text-align:left; }
.service-faq .faq-list details+details { border-top:1px solid var(--line); }
@media(max-width:600px) { .home-process .step h3 { min-height:0; } .service-faq .faq-list summary { gap:.75rem; } }
@media(min-width:1280px) { .service-offers .offer-subtitle { min-height:8.5rem; } }
:is(.nav-services summary,.service-faq summary,.pricing-explainer summary,.service-calculator input):focus-visible { outline:3px solid var(--red); outline-offset:4px; }
@media(max-width:1279px) { .service-offers .offer-grid,.service-offers[data-plan='quarterly'] .offer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:1120px) {
  .nav-services { width:100%; }
  .nav-services summary { text-align:center; }
  .service-menu { position:static; min-width:0; width:100%; box-shadow:none; margin-block:.5rem; }
  .nav-links .service-menu a { text-align:center; font-size:.875rem; }
}
@media(max-width:900px) { .service-calculator,.service-detail-grid { grid-template-columns:1fr; } }
@media(max-width:768px) {
  .service-offers .offer-grid,.service-offers[data-plan='quarterly'] .offer-grid,.capacity-grid { grid-template-columns:1fr; }
  .service-presentation .crm-hero h1 { max-width:none; }
  .service-presentation .crm-hero { padding-block:2.5rem; }
  .service-presentation { padding-top:0; }
  .service-faq .faq-list details { padding:0; }
}

/* The service examples reuse the existing CRM story layout and media frame. */
.home-offers-gateway .crm-path { display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:2rem; background:var(--card-bg); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow); }
.home-offers-gateway h2 { font-size:clamp(1.8rem,3vw,2.6rem); margin-bottom:.75rem; }
.home-offers-gateway p { max-width:52ch; color:var(--soft); }
.home-offers-gateway .btn { flex:none; }
.service-examples .crm-section-heading { padding-bottom:2rem; }
.service-example-story { grid-template-columns:.78fr 1.22fr; }
.service-example-story figure { min-width:0; }
.service-example-story figcaption { display:block; margin-top:.8rem; font-size:.75rem; line-height:1.6; color:var(--soft); }
.service-example-image img { aspect-ratio:auto; object-fit:contain; }
.sales-funnel-visual { padding:clamp(1rem,3vw,2.5rem); border:1px solid #e2d0c7; border-radius:1.25rem; background:#fffaf6; box-shadow:0 .75rem 2rem #36150d0d; }
.sales-funnel-kicker { margin:0 0 .5rem; color:var(--maroon); font-size:.75rem; font-weight:800; letter-spacing:.1em; }
.sales-funnel-subtitle { color:var(--dark); font-family:'Outfit','Outfit Fallback',sans-serif; font-size:clamp(1.3rem,2vw,1.7rem); font-weight:700; line-height:1.25; margin:0 0 1.25rem; }
.sales-funnel-channels { display:flex; flex-wrap:wrap; gap:.4rem; margin-bottom:1.75rem; }
.sales-funnel-channels span { border:1px solid #dfc7ba; border-radius:999px; padding:.3rem .75rem; color:var(--soft); font-size:.7rem; font-weight:600; background:#fff; }
.sales-funnel-stages { display:grid; gap:.8rem; margin:0; padding:0; list-style:none; justify-items:center; }
.sales-funnel-stages li { --stage-color:#3d1711; position:relative; isolation:isolate; display:flex; justify-content:center; align-items:center; gap:.75rem; width:var(--stage-width); min-height:5rem; padding:1rem 1.5rem; color:#fff; }
.sales-funnel-stages li::before { content:''; position:absolute; inset:0; z-index:-1; background:var(--stage-color); clip-path:polygon(0 0,100% 0,97% 100%,3% 100%); border-radius:.5rem; }
.sales-funnel-stages li:nth-child(2) { --stage-color:#5d2117; }
.sales-funnel-stages li:nth-child(3) { --stage-color:#7b2719; }
.sales-funnel-stages li:nth-child(4) { --stage-color:#982c18; }
.sales-funnel-stages li:nth-child(5) { --stage-color:#b33119; }
.sales-funnel-stages li>span { color:inherit; }
.sales-funnel-stages li:not(:last-child)::after { content:''; position:absolute; top:calc(100% + .15rem); left:calc(50% - .2rem); width:.4rem; height:.4rem; border-right:1.5px solid #9c5144; border-bottom:1.5px solid #9c5144; transform:rotate(45deg); }
.sales-funnel-number { display:grid; place-items:center; flex:none; width:1.75rem; height:1.75rem; border:1px solid #ffffff70; border-radius:50%; font-size:.65rem; font-weight:600; }
.sales-funnel-label { min-width:0; text-align:left; }
.sales-funnel-label strong { display:block; font-size:clamp(.875rem,1.2vw,1rem); line-height:1.3; }
.sales-funnel-label>span { display:block; margin-top:.2rem; font-size:.75rem; line-height:1.45; }
.sales-funnel-note { margin:1.5rem 0 0; padding-top:1rem; border-top:1px solid #dfc7ba; font-size:.75rem; line-height:1.6; color:var(--soft); }
.example-responsive-scene { position:relative; padding:1rem 2.5rem 2rem 0; }
.example-desktop-screen { overflow:hidden; border:1px solid var(--crm-border); border-radius:.85rem; background:#fff; box-shadow:0 .75rem 2rem #00000014; }
.example-desktop-screen img { display:block; width:100%; height:auto; }
.example-mobile-frame { position:absolute; width:23%; right:0; bottom:0; border:.35rem solid #241713; border-radius:1.25rem; overflow:hidden; background:#fff; box-shadow:0 .5rem 1.5rem #00000020; }
.example-mobile-screen { display:block; width:100%; height:auto; }
.example-form-scene { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; align-items:start; }
.example-form-frame { border:1px solid var(--crm-border); border-radius:.85rem; overflow:hidden; background:#fff; box-shadow:0 .5rem 1.5rem #00000010; }
.example-form-frame img { display:block; width:100%; height:auto; }
@media(max-width:900px) {
  .service-example-story { grid-template-columns:1fr; }
  .home-offers-gateway .crm-path { align-items:flex-start; flex-direction:column; }
}
.service-hero-symbol,.web-hero-formats { display:none; }
@media(max-width:600px) {
  .service-hero-symbol { display:grid; place-items:center; flex:none; width:6.5rem; height:6.5rem; margin-bottom:1.75rem; border:1px solid var(--crm-border); border-radius:1.5rem; color:var(--maroon); background:var(--cream); box-shadow:0 .5rem 2rem #00000006; }
  .service-hero-symbol svg { width:3.75rem; height:3.75rem; stroke-width:1.8; }
  .web-hero-formats { display:flex; justify-content:center; flex-wrap:wrap; gap:.25rem .6rem; margin:0 0 1.5rem; padding:0; list-style:none; color:var(--soft); font-size:clamp(.75rem,3vw,.8125rem); font-weight:500; line-height:1.5; }
  .web-hero-formats li { display:flex; align-items:center; gap:.6rem; white-space:nowrap; }
  .web-hero-formats li+li::before { content:''; width:.2rem; height:.2rem; border-radius:50%; background:currentColor; }
  #crm-solutions>.crm-story:not(:last-child) { margin-bottom:4rem; }
}
@media(max-width:600px) and (max-height:700px) {
  .service-hero-symbol { width:4rem; height:4rem; margin-bottom:1rem; border-radius:1rem; }
  .service-hero-symbol svg { width:2.5rem; height:2.5rem; }
  .web-hero-formats { margin-bottom:1rem; }
}
@media(max-width:600px) and (prefers-reduced-motion:no-preference) {
  .motion-ready [data-motion-state=visible]>.service-hero-symbol { animation:service-symbol-enter .8s cubic-bezier(.22,.61,.36,1) both; }
  @keyframes service-symbol-enter { from { opacity:0; transform:translateY(.5rem) rotate(-8deg) scale(.92); } to { opacity:1; transform:none; } }
}
@media(max-width:480px) {
  .sales-funnel-stages li { gap:.5rem; padding:.875rem .65rem; }
  .sales-funnel-number { width:1.4rem; height:1.4rem; }
  .home-offers-gateway .btn { width:100%; }
  .example-responsive-scene { padding-right:1.5rem; }
  .example-mobile-frame { border-width:.2rem; border-radius:.7rem; }
  .example-form-scene { grid-template-columns:1fr; max-width:22rem; margin:auto; }
  .example-form-frame:first-child { display:none; }
}

/* The existing HDM palette, copy and controls, with a coordinated motion layer. */
/* Keep the arrow over copy without disabling text selection or form editing. */
body[data-hdm-presentation] { cursor:default; }
[data-hdm-presentation] :where(a[href],button:not(:disabled),summary,select:not(:disabled),input[type=checkbox]:not(:disabled),input[type=radio]:not(:disabled)) { cursor:pointer; }
[data-hdm-presentation] :where(input:not([type=checkbox]):not([type=radio]):not([type=button]):not([type=submit]):not([type=reset]):not([type=hidden]):not(:disabled),textarea:not(:disabled),[contenteditable="true"],[contenteditable=""]) { cursor:text; }
body[data-motion-page] {
  background-image:radial-gradient(ellipse at 50% 0,#ffb28e26,transparent 30rem),linear-gradient(180deg,#f1f2f4,#ece7e3 60%,#fff4ed);
}
[data-motion-page] .site-footer { background:radial-gradient(ellipse at 85% 0,#740a0360,transparent 65%),#1d0502; border-top:1px solid #ffb28e30; }

/* Floating navigation shares the main content width. */
[data-hdm-presentation] .site-header {
  width:92vw; max-width:1400px; margin:1rem auto; top:1rem; padding:.65rem clamp(1rem,2vw,2rem);
  border:1px solid #bda9a066; border-radius:1.5rem;
  background:#fffaf5eF; box-shadow:0 .5rem 2rem #2809050c,inset 0 1px #fff;
  backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
  transition:background .3s ease,box-shadow .3s ease,border-color .3s ease,backdrop-filter .3s ease,-webkit-backdrop-filter .3s ease;
}
[data-hdm-presentation] .site-header.is-scrolled { backdrop-filter:blur(22px) saturate(140%); -webkit-backdrop-filter:blur(22px) saturate(140%); }
[data-hdm-presentation] .site-header .logo-img { height:2.35rem; width:auto; }
[data-hdm-presentation] .nav-links { gap:.1rem; margin-left:auto; }
[data-hdm-presentation] .site-header>.brand { flex-shrink:0; margin-right:1rem; }
[data-hdm-presentation] .nav-links>a,[data-hdm-presentation] .nav-services summary { min-height:2.75rem; display:inline-flex; align-items:center; padding:.65rem .75rem; font-size:.8125rem; }
[data-hdm-presentation] .nav-links>a:hover,[data-hdm-presentation] .nav-services summary:hover { color:var(--maroon); background:#740a0309; }
[data-hdm-presentation] .nav-links :is(.nav-offers,.nav-crm) { border-color:#c3110c30; color:var(--maroon); background:#c3110c06; }
[data-hdm-presentation] .nav-links :is(.nav-offers,.nav-crm):hover { border-color:#c3110c70; background:#c3110c10; color:var(--maroon); }
[data-hdm-presentation] .nav-links>a[aria-current=page] { background:#740a0310; border-color:#740a0360; }
[data-hdm-presentation] .nav-links>.trigger-booking-btn { padding:.75rem 1.1rem; min-height:2.75rem; margin-left:.5rem; font-size:.8125rem; color:#fff; background:linear-gradient(120deg,#a80f08,#be2b0f); box-shadow:0 .25rem 1rem #e6501b30; }
[data-hdm-presentation] .language-switcher { margin-left:.5rem; background:#fff; }
[data-hdm-presentation] .nav-links .language-switcher a { min-width:2rem; min-height:2rem; display:inline-flex; align-items:center; justify-content:center; font-size:.7rem; }
[data-hdm-presentation] .service-menu { min-width:17rem; top:calc(100% + 1rem); padding:.5rem; border-color:#bda9a066; background:#fffcf9; box-shadow:0 1rem 2.5rem #28090516; }
[data-hdm-presentation] .service-menu a { font-size:.875rem; }
[data-hdm-presentation] .nav-services[open] .service-menu { animation:menu-enter .18s ease-out; }
[data-hdm-presentation] .site-header :is(a,button,summary):focus-visible { outline:2px solid var(--maroon); outline-offset:4px; }
@keyframes menu-enter { from { opacity:0; translate:0 -.4rem; } to { opacity:1; translate:0; } }

/* A centered opening and an existing product demo replace the external WebGL scene. */
[data-motion-page] .hero { display:flex; flex-direction:column; align-items:center; min-height:0; padding:clamp(2.5rem,5vw,5rem) 0 4rem; gap:2.5rem; }
[data-motion-page] .hero-content { width:100%; max-width:65rem; text-align:center; }
[data-motion-page] .hero h1 { font-size:clamp(2.25rem,5vw,4.5rem); line-height:1.06; max-width:26ch; margin:0 auto 1.5rem; text-wrap:balance; }
[data-motion-page] .hero-subtitle { max-width:48rem; margin:0 auto 1.75rem; font-size:clamp(1rem,1.4vw,1.125rem); }
[data-motion-page] .hero-actions { justify-content:center; }
[data-motion-page] .hero-actions { position:relative; }
[data-motion-page] .hero .btn-primary { background:linear-gradient(120deg,#a80f08,#be2b0f); }
[data-motion-page] .hero .btn-secondary { background:#fffaf5; border-color:#9c5144; }
[data-motion-page] .hero-visual {
  display:block; position:relative; width:min(100%,65rem); height:auto; min-height:0; max-width:100%;
  padding:7rem 3.5rem 2.25rem; overflow:hidden; border:1px solid #ffb28e55; border-radius:1.75rem;
  background:radial-gradient(ellipse at var(--light-x,50%) 5%,#740a0380,transparent 70%),#1d0502;
  box-shadow:0 1.5rem 4rem #28090520;
}
.hero-halo { position:absolute; inset:0 5% 10%; pointer-events:none; border-radius:50%; background:radial-gradient(ellipse at 50% 105%,transparent 57%,#740a03 58%,#c3110c 60%,#ffb28e 60.5%,#e6501b70 61%,transparent 65%); }
.hero-halo::after { content:''; position:absolute; inset:5%; border-radius:50%; border-top:1px solid #ffb28e50; }
.hero-product-preview { position:relative; margin:0; z-index:1; border:.4rem solid #ffffff18; border-radius:.75rem; overflow:hidden; background:#f1f2f4; box-shadow:0 1.5rem 3.5rem #0009,0 -.25rem 1.5rem #ffb28e16; transform:perspective(1200px) rotateX(var(--preview-tilt,6deg)) rotateY(var(--preview-turn,0deg)); transform-origin:50% 0; transition:transform .4s ease-out; }
.hero-product-preview img { display:block; width:100%; height:auto; aspect-ratio:3020/1660; }
[data-motion-page] .hero-visual .floating-card { min-width:0; padding:.8rem 1rem; border:1px solid #e2c4b6; background:#fffaf5f5; border-radius:.85rem; animation:none; box-shadow:0 .5rem 1.5rem #0002; }
[data-motion-page] .hero-visual .floating-card strong { font-size:1.45rem; }
[data-motion-page] .hero-visual .card-a { top:14%; left:2%; }
[data-motion-page] .hero-visual .card-b { top:48%; right:1.5%; }
[data-motion-page] .hero-visual .card-c { bottom:4%; left:4%; }

/* Section rhythm, restrained edges and alternating product compositions. */
[data-motion-page] main>.section { padding-block:clamp(3rem,5vw,5rem); }
[data-motion-page] :is(.service-card,.result-card,.offer-card,.crm-path,.crm-story,.home-faq-panel,.booking-container) { border-color:#c5aaa080; box-shadow:0 .5rem 2rem #28090508; }
[data-motion-page] :is(.service-card,.offer-card,.crm-path):hover { border-color:#c3110c55; box-shadow:0 .75rem 2.5rem #740a0312; }
[data-motion-page] .service-card { background:linear-gradient(150deg,#fff,#fff4ed); }
[data-motion-page] .service-card .icon { box-shadow:0 .35rem 1rem #e6501b15; }
[data-motion-page] #results { padding:clamp(2rem,4vw,4rem); margin-block:2rem; border:1px solid #ffb28e40; border-radius:1.75rem; background:radial-gradient(ellipse at 100% 0,#740a03a0,transparent 70%),#1d0502; }
[data-motion-page] #results .center-copy :is(h2,p) { color:#fff4ed; }
[data-motion-page] #results .center-copy .eyebrow { color:#ffb28e; }
[data-motion-page] #results .result-card { background:#fff4ed; }
[data-motion-page] .home-offers-gateway .crm-path { padding:clamp(1.5rem,4vw,3rem); background:#fffaf5; }
[data-motion-page] .about-section { background:#fffaf5; border-radius:1.75rem; }
[data-motion-page] .home-faq-panel { background:#fffaf5; }
[data-motion-page] .booking-container { background:#fffaf5; }
[data-motion-page] .service-presentation .crm-hero { padding-block:clamp(3rem,6vw,6rem); }
[data-motion-page] .crm-hero>.crm-path { background:linear-gradient(140deg,#fff,#fff4ed); border-color:#e2c4b6; box-shadow:0 .75rem 2.5rem #740a0310; }
[data-motion-page] .crm-story { background:linear-gradient(145deg,#fffaf5,#f1f2f4); padding:clamp(1.25rem,4vw,3rem); margin-bottom:3rem; }
[data-motion-page] .crm-story figure { perspective:1200px; }
[data-motion-page] .crm-story .crm-screenshot { box-shadow:0 1rem 2rem #28090516; }
[data-motion-page] .service-final { padding:clamp(2rem,5vw,4rem); background:#fff4ed; }
@media(min-width:901px) {
  [data-motion-page] .crm-story:nth-of-type(even) .crm-story-copy { order:2; }
  [data-motion-page] .crm-story:nth-of-type(even) figure { order:1; }
}

/* Individual translate leaves the existing pointer-tilt transform untouched. */
.motion-ready [data-motion-state=waiting] { opacity:0; translate:0 1.75rem; }
.motion-ready [data-motion-state=visible] { animation:hdm-reveal var(--motion-duration,1.25s) cubic-bezier(.22,.61,.36,1) var(--motion-delay,0ms) both; }
@keyframes hdm-reveal { from { opacity:0; translate:0 1.75rem; } to { opacity:1; translate:0 0; } }
@media(max-width:1279px) {
  [data-hdm-presentation] .site-header { padding:.65rem 1rem; }
  [data-hdm-presentation] .mobile-menu { display:block; width:1.75rem; flex:0 0 1.75rem; }
  [data-hdm-presentation] .nav-links { position:absolute; inset:100% 0 auto; flex-direction:column; align-items:stretch; gap:.25rem; padding:1.25rem; margin:0; border-radius:0 0 1rem 1rem; transform:translateY(-.75rem); opacity:0; visibility:hidden; pointer-events:none; overflow-y:auto; background:#fffcf9; border-color:#bda9a080; max-height:calc(100svh - 6.5rem); box-shadow:0 1rem 2rem #2809051a; }
  [data-hdm-presentation] .nav-links.open { transform:none; opacity:1; visibility:visible; pointer-events:auto; }
  [data-hdm-presentation] .nav-links>a,[data-hdm-presentation] .nav-services summary { padding:.75rem 1rem; text-align:left; font-size:.875rem; }
  [data-hdm-presentation] .nav-links>.trigger-booking-btn { margin:0; }
  [data-hdm-presentation] .language-switcher { width:auto; align-self:flex-start; margin:.5rem 0; }
  [data-hdm-presentation] .nav-links .language-switcher a { width:auto; min-width:2.75rem; min-height:2.75rem; }
  [data-hdm-presentation] .service-menu { min-width:0; margin-top:.25rem; box-shadow:none; background:#f7eeea; }
  [data-hdm-presentation] .nav-links .service-menu a { text-align:left; }
  .hero-product-preview { transform:none; }
}
@media(max-width:768px) {
  [data-motion-page] main>.section { padding-block:2.5rem; }
  [data-motion-page] .hero { padding-top:2rem; gap:2rem; }
  [data-motion-page] .hero h1 { max-width:24ch; font-size:clamp(2.1rem,7.5vw,3.2rem); }
  [data-motion-page] .hero-actions { width:100%; max-width:24rem; margin-inline:auto; }
  [data-motion-page] .hero-visual { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.5rem; padding:3rem .75rem .75rem; border-radius:1.25rem; }
  .hero-product-preview { grid-column:1/-1; margin-bottom:.5rem; border-width:.2rem; }
  [data-motion-page] .hero-visual .floating-card { position:relative; top:auto; right:auto; left:auto; bottom:auto; padding:.7rem .4rem; border-radius:.6rem; text-align:center; backdrop-filter:none; }
  [data-motion-page] .hero-visual .floating-card span:nth-of-type(2) { font-size:.625rem; }
  [data-motion-page] .hero-visual .floating-card strong { font-size:1.15rem; }
  [data-motion-page] .hero-visual .card-glow { display:none; }
  [data-motion-page] #results { padding:1.5rem 1rem; }
  [data-motion-page] .crm-story { margin-bottom:1.5rem; }
  .motion-ready [data-motion-state=visible] { animation-duration:var(--motion-duration,1s); animation-delay:0ms; }
  @keyframes hdm-reveal { from { opacity:0; translate:0 .75rem; } to { opacity:1; translate:0 0; } }
}
@media(prefers-reduced-motion:reduce) {
  [data-hdm-presentation] *,[data-hdm-presentation] *::before,[data-hdm-presentation] *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
  .motion-ready [data-motion-state] { opacity:1!important; translate:none!important; }
  .hero-product-preview { transform:none!important; }
  [data-motion-page] .interactive-tilt { transform:none!important; }
}

/* Skip off-screen rendering while preserving searchable, accessible HTML.
   Intrinsic placeholders reserve space; auto remembers the real size after entry.
   The process timeline stays outside containment because it measures descendants. */
@supports(content-visibility:auto) {
  [data-motion-page] main>:is(#services,#offers,#faq,#book,#about,#results,.service-detail-grid,.service-final),
  [data-motion-page] .crm-solutions>.crm-story {
    content-visibility:auto;
    /* Paint containment must leave room for card tilt, zoom and shadows. */
    overflow-clip-margin:4rem;
    contain-intrinsic-size:auto 640px;
  }
  [data-motion-page] main>#services { contain-intrinsic-block-size:auto 650px; }
  [data-motion-page] main>#offers { contain-intrinsic-block-size:auto 365px; }
  [data-motion-page] main>#faq { contain-intrinsic-block-size:auto 1100px; }
  [data-motion-page] main>#book { contain-intrinsic-block-size:auto 530px; }
  [data-motion-page] main>.service-final { contain-intrinsic-block-size:auto 300px; }
  [data-motion-page] .crm-solutions>.crm-story { contain-intrinsic-block-size:auto 850px; }
  @media(max-width:900px) {
    [data-motion-page] main>#services { contain-intrinsic-block-size:auto 1400px; }
    [data-motion-page] main>#offers { contain-intrinsic-block-size:auto 470px; }
    [data-motion-page] main>#faq { contain-intrinsic-block-size:auto 1450px; }
    [data-motion-page] .crm-solutions>.crm-story { contain-intrinsic-block-size:auto 1100px; }
  }
  @media print {
    [data-motion-page] main>*,[data-motion-page] .crm-solutions>.crm-story { content-visibility:visible; }
  }
}

/* Older engines must not crop interactive cards when paint margins are unavailable. */
@supports not (overflow-clip-margin:4rem) {
  [data-motion-page] main>:is(#services,#offers) { content-visibility:visible; }
}

@media(prefers-reduced-motion:reduce) { [data-hdm-presentation] .site-header { transition:none; } }

/* Charcoal is the canvas; silver carries readable text, signal red is the accent. */
body[data-hdm-presentation] {
  --hdm-charcoal:#2A2A2A;
  --hdm-silver:#C0C0C0;
  --hdm-signal:#E10600;
  --hdm-button-gradient:linear-gradient(110deg,#b50b04 0%,#cf2108 50%,#d34210 100%);
  --hdm-button-gradient-hover:linear-gradient(110deg,#a10b04 0%,#be2008 50%,#c83d0d 100%);
  --dark:#f5f5f5; --soft:var(--hdm-silver); --maroon:var(--hdm-silver);
  --red:var(--hdm-signal); --orange:var(--hdm-signal);
  --cream:#333; --peach:var(--hdm-silver); --crm-border:#c0c0c03d;
  --card-bg:#303030; --line:#c0c0c033; --shadow:0 1rem 3rem #0002;
  --motion-travel:2rem;
  --motion-duration:1.25s;
  background-color:var(--hdm-charcoal);
  background-image:radial-gradient(ellipse 65rem 38rem at 50% -8rem,#E106002b,transparent 80%),radial-gradient(ellipse 50rem 65rem at 0 45%,#E106000a,transparent 75%),radial-gradient(ellipse 45rem 65rem at 100% 70%,#C0C0C008,transparent 75%);
  color:var(--dark);
  color-scheme:dark;
}
[data-hdm-presentation] .background-glow { display:none; }
[data-hdm-presentation] .site-header { background:#2a2a2af2; border-color:#c0c0c040; box-shadow:0 .75rem 2rem #0004,inset 0 1px #c0c0c010; }
[data-hdm-presentation] .site-header.is-scrolled { background:rgba(42,42,42,.74); border-color:#c0c0c055; box-shadow:0 .65rem 2rem #0003,inset 0 1px #ffffff12; }
html[data-hdm-theme=dark] .site-header.is-scrolled .nav-pages>a { color:#e6e8ec; }
/* Highlight the image's alpha contours, including lettering and inner edges. */
[data-hdm-presentation] .site-header>.brand { min-height:2.75rem; padding:0; border:0; border-radius:.25rem; background:transparent; box-shadow:none; }
[data-hdm-presentation] .site-header>.brand:focus-visible { outline:2px solid #f5f5f5; outline-offset:4px; }
[data-hdm-presentation] .site-header .logo-img { display:block; filter:drop-shadow(.35px 0 0 #e5e5e5) drop-shadow(-.35px 0 0 #e5e5e5) drop-shadow(0 .35px 0 #e5e5e5) drop-shadow(0 -.35px 0 #e5e5e5) drop-shadow(0 0 2px #c0c0c033); width:3.75rem; max-width:100%; height:auto; aspect-ratio:320/218; object-fit:contain; }
@media(max-width:768px) {
  [data-hdm-presentation] .site-header .logo-img { width:3.5rem; }
}
[data-hdm-presentation] .nav-links { background-color:transparent; }
[data-hdm-presentation] .nav-links :is(a,summary) { color:var(--hdm-silver); }
[data-hdm-presentation] .nav-links>a:hover,
[data-hdm-presentation] .nav-services summary:hover { color:#fff; background:#c0c0c010; }
[data-hdm-presentation] .nav-links :is(.nav-offers,.nav-crm) { color:#f5f5f5; background:#e106000a; border-color:#e1060060; }
[data-hdm-presentation] .nav-links :is(.nav-offers,.nav-crm):hover,
[data-hdm-presentation] .nav-links>a[aria-current=page] { color:#fff; background:#e106001f; border-color:var(--hdm-signal); }
[data-hdm-presentation] .language-switcher { background:#333; border-color:#c0c0c040; }
[data-hdm-presentation] .nav-links .language-switcher a[aria-current=page] { color:#fff; background:var(--hdm-signal); }
[data-hdm-presentation] .language-divider { color:var(--hdm-silver); }
[data-hdm-presentation] .service-menu { background:#303030; border-color:#c0c0c040; box-shadow:0 1rem 2rem #0005; }
[data-hdm-presentation] .service-menu a:hover { color:#fff; background:#c0c0c012; }
[data-hdm-presentation] .mobile-menu span { background:var(--hdm-silver); }

/* Contrast-safe gradients distinguish primary and secondary actions. */
[data-hdm-presentation] :is(.btn-primary,.footer-quote-link),
[data-hdm-presentation] .nav-links>.trigger-booking-btn,
[data-motion-page] .hero .btn-primary,
[data-motion-page] .service-final .btn-primary { color:#fff; background:var(--hdm-button-gradient); border-color:#f536303d; box-shadow:0 .35rem 1.4rem #e106002a; }
[data-hdm-presentation] :is(.btn-primary,.footer-quote-link):hover,
[data-motion-page] .service-final .btn-primary:hover { color:#fff; background:var(--hdm-button-gradient-hover); }
[data-hdm-presentation] .btn-secondary,
[data-motion-page] .hero .btn-secondary,
[data-motion-page] .service-final .btn-secondary { color:#f5f5f5; background:linear-gradient(125deg,#454545,#303030); border-color:#c0c0c080; }
[data-hdm-presentation] .btn-secondary:hover,
[data-motion-page] .service-final .btn-secondary:hover { color:#fff; background:linear-gradient(125deg,#505050,#383838); border-color:var(--hdm-silver); }
[data-hdm-presentation] :is(a,button,summary,input,select):focus-visible { outline:2px solid var(--hdm-silver); outline-offset:4px; }
[data-hdm-presentation] .crm-text-link:hover,
[data-hdm-presentation] .legal-main a:hover { color:#fff; text-decoration:underline; text-decoration-color:var(--hdm-signal); }
[data-hdm-presentation] :is(.text-gradient,.counter),
[data-motion-page] .hero-visual .floating-card strong { background:none; color:#f5f5f5; -webkit-text-fill-color:currentColor; }
[data-hdm-presentation] .eyebrow,[data-hdm-presentation] .crm-eyebrow { color:var(--hdm-silver); }

/* The hero's ambient lighting continues into the page instead of a light shell. */
[data-motion-page] .hero-visual { border:0; background:transparent; box-shadow:none; overflow:visible; }
.hero-halo { background:radial-gradient(ellipse at 50% 105%,transparent 57%,#e1060020 58%,#E10600 60%,#C0C0C0 60.5%,#e1060050 61%,transparent 65%); }
.hero-halo::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at var(--light-x,50%) 40%,#e1060015,transparent 65%); }
.hero-halo::after { border-color:#c0c0c030; }
.hero-product-preview { border-color:#c0c0c02e; box-shadow:0 1.5rem 4rem #0006,0 -.5rem 3rem #e1060020; }
[data-motion-page] .hero-visual .floating-card { color:#f5f5f5; background:#303030f5; border-color:#c0c0c050; box-shadow:0 .75rem 2rem #0005; }
[data-motion-page] :is(.service-card,.result-card,.offer-card,.crm-path,.crm-story,.home-faq-panel,.booking-container,.service-final,.about-section,.pricing-explainer,.faq-list),
[data-motion-page] #results .result-card,
[data-motion-page] .home-offers-gateway .crm-path,
[data-motion-page] .crm-hero>.crm-path { color:#f5f5f5; background:#303030; border-color:#c0c0c033; box-shadow:0 .75rem 2rem #0002; }
[data-motion-page] :is(.service-card,.offer-card,.crm-path):hover { border-color:#e1060080; box-shadow:0 1rem 2.5rem #0003; }
[data-motion-page] #results { background:radial-gradient(ellipse at 100% 0,#e1060012,transparent 70%),#2a2a2a; border-color:#c0c0c030; }
[data-motion-page] #results .center-copy :is(h2,p) { color:#f5f5f5; }
[data-motion-page] #results .center-copy .eyebrow { color:var(--hdm-silver); }
[data-hdm-presentation] .icon { color:var(--hdm-silver); border-color:#e1060060; background:#e1060010; }
[data-hdm-presentation] .card-glow { background:radial-gradient(circle,#e106001a,transparent 70%); }
[data-hdm-presentation] .timeline-progress-line { background:#c0c0c030; }
[data-hdm-presentation] .timeline-progress-fill { background:var(--hdm-signal); box-shadow:0 0 1rem #e1060050; }
[data-hdm-presentation] .step-number { color:#fff; background:var(--hdm-signal); border-color:var(--hdm-signal); }
[data-hdm-presentation] .step.active { border-color:#e1060080; }
[data-hdm-presentation] .crm-path .crm-number { color:#f5f5f5; background:#363636; border-color:#c0c0c060; }
[data-hdm-presentation] .creator-card::after { background:linear-gradient(180deg,transparent 25%,#2a2a2af5); }
[data-hdm-presentation] .creator-card:focus-visible { outline-color:var(--hdm-silver); }
[data-hdm-presentation] :is(.system-preview,.platform-pill,.offer-term-switch,.offer-term-switch label,.pricing-explainer,.legal-index section) { color:#f5f5f5; background:#363636; border-color:#c0c0c040; }
[data-hdm-presentation] .platform-pill { background:#3d3d3d; }
[data-hdm-presentation] .system-preview-header { border-color:#c0c0c030; }
[data-hdm-presentation] .dots-accent .dot { background:var(--hdm-silver); }
[data-hdm-presentation] .dots-accent .dot.red { background:var(--hdm-signal); }
[data-hdm-presentation] .offer-category { color:var(--hdm-silver); }
[data-hdm-presentation] .offers-section { --offer-accent:var(--hdm-signal); --offer-deep-accent:var(--hdm-signal); }
[data-hdm-presentation] .offer-term-switch input:focus-visible + span { outline-color:var(--hdm-silver); }
[data-hdm-presentation] .offer-price strong { color:#f5f5f5; background:none; -webkit-text-fill-color:currentColor; }
[data-hdm-presentation] .offer-savings-badge { color:#fff; background:var(--hdm-signal); border-color:var(--hdm-signal); }
[data-hdm-presentation] .offer-pricing-note { color:var(--hdm-silver); }
[data-hdm-presentation] .service-calculator input { color:#f5f5f5; background:#363636; border-color:#c0c0c080; }
[data-hdm-presentation] .service-calculator #pricing-error { color:#fff; border-left:3px solid var(--hdm-signal); padding-left:.75rem; }
[data-hdm-presentation] .sales-funnel-visual { background:#292929; border-color:#c0c0c033; box-shadow:0 .75rem 2rem #0003; }
[data-hdm-presentation] .sales-funnel-channels span { background:#363636; border-color:#c0c0c050; }
[data-hdm-presentation] .sales-funnel-stages li { --stage-color:#484848; }
[data-hdm-presentation] .sales-funnel-stages li:nth-child(2) { --stage-color:#4b3b3b; }
[data-hdm-presentation] .sales-funnel-stages li:nth-child(3) { --stage-color:#70302e; }
[data-hdm-presentation] .sales-funnel-stages li:nth-child(4) { --stage-color:#a81915; }
[data-hdm-presentation] .sales-funnel-stages li:nth-child(5) { --stage-color:#E10600; }
[data-hdm-presentation] .sales-funnel-note { border-color:#c0c0c040; }
[data-hdm-presentation] .sales-funnel-stages li:not(:last-child)::after { border-color:var(--hdm-silver); }
[data-hdm-presentation] .site-footer { background:#242424; border-color:#c0c0c030; --footer-muted:var(--hdm-silver); }
[data-hdm-presentation] .legal-card { background:#303030; border-color:#c0c0c040; }
[data-hdm-presentation] .legal-draft { color:var(--hdm-silver); background:#363636; border-color:#c0c0c050; }
[data-hdm-presentation] :is(.thank-you-card,.thank-you-panel) { background:#303030; border-color:#c0c0c040; }
[data-hdm-presentation] .thank-you-main :is(h1,p),[data-hdm-presentation] .thank-you-card :is(h1,p) { color:var(--dark); }
[data-hdm-presentation] .thank-you-icon { stroke:var(--hdm-silver); }
[data-hdm-presentation] :is(.crm-skip,.legal-skip) { color:#fff; background:#363636; }

/* Quote styling shares the charcoal canvas without changing form behavior. */
[data-hdm-presentation] .lead-panel {
  --dark:#f5f5f5; --soft:#c0c0c0; --maroon:#c0c0c0; --cream:#343434;
  width:min(32.5rem,100vw); right:calc(-1 * min(32.5rem,100vw) - 2rem);
  height:100dvh; padding:clamp(1.5rem,4vw,2.5rem);
  color:#f5f5f5; color-scheme:dark; background:#2a2a2a;
  border-left:1px solid #c0c0c04d; box-shadow:-1rem 0 4rem #0006;
}
[data-hdm-presentation] .lead-panel.open { right:0; }
[data-hdm-presentation] .lead-panel-overlay { background:#101010a8; backdrop-filter:blur(5px); }
[data-hdm-presentation] .lead-panel .close-panel { top:1.25rem; right:1.25rem; width:2.75rem; height:2.75rem; display:grid; place-items:center; color:#f5f5f5; background:#353535; border:1px solid #c0c0c04d; border-radius:50%; }
[data-hdm-presentation] .lead-panel .close-panel:hover { background:#444; }
[data-hdm-presentation] .lead-panel-header { padding:2.5rem 0 1.5rem; margin-bottom:1.5rem; border-bottom:1px solid #c0c0c033; }
[data-hdm-presentation] .lead-panel-header .eyebrow { display:flex; align-items:center; gap:.6rem; font-size:.75rem; letter-spacing:.1em; margin-bottom:1rem; }
[data-hdm-presentation] .lead-panel-header .eyebrow::before { content:''; width:.45rem; height:.45rem; background:var(--hdm-signal); border-radius:50%; flex-shrink:0; }
[data-hdm-presentation] .lead-panel-header h2 { font-size:clamp(1.8rem,5vw,2.3rem); line-height:1.12; letter-spacing:-.025em; margin:0; max-width:17ch; }
[data-hdm-presentation] .lead-panel .form-steps-indicator { gap:.75rem; margin-bottom:2rem; }
[data-hdm-presentation] .lead-panel .step-indicator-item { opacity:1; color:#c0c0c0; gap:.65rem; }
[data-hdm-presentation] .lead-panel .step-indicator-item>span { width:2rem; height:2rem; color:#c0c0c0; background:#353535; border:1px solid #c0c0c066; box-shadow:none; }
[data-hdm-presentation] .lead-panel .step-indicator-item.active>span { color:#fff; background:var(--hdm-signal); border-color:var(--hdm-signal); }
[data-hdm-presentation] .lead-panel .step-indicator-item label { color:inherit; font-size:.75rem; letter-spacing:.04em; }
[data-hdm-presentation] .lead-panel .step-indicator-item.active label { color:#fff; }
[data-hdm-presentation] .lead-panel .step-line { background:#c0c0c04d; }
[data-hdm-presentation] .lead-panel .form-step.active { gap:1.25rem; }
[data-hdm-presentation] .lead-panel .input-group { min-width:0; gap:.6rem; }
[data-hdm-presentation] .lead-panel .input-group label { color:#e6e6e6; font-size:.875rem; line-height:1.5; }
[data-hdm-presentation] .lead-panel :is(input,select) { color:#f5f5f5; background:#353535; border-color:#c0c0c080; border-radius:.75rem; min-height:3rem; padding:.85rem 1rem; font-size:1rem; }
[data-hdm-presentation] .lead-panel input::placeholder { color:#b6b6b6; opacity:1; }
[data-hdm-presentation] .lead-panel :is(input,select):focus { border-color:#c0c0c0; box-shadow:0 0 0 3px #c0c0c026; }
[data-hdm-presentation] .lead-panel :is(input,select,button,a):focus-visible { outline-color:#c0c0c0; }
[data-hdm-presentation] .lead-panel .btn { min-height:3rem; padding:.9rem 1.1rem; font-size:.9375rem; }
[data-hdm-presentation] .lead-panel .form-step-actions { display:flex; flex-wrap:wrap; gap:.75rem; }
[data-hdm-presentation] .lead-panel .submit-btn { flex:1 1 12rem; }
[data-hdm-presentation] .lead-panel :is(.marketing-choice,.form-note,#quoteFormStatus) { color:#c0c0c0; font-size:.8125rem; line-height:1.65; text-align:left; }
[data-hdm-presentation] .lead-panel .marketing-choice { align-items:start; gap:.75rem; }
[data-hdm-presentation] .lead-panel .marketing-choice input { min-height:0; margin-top:.3rem; padding:0; accent-color:var(--hdm-signal); }
[data-hdm-presentation] .lead-panel .form-note a { color:#f5f5f5; text-decoration:underline; text-underline-offset:3px; }
[data-hdm-presentation] .lead-panel .quote-consent { border-top:1px solid #c0c0c033; padding-top:1.25rem; }
[data-hdm-presentation] .site-footer .footer-logo-img { width:12rem; height:auto; aspect-ratio:798/302; filter:none; }
[data-hdm-presentation] .privacy-panel { --dark:#2A2A2A; --soft:#4f4f4f; --maroon:#9e0500; --cream:#fff; color:#2A2A2A; color-scheme:light; background:#f5f5f5; }
[data-hdm-presentation] .privacy-actions button { color:#2A2A2A; background:#fff; }

/* Each section has a distinct entrance, using compositor-friendly properties. */
.motion-ready [data-motion-state=visible][data-motion-effect=hero] { animation-name:motion-hero; animation-duration:calc(var(--motion-duration) + .3s); }
.motion-ready [data-motion-state=visible][data-motion-effect=fan] { animation-name:motion-fan; }
.motion-ready [data-motion-state=visible][data-motion-effect=zoom] { animation-name:motion-zoom; }
.motion-ready [data-motion-state=visible][data-motion-effect=slide] { animation-name:motion-slide; }
.motion-ready [data-motion-state=visible][data-motion-effect=portrait] { animation-name:motion-portrait; }
.motion-ready [data-motion-state=visible][data-motion-effect=step] { animation-name:motion-step; }
.motion-ready [data-motion-state=visible][data-motion-effect=expand] { animation-name:motion-expand; transform-origin:50% 0; }
.motion-ready [data-motion-state=visible][data-motion-effect=rise] { animation-name:motion-rise; }
.motion-ready [data-motion-state=visible][data-motion-effect=showcase] { animation-name:motion-showcase; }
.motion-ready [data-motion-state=visible] .sales-funnel-stages li { animation:motion-funnel .9s ease-out both; }
.motion-ready [data-motion-state=visible] .sales-funnel-stages li:nth-child(2) { animation-delay:.18s; }
.motion-ready [data-motion-state=visible] .sales-funnel-stages li:nth-child(3) { animation-delay:.36s; }
.motion-ready [data-motion-state=visible] .sales-funnel-stages li:nth-child(4) { animation-delay:.54s; }
.motion-ready [data-motion-state=visible] .sales-funnel-stages li:nth-child(5) { animation-delay:.72s; }
@keyframes motion-hero { from { opacity:0; translate:0 var(--motion-travel); scale:.975; } to { opacity:1; translate:0 0; scale:1; } }
@keyframes motion-fan { from { opacity:0; translate:0 var(--motion-travel); rotate:-2deg; } to { opacity:1; translate:0 0; rotate:0deg; } }
@keyframes motion-zoom { from { opacity:0; scale:.88; } to { opacity:1; scale:1; } }
@keyframes motion-slide { from { opacity:0; translate:calc(-1 * var(--motion-travel)) 0; } to { opacity:1; translate:0 0; } }
@keyframes motion-portrait { from { opacity:0; clip-path:inset(0 0 35% 0 round 18px); scale:1.025; } to { opacity:1; clip-path:inset(0 round 18px); scale:1; } }
@keyframes motion-step { from { opacity:0; translate:var(--motion-travel) 0; } to { opacity:1; translate:0 0; } }
@keyframes motion-expand { from { opacity:0; scale:1 .94; } to { opacity:1; scale:1; } }
@keyframes motion-rise { from { opacity:0; translate:0 var(--motion-travel); scale:.98; } to { opacity:1; translate:0 0; scale:1; } }
@keyframes motion-showcase { from { opacity:0; translate:var(--motion-travel) 0; scale:.96; } to { opacity:1; translate:0 0; scale:1; } }
@keyframes motion-funnel { from { opacity:0; scale:.94 1; } to { opacity:1; scale:1; } }
.motion-ready [data-motion-state]:focus-within { animation:none; opacity:1; translate:none; scale:1; rotate:0deg; clip-path:none; }
@media(max-width:1279px) { [data-hdm-presentation] .nav-links,[data-hdm-presentation] .service-menu { background:#303030; border-color:#c0c0c040; } }
@media(max-width:768px) { body[data-hdm-presentation] { --motion-travel:.75rem; --motion-duration:1s; } .motion-ready [data-motion-state=visible][data-motion-effect] { animation-duration:var(--motion-duration); animation-delay:0ms; } }
@media(prefers-reduced-motion:reduce) { .motion-ready [data-motion-state] { scale:1!important; rotate:0deg!important; clip-path:none!important; } }
@media print { body[data-hdm-presentation] { --dark:#2a2a2a; --soft:#4f4f4f; --maroon:#2a2a2a; background:#fff; color:#2a2a2a; color-scheme:light; } [data-hdm-presentation] .legal-card { background:#fff; } }

/* Page links flow directly in the desktop header; mobile uses a compact grid. */
[data-hdm-presentation] .site-header .nav-links { flex:1; min-width:0; margin-left:clamp(.5rem,2vw,2rem); gap:.75rem; }
[data-hdm-presentation] .nav-pages { display:contents; }
[data-hdm-presentation] .site-header .nav-pages>a { position:relative; display:inline-flex; align-items:center; justify-content:center; gap:.4rem; min-height:2.75rem; padding:.6rem .85rem; border:1px solid transparent; border-radius:999px; color:#c0c0c0; background:transparent; font-size:.8125rem; font-weight:500; letter-spacing:.01em; text-decoration:none; white-space:nowrap; transition:background-color .2s,border-color .2s,color .2s; }
[data-hdm-presentation] .site-header .nav-pages>a svg { flex:none; width:1rem; height:1rem; }
[data-hdm-presentation] .nav-service-icon { display:inline-grid; place-items:center; flex:none; width:1rem; height:1rem; }
[data-hdm-presentation] .nav-label-mobile { display:none; }
[data-hdm-presentation] .site-header .nav-pages>a:hover { color:#fff; background:#ffffff0d; }
[data-hdm-presentation] .site-header .nav-pages>a[aria-current=page] { color:#fff; background:#e1060026; border-color:#e1060066; }
[data-hdm-presentation] .nav-utilities { display:flex; align-items:center; gap:.65rem; margin-left:auto; padding-left:.75rem; }
[data-hdm-presentation] .nav-utilities .language-switcher { margin:0; }
[data-hdm-presentation] .site-header .nav-utilities :is(.trigger-booking-btn,.nav-cta) { display:inline-flex; align-items:center; justify-content:center; min-height:2.75rem; padding:.7rem 1.1rem; margin:0; border:1px solid #e10600; background:var(--hdm-button-gradient); color:#fff; border-radius:999px; font-size:.8125rem; font-weight:600; white-space:nowrap; }
[data-hdm-presentation] .site-header .nav-utilities :is(.trigger-booking-btn,.nav-cta):hover { background:var(--hdm-button-gradient-hover); }
@media(max-width:1279px) {
  [data-hdm-presentation] .site-header .nav-links { margin-left:0; gap:.75rem; padding:1rem; }
  [data-hdm-presentation] .nav-pages { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; gap:.5rem; padding:0; border:0; border-radius:0; background:transparent; }
  [data-hdm-presentation] .site-header .nav-pages>a { justify-content:flex-start; width:100%; padding:.75rem; border-radius:.75rem; font-size:.875rem; white-space:normal; line-height:1.3; }
  [data-hdm-presentation] .site-header .nav-pages>a.nav-service { min-height:4.5rem; gap:.65rem; color:#f5f5f5; background:#ffffff08; border-color:#c0c0c03b; }
  [data-hdm-presentation] .nav-label-short { display:none; }
  [data-hdm-presentation] .nav-label-mobile { display:block; min-width:0; }
  [data-hdm-presentation] .nav-service-icon { display:grid; place-items:center; flex:0 0 2rem; width:2rem; height:2rem; border-radius:.5rem; color:#ffb2aa; background:#e106001a; }
  [data-hdm-presentation] .site-header .nav-service-icon svg { width:1.125rem; height:1.125rem; }
  [data-hdm-presentation] .site-header .nav-pages>a.nav-packages { grid-column:1/-1; justify-content:center; min-height:3rem; color:#f5f5f5; background:#ffffff08; border-color:#c0c0c03b; }
  [data-hdm-presentation] .site-header .nav-pages>a:is(.nav-service,.nav-packages)[aria-current=page] { background:#e1060026; border-color:#e1060066; }
  [data-hdm-presentation] .nav-utilities { width:100%; margin:0; padding:.75rem 0 0; border-top:1px solid #c0c0c033; }
}

/* CRM account access is distinct from the quote action. */
[data-hdm-presentation] .site-header .nav-signin { display:inline-flex; align-items:center; justify-content:center; gap:.5rem; min-height:2.75rem; padding:.65rem .85rem; border:1px solid #c0c0c08c; border-radius:999px; background:linear-gradient(125deg,#4b4b4b,#303030); box-shadow:inset 0 1px #ffffff18,0 .25rem .75rem #0002; color:#fff; font-size:.8125rem; font-weight:600; text-decoration:none; white-space:nowrap; }
[data-hdm-presentation] .site-header .nav-signin:hover { border-color:#f5f5f5; background:linear-gradient(125deg,#595959,#383838); color:#fff; }
[data-hdm-presentation] .site-header .nav-signin svg { flex:none; }
@media(max-width:1279px) {
  [data-hdm-presentation] .site-header .nav-links { top:calc(100% + .65rem); border:1px solid #c0c0c040; border-radius:1.25rem; max-height:calc(100dvh - 8rem); }
  [data-hdm-presentation] .nav-utilities { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:.5rem; padding-left:0; }
  [data-hdm-presentation] .nav-utilities .nav-signin { flex:1 1 auto; }
  [data-hdm-presentation] .nav-utilities :is(.trigger-booking-btn,.nav-cta) { grid-column:1/-1; width:100%; }
}

@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
  [data-hdm-presentation] .site-header.is-scrolled { background:#2a2a2af5; }
}
@media(max-width:400px) {
  [data-hdm-presentation] .site-header .nav-pages>a.nav-service { flex-direction:column; align-items:center; justify-content:center; gap:.4rem; min-height:5.5rem; text-align:center; }
  [data-hdm-presentation] .nav-service-icon { flex-basis:1.5rem; width:1.5rem; height:1.5rem; }
}

/* Page navigation and large, self-contained service demonstrations. */
.platform-icon { display:inline-block; flex:0 0 auto; width:1.25rem; height:1.25rem; object-fit:contain; vertical-align:middle; }
.platform-icon-hdm { filter:brightness(0) invert(.753); }
.platform-reference { display:inline-flex; flex-wrap:wrap; align-items:center; gap:.5rem; }
.platform-logo-row { display:flex; flex-wrap:wrap; align-items:center; gap:.75rem; margin:1.25rem 0; }
.platform-logo-row>span { display:grid; place-items:center; width:2.25rem; height:2.25rem; border:1px solid #c0c0c033; border-radius:.65rem; background:#c0c0c008; }
.brand-heading { display:flex; align-items:flex-start; gap:.8rem; }
.brand-heading>span { min-width:0; }
.brand-heading>.platform-icon { width:1.8rem; height:1.8rem; margin-top:.25em; }
.platform-pill { display:inline-flex; align-items:center; gap:.5rem; }
.platform-pill .platform-icon { width:1rem; height:1rem; }
.demo-channel-notes .platform-icon { filter:brightness(.25); }
.demo-channel-notes .demo-small { display:flex; align-items:center; flex-wrap:wrap; gap:.4rem; }
.demo-search-query>.platform-icon { flex:none; width:1.5rem; height:1.5rem; }
.offer-inclusions li .platform-logo-row { margin:.75rem 0 0; }
.offer-inclusions li .platform-logo-row { gap:.4rem; }
.offer-inclusions .platform-logo-row>span { width:1.75rem; height:1.75rem; }
.offer-inclusions .platform-icon { width:1rem; height:1rem; }
[data-hdm-presentation] .nav-services summary[data-section-active=true] { color:#fff; background:#c0c0c010; }
[data-hdm-presentation] .service-menu a[aria-current=page] { color:#fff; background:#e1060015; }
.page-intro { max-width:64rem; margin-inline:auto; text-align:center; }
.crm-presentation .page-intro h1 { font-size:clamp(2.4rem,5vw,4.3rem); max-width:24ch; margin-inline:auto; text-wrap:balance; }
.page-intro .crm-description { margin-inline:auto; max-width:58ch; }
.page-intro .crm-actions { justify-content:center; }
.results-context { max-width:65ch; margin:1.75rem auto 0; color:#c0c0c0; text-align:center; font-size:.875rem; }
/* Service stories share the existing CRM copy-and-visual layout. */

.service-example-showcase .crm-story-copy { max-width:65rem; }
.crm-presentation .crm-story-copy>h2 { font-size:clamp(1.5rem,2vw,2rem); line-height:1.2; margin:0 0 1rem; }
.service-example-showcase .crm-story-copy>h2 { max-width:24ch; font-size:clamp(1.5rem,2.2vw,2rem); line-height:1.15; text-wrap:balance; }
.service-example-showcase .crm-story-copy>p:not(.crm-eyebrow) { max-width:75ch; }
.example-use-cases { display:grid; grid-template-columns:minmax(0,1fr); gap:1rem 2rem; margin-top:1.5rem; padding-top:1.5rem; border-top:1px solid #c0c0c030; }
.example-use-cases h3 { color:#f5f5f5; font:700 .875rem/1.5 'Inter',sans-serif; margin:0 0 .5rem; }
.example-use-cases p { color:#c0c0c0; font-size:.9rem; }
.service-example-showcase .service-example-image img { max-height:46rem; object-fit:contain; background:#f2f2f2; }
.service-example-showcase figcaption { max-width:80ch; margin-top:1rem; font-size:.8125rem; }
.service-example-showcase .crm-story-copy>.btn { display:inline-flex; margin-top:1.5rem; min-height:3rem; }
.service-examples figure { container-type:inline-size; container-name:demo; }
.service-presentation .service-hero-simple { grid-template-columns:minmax(0,1fr); }
.service-hero-simple>div { max-width:60rem; margin-inline:auto; text-align:center; }
.service-hero-simple .crm-description { margin-inline:auto; }
.service-hero-simple .crm-actions { justify-content:center; }
.service-hero-simple .platform-logo-row { justify-content:center; }
/* A luminance mask makes the supplied black background fully transparent. */
.platform-logo-row .platform-icon-openai { width:1.625rem; height:1.625rem; mask-image:url('/assets/platforms/openai-symbol-20261101.webp'); mask-mode:luminance; mask-size:contain; mask-position:center; mask-repeat:no-repeat; }
.service-hero-simple .service-scroll-hint { margin:2.5rem auto 0; }
.service-scroll-link { display:inline-flex; align-items:center; justify-content:center; width:3.25rem; height:3.25rem; min-width:3.25rem; min-height:3.25rem; border:1px solid #c0c0c0; border-radius:50%; background:#373737; color:#f5f5f5; text-decoration:none; box-shadow:0 0 0 .3rem #c0c0c00a,0 .4rem 1.4rem #0003,0 0 1.3rem #e106001a; transition:background-color .18s ease,border-color .18s ease; }
.service-scroll-link:hover { color:#fff; background:#464646; border-color:#f5f5f5; }
.service-scroll-link:focus-visible { outline:2px solid #f5f5f5; outline-offset:4px; }
.service-scroll-link svg { display:block; stroke-width:2; pointer-events:none; }
@media(prefers-reduced-motion:reduce) { .service-scroll-link { transition:none; } }
@media(max-width:768px), (hover:none) and (pointer:coarse) { .service-hero-simple .service-scroll-hint { display:none; } }

/* Fictional UI examples are deliberately separate from real forms and ads. */
:is(.demo-store,.demo-channel-stage,.demo-search,.demo-organic) { --dark:#292929; --soft:#555; color:#292929; border:1px solid #c0c0c050; border-radius:1rem; overflow:hidden; font-family:'Inter',sans-serif; box-shadow:0 1rem 3rem #0003; }
.demo-browser-bar { display:flex; align-items:center; gap:.35rem; padding:.75rem 1rem; background:#e4e4e4; color:#555; font-size:.65rem; }
.demo-browser-bar i { width:.45rem; height:.45rem; background:#aaa; border-radius:50%; }
.demo-browser-bar>span { margin-left:.5rem; letter-spacing:.08em; }
.demo-action { display:inline-flex; align-items:center; justify-content:center; padding:.65rem 1rem; border-radius:.35rem; background:#292929; color:#fff; font-size:.75rem; font-weight:600; }
.demo-store { background:#f5f3ed; }
.demo-store-nav { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1.5rem 2rem; border-bottom:1px solid #d7d2c8; }
.demo-store-nav>strong { color:#333; font-size:.875rem; letter-spacing:.1em; }
.demo-store-nav>span { color:#555; font-size:.7rem; }
.demo-store-intro { display:grid; grid-template-columns:1fr .75fr; gap:2rem; align-items:center; padding:clamp(1.5rem,4vw,3rem); }
.demo-store-intro p { color:#555; font-size:.65rem; letter-spacing:.15em; }
.demo-store-featured svg { display:block; width:100%; max-height:22rem; border-radius:50% 50% .5rem .5rem; }
.demo-store-intro h4 { color:#292929; font-family:Georgia,serif; font-size:clamp(2rem,4.5vw,4.2rem); font-weight:400; line-height:1.05; letter-spacing:-.025em; margin:1rem 0 1.5rem; }
.demo-product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; padding:0 clamp(1rem,3vw,2rem) 2rem; }
.demo-product-grid article { min-width:0; }
.demo-product-grid svg { display:block; width:100%; height:auto; border-radius:.4rem; }
.demo-product-grid article>div { display:flex; justify-content:space-between; align-items:start; gap:.5rem; padding-top:.75rem; }
.demo-product-grid h5 { color:#333; font-size:.75rem; font-weight:500; line-height:1.5; }
.demo-product-grid article>div>span { color:#555; font-size:.7rem; }
.demo-store-footer { padding:1rem; border-top:1px solid #d7d2c8; text-align:center; color:#555; font-size:.75rem; }
.demo-channel-stage { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.8fr); gap:clamp(1.5rem,5vw,4rem); align-items:center; padding:clamp(1rem,4vw,3rem); background:#e7e9e5; }
.demo-social { min-width:0; max-width:32rem; background:#fff; border:1px solid #d1d5d1; border-radius:.65rem; overflow:hidden; }
.demo-social-header { display:flex; align-items:center; gap:.65rem; padding:1rem; }
.demo-avatar { display:grid; place-items:center; width:2.2rem; height:2.2rem; background:#4d625e; color:#fff; border-radius:50%; font-size:.875rem; }
.demo-social-header>div { flex:1; }
.demo-social-header strong { display:block; color:#292929; font-size:.8125rem; }
.demo-social-header div>span { color:#666; font-size:.65rem; }
.demo-social>p { padding:0 1rem 1rem; color:#444; font-size:.8125rem; }
.demo-social-art { position:relative; overflow:hidden; background:#dce3df; }
.demo-room-art { display:block; width:100%; height:auto; }
.demo-social-art>strong { position:absolute; inset:1.5rem auto auto 1.5rem; color:#25372f; font-family:Georgia,serif; font-size:clamp(1.3rem,2.5vw,2rem); line-height:1.05; font-weight:500; }
.demo-social-action { display:flex; align-items:center; gap:.75rem; justify-content:space-between; padding:1rem; }
.demo-social-action small { display:block; font-size:.6rem; color:#666; }
.demo-social-action strong { display:block; font-size:.75rem; color:#333; margin-top:.3rem; }
.demo-social-action .demo-action { background:#e4e6e4; color:#333; font-size:.65rem; padding:.5rem .6rem; }
.demo-channel-notes>p:first-child,.demo-organic aside>p:first-child { font-size:.65rem; color:#555; letter-spacing:.15em; }
.demo-channel-notes h4,.demo-organic aside h4 { color:#292929; font-size:clamp(1.6rem,3vw,2.75rem); line-height:1.1; margin:1rem 0 1.5rem; }
.demo-channel-notes ol { list-style:none; display:grid; gap:1rem; margin:0; padding:0; }
.demo-channel-notes li { align-items:center; color:#444; font-size:.875rem; }
.demo-channel-notes li>span { color:#333; border:1px solid #9ca59e; border-radius:50%; padding:.45rem; font-size:.65rem; }
.demo-small { color:#555; font-size:.75rem; margin-top:1.5rem; line-height:1.6; }
.demo-search { padding:0 0 2rem; background:#fff; }
.demo-search-query { display:flex; align-items:center; gap:1rem; margin:2rem 2rem 1rem; padding:1rem 1.5rem; border:1px solid #ccc; border-radius:999px; color:#333; font-size:clamp(.8rem,1.5vw,1rem); }
.demo-search-query>span { font-size:1.5rem; }
.demo-search-tabs { padding:0 3rem 1.25rem; border-bottom:1px solid #ddd; color:#666; font-size:.75rem; }
.demo-search-result { max-width:50rem; padding:clamp(1.25rem,4vw,3rem); }
.demo-search-result>p:first-child { color:#333; font-size:.7rem; margin-bottom:1rem; }
.demo-search-result>strong { color:#292929; font-size:.875rem; display:block; }
.demo-search-result small { display:block; color:#555; font-size:.7rem; margin:.25rem 0 .75rem; }
.demo-search-result h4 { color:#274a89; font-size:clamp(1.1rem,2vw,1.6rem); line-height:1.25; margin-bottom:.75rem; }
.demo-search-result>p:not(:first-child) { color:#555; font-size:.875rem; }
.demo-search-sitelinks { display:flex; flex-wrap:wrap; gap:1rem; color:#274a89; font-size:.875rem; margin-top:1.25rem; }
.demo-search-flow { display:flex; flex-wrap:wrap; gap:.75rem; padding:0 clamp(1.25rem,4vw,3rem); }
.demo-search-flow span { padding:.5rem .75rem; background:#f1f1f1; border:1px solid #ddd; border-radius:.4rem; color:#555; font-size:.75rem; }
.demo-organic { display:grid; grid-template-columns:1.1fr 1fr; gap:clamp(1.5rem,4vw,3rem); align-items:center; padding:clamp(1rem,4vw,3rem); background:#e5e6e4; }
.demo-content { padding:clamp(1.25rem,3vw,2.25rem); background:#fff; border:1px solid #ccc; border-radius:.5rem; box-shadow:0 .75rem 2rem #0001; }
.demo-content>p:first-child { color:#555; font-size:.6rem; letter-spacing:.12em; }
.demo-content h4 { color:#292929; font-size:clamp(1.25rem,2.5vw,2rem); line-height:1.15; margin:1rem 0; }
.demo-content p { color:#555; font-size:.8125rem; }
.demo-content h5 { color:#333; font-size:.875rem; margin:1.25rem 0 .5rem; }
.demo-content-lines { display:grid; gap:.6rem; margin:1.5rem 0; }
.demo-content-lines span { height:.45rem; background:#e2e4e1; border-radius:1rem; }
.demo-content-lines span:last-child { width:65%; }
.demo-organic aside ul { display:grid; gap:.75rem; padding:0; list-style:none; color:#444; font-size:.875rem; }
.demo-organic aside li { display:block; }
@media(max-width:700px) {
  .example-use-cases { grid-template-columns:1fr; }
  .demo-channel-stage,.demo-organic { grid-template-columns:1fr; }
  .demo-store-nav { padding:1rem; flex-direction:column; align-items:start; gap:.5rem; }
  .demo-product-grid { gap:.5rem; }
  .demo-product-grid article>div { flex-direction:column; }
  .demo-product-grid h5 { font-size:.65rem; }
  .demo-store-intro { grid-template-columns:1fr; gap:1.5rem; }
  .demo-store-featured svg { max-height:14rem; }
  .service-example-showcase .crm-story-copy>.btn { justify-content:center; }
  .demo-search-query { margin:1rem; padding:.75rem; }
  .demo-search-tabs { padding:0 1rem 1rem; }
  .demo-social-art>strong { inset:1rem auto auto 1rem; }
}
@media(min-width:901px){
  /* Mirror the wider preview column when an alternating image moves left. */
  .crm-solutions>.crm-story:nth-of-type(even){grid-template-columns:1.2fr .8fr;}
}

/* Shared current navigation across all page types, including thank-you pages. */
.footer-current .footer-container { grid-template-columns:1.2fr 1.1fr .9fr 1.2fr; grid-template-areas:"brand services explore contact"; gap:2rem; }
.footer-current .footer-brand { grid-area:brand; }
.footer-current .footer-services { grid-area:services; }
.footer-current .footer-explore { grid-area:explore; }
.footer-current .footer-contact { grid-area:contact; }
.footer-current .footer-follow { margin-top:1.25rem; }
.footer-current .footer-brand p { max-width:29ch; }
.footer-current .footer-links a { line-height:1.55; padding:.35rem 0; text-decoration:none; }
.footer-current .footer-links a:hover { text-decoration:underline; }
.footer-current .footer-services a { display:flex; align-items:flex-start; gap:.5rem; }
.footer-current .footer-service-icon { display:inline-flex; flex:none; width:1.125rem; height:1.125rem; margin-top:.15em; }
.footer-current .footer-service-icon svg { width:100%; height:100%; }
.footer-current .footer-socials { margin:0; }
.footer-current .footer-crm-signin { display:flex; align-items:center; justify-content:center; gap:.6rem; min-height:2.75rem; margin-top:.5rem; color:#c0c0c0; font-size:.8125rem; text-align:center; }
.footer-current .footer-legal button { display:inline-flex; align-items:center; min-height:2.75rem; color:#c0c0c0; font-size:.8125rem; }
.footer-current .footer-bottom { gap:.5rem 1.5rem; }
@media(max-width:1120px) {
 .footer-current .footer-container { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-areas:"brand services" "explore contact"; gap:2rem 3rem; }
}
@media(max-width:600px) {
 .footer-current .footer-container { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-areas:"brand brand" "services explore" "contact contact"; gap:1.5rem; }
 .footer-current .footer-brand { text-align:center; }
 .footer-current .footer-brand>.brand { align-items:center; }
 .footer-current .footer-brand p { max-width:36ch; margin-inline:auto; }
 .footer-current .footer-brand .footer-socials { justify-content:center; }
 .footer-current .footer-follow { margin-top:1rem; }
 .footer-current .footer-links a { font-size:.8125rem; overflow-wrap:anywhere; }
 .footer-current .footer-legal { gap:.25rem 1rem; }
}

/* Both choices stay visible, with the current theme expressed accessibly. */
.footer-theme { display:flex; align-items:center; flex-wrap:wrap; gap:.6rem; color:var(--footer-muted,#c0c0c0); font-size:.8125rem; }
.footer-theme-switch { position:relative; isolation:isolate; display:inline-flex; gap:.2rem; padding:.2rem; border:1px solid #c0c0c04d; border-radius:999px; background:#303030; }
.footer-theme-switch::before { content:''; position:absolute; z-index:0; top:.2rem; left:.2rem; width:2.75rem; height:2.75rem; border-radius:50%; background:#fff; box-shadow:0 .15rem .5rem #0001; transform:translateX(0); transition:transform .4s cubic-bezier(.22,.61,.36,1); pointer-events:none; }
[data-hdm-theme=dark] .footer-theme-switch::before { transform:translateX(calc(2.75rem + .2rem)); }
.footer-theme-switch button { position:relative; z-index:1; display:inline-grid; place-items:center; width:2.75rem; height:2.75rem; min-height:2.75rem; min-width:2.75rem; padding:0; border:1px solid transparent; border-radius:999px; background:transparent; color:#e3e5e8; font:600 .8125rem/1.4 Inter,Arial,sans-serif; cursor:pointer; }
.footer-theme-switch button[aria-pressed=true] { color:#25272b; }
.footer-theme-switch button:focus-visible { outline:2px solid #e10600; outline-offset:2px; }
[data-hdm-theme=light] .footer-theme-switch { border-color:#c5cdd6; background:#e9edf1; }
[data-hdm-theme=light] .footer-theme-switch button { color:#414750; }
[data-hdm-theme=light] .footer-theme-switch button[aria-pressed=true] { color:#25272b; }

.footer-theme-switch svg { display:block; width:1.25rem; height:1.25rem; pointer-events:none; }
@media(prefers-reduced-motion:reduce) { .footer-theme-switch::before { transition:none; } }

/* Light theme. Native illustrative interfaces keep their own colors. */
html[data-hdm-theme=light] { background:#fff; }
html[data-hdm-theme=light] body[data-hdm-presentation] {
  --dark:#25272b; --soft:#5b6068; --maroon:#af160e;
  --cream:#f2f3f5; --peach:#c0c0c0; --card-bg:#fff;
  --line:#d9dde2; --crm-border:#d9dde2; --shadow:0 .7rem 2.5rem #26303b0a;
  background:#fff;
  color:var(--dark); color-scheme:light;
}
[data-hdm-theme=light] .site-header { background:#fffffff2; border-color:#d9dde2; box-shadow:0 .6rem 2rem #29313a0c,inset 0 1px #fff; }
[data-hdm-theme=light] .site-header.is-scrolled { background:rgba(255,255,255,.74); border-color:#c5cbd580; box-shadow:0 .65rem 2rem #29313a10,inset 0 1px #ffffffb3; }
[data-hdm-theme=light] .site-header .logo-img { filter:none; }
[data-hdm-theme=light] .site-header .nav-pages>a,
[data-hdm-theme=light] .site-header .nav-pages>a:hover,
[data-hdm-theme=light] .site-header .nav-pages>a[aria-current=page] { color:#34383e; }
[data-hdm-theme=light] .site-header .nav-pages>a:hover { background:#fff; border-color:#dfe3e8; }
[data-hdm-theme=light] .site-header .nav-pages>a[aria-current=page] { color:#a71b11; background:#fff0ec; border-color:#e4b2a8; }
[data-hdm-theme=light] .site-header .nav-signin { background:linear-gradient(125deg,#fff,#edf0f3); color:#33383f; border-color:#bfc5cd; box-shadow:0 .2rem .6rem #29313a08; }
[data-hdm-theme=light] .site-header .nav-signin:hover { background:#e9edf0; color:#202329; border-color:#8b929c; }
[data-hdm-theme=light] .language-switcher { background:#f1f3f5; border-color:#cfd4db; }
[data-hdm-theme=light] .nav-links .language-switcher a { color:#454b54; }
[data-hdm-theme=light] .nav-links .language-switcher a[aria-current=page] { color:#fff; }
[data-hdm-theme=light] .language-divider { color:#616873; }
[data-hdm-theme=light] .mobile-menu span { background:#353940; }
[data-hdm-theme=light] :is(a,button,summary,input,select):focus-visible { outline-color:#a71b11; }
[data-hdm-theme=light] .site-header>.brand:focus-visible { outline-color:#a71b11; }
[data-hdm-theme=light] .btn-secondary,
[data-hdm-theme=light] .hero .btn-secondary,
[data-hdm-theme=light] .service-final .btn-secondary { color:#33383f; background:linear-gradient(125deg,#fff,#eff1f4); border-color:#aeb6bf; }
[data-hdm-theme=light] .btn-secondary:hover,
[data-hdm-theme=light] .hero .btn-secondary:hover,
[data-hdm-theme=light] .service-final .btn-secondary:hover { color:#202329; background:#e8ecf0; border-color:#7b8590; }
[data-hdm-theme=light] :is(.text-gradient,.counter) { color:#25272b; }
[data-hdm-theme=light] .crm-text-link { color:#a91b11; }
[data-hdm-theme=light] .crm-text-link:hover { color:#7d140c; }

/* Open sections share the light page canvas; only content cards retain frames. */
[data-hdm-theme=light] .service-scene .hg-preview { --hg-bg:transparent; --hg-fg:#25272b; --hg-silver:#535c67; background:transparent; border:0; box-shadow:none; }
[data-hdm-theme=light] .service-scene .hg-object-label { color:#353d47; }
[data-hdm-theme=light] .service-scene .hg-route-track { stroke:#8c96a566; }
[data-hdm-theme=light] .service-scene .hg-surface { border-color:#bbc3ce; box-shadow:0 1rem 2.5rem #2c37441c; }
[data-hdm-theme=light] main>#services { background:transparent; border-radius:0; padding:2rem 0; margin-block:0; }
[data-hdm-theme=light] :is(.service-card,.result-card,.offer-card,.crm-path,.crm-story,.home-faq-panel,.about-section,.pricing-explainer,.faq-list,.legal-card,.legal-draft,.thank-you-card,.thank-you-panel) { color:#25272b; background:#fff; border-color:#c0c0c0; box-shadow:0 .7rem 2.5rem #26303b08; }
[data-hdm-theme=light] :is(.service-card,.offer-card,.crm-path):hover { border-color:#c82a1d80; box-shadow:0 1rem 2.5rem #26303b12; }
[data-hdm-theme=light] .crm-hero>.crm-path { --dark:#25272b; --soft:#5b6068; color:#25272b; background:#fff; border-color:#cfd5dd; box-shadow:none; }
[data-hdm-theme=light] .icon { color:#a71b11; background:#fff3ef; border-color:#e8c9c2; }
[data-hdm-theme=light] .platform-logo-row>span { background:#f7f8fa; border-color:#d9dde2; }
[data-hdm-theme=light] .platform-icon-hdm { filter:none; }
html[data-hdm-theme=light] .platform-pill { color:#454b54; background:#f6f7f9; border-color:#d9dde2; }
[data-hdm-theme=light] .home-offers-gateway .crm-path { background:#fff; border:1px solid #cfd5dd; border-radius:1rem; box-shadow:none; padding:clamp(1.25rem,3vw,2rem); }
[data-hdm-theme=light] .timeline-progress-line { background:#dce0e5; }
[data-hdm-theme=light] .home-process .step { background:#fff; border-color:#c0c0c0; box-shadow:0 .4rem 1.5rem #26303b08; }
[data-hdm-theme=light] .home-process .step.active { border-color:#c82a1d80; }
[data-hdm-theme=light] .home-faq-panel { background:transparent; border:0; border-radius:0; box-shadow:none; padding:0; }
[data-hdm-theme=light] .home-faq .faq-list { background:transparent; }
/* Adjacent open sections share the gap instead of stacking container padding. */
[data-hdm-theme=light] main>.home-faq { padding-bottom:clamp(1.5rem,2.5vw,2.5rem); }
[data-hdm-theme=light] main>.home-faq+.booking-section { padding-top:clamp(1.5rem,2.5vw,2.5rem); }
[data-hdm-theme=light] .home-faq+.booking-section .booking-container { padding-block:0; }
[data-hdm-theme=light] .service-faq .faq-list details[open] summary { color:#a71b11; }

/* The quote section remains open and light, with the platform UI kept intact. */
[data-hdm-theme=light] .booking-container { --dark:#25272b; --soft:#5b6068; color:#25272b; background:transparent; border:0; border-radius:0; box-shadow:none; backdrop-filter:none; -webkit-backdrop-filter:none; padding-inline:0; }
[data-hdm-theme=light] .booking-copy :is(h2,p) { color:inherit; }
[data-hdm-theme=light] .booking-copy>p { color:#5b6068; }
[data-hdm-theme=light] .booking-visual .system-preview { --dark:#292d33; --soft:#5b6068; color:#292d33; background:#fff; border:1px solid #cfd5dd; border-radius:1rem; box-shadow:none; padding:1.5rem; }
[data-hdm-theme=light] .system-preview-header { border-color:#d9dde2; }
[data-hdm-theme=light] .booking-container .platform-pill { color:#454b54; }
[data-hdm-theme=light] .crm-solutions>.crm-story,
[data-hdm-theme=light] .crm-solutions>.crm-story:nth-of-type(even) { background:transparent; border:0; border-radius:0; box-shadow:none; padding-inline:0; }
[data-hdm-theme=light] .example-use-cases h3 { color:#333940; }
[data-hdm-theme=light] .example-use-cases p { color:#5b6068; }
[data-hdm-theme=light] .service-final { color:#25272b; background:transparent; border:0; border-radius:0; box-shadow:none; }
[data-hdm-theme=light] .service-scroll-link { color:#a71b11; background:#fff; border-color:#b9c0c9; box-shadow:0 0 0 .3rem #cbd1da24,0 .4rem 1rem #29313a0b; }
[data-hdm-theme=light] .service-scroll-link:hover { background:#f0f2f5; color:#8c180e; border-color:#a71b11; }
[data-hdm-theme=light] .crm-path .crm-number { color:#a71b11; background:#fff5f1; border-color:#e7cbc2; }
[data-hdm-theme=light] .creator-card { --dark:#fff; --soft:#e4e7eb; }

/* All packages follow the light palette; Advanced is distinguished by its border. */
[data-hdm-theme=light] .package-page .offer-card { color:#25272b; background:#fff; border-color:#cfd5dd; }
[data-hdm-theme=light] .package-page .offer-card :is(h3,.offer-price>strong) { color:#25272b; }
[data-hdm-theme=light] .package-page :is(.offer-subtitle,.offer-term,.offer-price>span,.offer-pricing-note) { color:#5b6068; }
[data-hdm-theme=light] .package-page .offer-pricing,
[data-hdm-theme=light] .package-page .package-fit { border-color:#dce1e6; }
[data-hdm-theme=light] .package-page :is(.package-fit,.offer-inclusions) { color:#414750; }
[data-hdm-theme=light] .package-page .offer-inclusions li { color:#414750; }
[data-hdm-theme=light] .package-page .offer-price>span:last-child:not(:first-child) { color:#5b6068; }
[data-hdm-theme=light] .package-page .offer-inclusions .offer-perk-icon { color:#b82417; }
[data-hdm-theme=light] .package-page .package-symbol { color:#b82417; background:#fff4ef; border-color:#e8c9c2; }
[data-hdm-theme=light] .package-page .offer-card.featured { --dark:#25272b; --soft:#5b6068; color:#25272b; background:#fff; border-color:#b92419; box-shadow:0 0 0 1px #b9241933,0 .7rem 2.5rem #26303b08; }
[data-hdm-theme=light] .package-page .offer-term-switch { background:#e9edf1; border-color:#c5cdd6; }
[data-hdm-theme=light] .package-page .offer-term-switch label>span { color:#414750; }
[data-hdm-theme=light] .package-page .offer-term-switch input:checked+span { background:#fff; color:#25272b; box-shadow:0 .2rem .6rem #29313a0c; }
[data-hdm-theme=light] .package-notes-grid>article { color:#25272b; background:transparent; border:0; border-top:1px solid #d9dde2; border-radius:0; padding-inline:0; }
[data-hdm-theme=light] .package-notes-grid h3 { color:#333940; }
[data-hdm-theme=light] .package-notes-grid p { color:#5b6068; }

/* The quote drawer and footer share the lighter visual system. */
[data-hdm-theme=light] .lead-panel { --dark:#25272b; --soft:#5b6068; --maroon:#a71b11; --cream:#f1f3f5; color:#25272b; background:#fff; color-scheme:light; border-color:#d9dde2; box-shadow:-1rem 0 4rem #26303b26; }
[data-hdm-theme=light] .lead-panel .close-panel { color:#414750; background:#f1f3f5; border-color:#cfd5dd; }
[data-hdm-theme=light] .lead-panel .close-panel:hover { background:#e4e8ed; }
[data-hdm-theme=light] .lead-panel-header { border-color:#dce1e6; }
[data-hdm-theme=light] .lead-panel .step-indicator-item { color:#5b6068; }
[data-hdm-theme=light] .lead-panel .step-indicator-item>span { color:#414750; background:#f1f3f5; border-color:#cfd5dd; }
[data-hdm-theme=light] .lead-panel .step-indicator-item.active>span { color:#fff; background:#c52216; }
[data-hdm-theme=light] .lead-panel .step-indicator-item.active label { color:#a71b11; }
[data-hdm-theme=light] .lead-panel .step-line { background:#dce1e6; }
[data-hdm-theme=light] .lead-panel .input-group label { color:#414750; }
[data-hdm-theme=light] .lead-panel :is(input,select) { color:#25272b; background:#f6f7f9; border-color:#bfc7d1; }
[data-hdm-theme=light] .lead-panel input::placeholder { color:#68717e; }
[data-hdm-theme=light] .lead-panel :is(input,select):focus { border-color:#a71b11; box-shadow:0 0 0 3px #c5221614; }
[data-hdm-theme=light] .lead-panel :is(.marketing-choice,.form-note,#quoteFormStatus) { color:#5b6068; }
[data-hdm-theme=light] .lead-panel .form-note a { color:#a71b11; }
[data-hdm-theme=light] .lead-panel .quote-consent { border-color:#dce1e6; }
[data-hdm-theme=light] .site-footer { --footer-muted:#5b6068; --footer-line:#dce1e6; color:#25272b; background:#fff; border-color:#dce1e6; }
[data-hdm-theme=light] .site-footer :is(h3,a,.footer-legal button) { color:#414750; }
[data-hdm-theme=light] .site-footer :is(.footer-socials a,.email-note a) { color:#414750; background:#fff; border-color:#cfd5dd; }
[data-hdm-theme=light] .site-footer a.footer-quote-link { color:#fff; }
[data-hdm-theme=light] .site-footer a:hover { color:#a71b11; }
[data-hdm-theme=light] .site-footer a.footer-quote-link:hover { color:#fff; }
[data-hdm-theme=light] .site-footer .footer-socials img { filter:brightness(.35); }
[data-hdm-theme=light] .thank-you-icon { stroke:#a71b11; }
[data-hdm-theme=light] :is(.crm-skip,.legal-skip) { background:#fff; color:#a71b11; }
@media(max-width:1279px) {
  [data-hdm-theme=light] .site-header .nav-pages { background:transparent; border:0; }
  [data-hdm-theme=light] .site-header .nav-pages>a:is(.nav-service,.nav-packages) { color:#34383e; background:#f7f8fa; border-color:#dfe3e8; }
  [data-hdm-theme=light] .site-header .nav-pages>a:is(.nav-service,.nav-packages):hover { background:#fff; border-color:#c5cdd6; }
  [data-hdm-theme=light] .site-header .nav-pages>a:is(.nav-service,.nav-packages)[aria-current=page] { color:#a71b11; background:#fff0ec; border-color:#e4b2a8; }
  [data-hdm-theme=light] .site-header .nav-service-icon { color:#af160e; background:#fff0ec; }
  [data-hdm-theme=light] .site-header .nav-links,
  [data-hdm-theme=light] .service-menu { background:#fff; border-color:#d9dde2; }
}

[data-hdm-theme=light] .platform-logo-row .platform-icon,
[data-hdm-theme=light] .platform-pill .platform-icon:not(.platform-icon-hdm) { filter:brightness(.35); }
[data-hdm-theme=light] .legal-index section { color:#25272b; background:#f1f3f5; border-color:#d9dde2; }
[data-hdm-theme=light] .legal-main a:is(:hover,:focus-visible) { color:#a71b11; text-decoration-color:currentColor; }

[data-hdm-theme=light] .service-faq .faq-list { background:transparent; border:0; border-radius:0; box-shadow:none; }
[data-hdm-theme=light] .about-section { background:transparent; border:0; border-radius:0; box-shadow:none; padding-inline:0; }

@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
  [data-hdm-theme=light] .site-header.is-scrolled { background:#fffffff5; }
}

/* One first-screen rhythm across existing page types. Desktop remains unchanged. */
[data-mobile-hero-kind=legal] { display:contents; }
@media(max-width:600px) {
  body[data-hdm-presentation] { --mobile-hero-header:6.25rem; --mobile-hero-peek:4.5rem; }
  [data-hdm-presentation] main { scroll-margin-top:var(--mobile-hero-header); }
  [data-hdm-presentation] [data-mobile-hero] {
    box-sizing:border-box; display:flex; flex-direction:column; align-items:center; justify-content:center;
    width:100%; min-width:0; text-align:center;
    min-height:calc(100vh - var(--mobile-hero-header) - var(--mobile-hero-peek) - var(--mobile-hero-offset,0px));
    min-height:calc(100svh - var(--mobile-hero-header) - var(--mobile-hero-peek) - var(--mobile-hero-offset,0px));
    padding:clamp(1rem,3svh,2rem) 0 clamp(1.5rem,5svh,3rem);
  }
  [data-hdm-presentation] [data-mobile-hero] h1 { max-width:100%; color:inherit; font-size:clamp(2.9rem,13vw,3.75rem); line-height:1.04; letter-spacing:-.045em; margin:0 0 1.25rem; text-wrap:balance; overflow-wrap:anywhere; }
  [data-hdm-presentation] [data-mobile-hero] :is(.crm-description,.legal-meta),
  [data-hdm-presentation] [data-mobile-hero-kind=legal]>p { max-width:38ch; margin:0 0 1.5rem; font-size:1rem; line-height:1.6; }
  [data-hdm-presentation] [data-mobile-hero] .crm-actions { flex-shrink:0; justify-content:center; width:100%; max-width:24rem; margin:0 auto; gap:.75rem; }
  [data-hdm-presentation] [data-mobile-hero] .crm-actions .btn { min-height:3rem; padding:.75rem 1rem; font-size:1rem; line-height:1.4; }
  [data-hdm-presentation] [data-mobile-hero] .platform-logo-row { justify-content:center; margin:0 0 1.5rem; }
  [data-hdm-presentation] .hero { padding-top:0; gap:0; }
  [data-hdm-presentation] .service-presentation { padding-top:0; }
  [data-hdm-presentation] .service-presentation .crm-hero { display:block; min-height:0; padding-block:0; }
  [data-hdm-presentation] [data-mobile-hero-peek] { opacity:1; translate:none; scale:1; rotate:0deg; clip-path:none; animation:none; }
  /* Legal documents retain their back link and their complete text below the title. */
  [data-hdm-presentation] .legal-main { margin-block:0; padding-block:0; }
  [data-hdm-presentation] [data-mobile-hero-kind=legal] { --mobile-hero-offset:2.5rem; }
  [data-hdm-presentation] .legal-back+.legal-card [data-mobile-hero-kind=legal] { --mobile-hero-offset:6.375rem; }
  [data-hdm-presentation] .thank-you-main { min-height:0; }
  [data-hdm-presentation] .thank-you-card[data-mobile-hero] { padding-inline:1.25rem; }
}
@media(max-width:600px) and (max-height:700px) {
  body[data-hdm-presentation] { --mobile-hero-peek:3rem; }
  [data-hdm-presentation] [data-mobile-hero] { padding-block:1rem; }
  [data-hdm-presentation] [data-mobile-hero] h1 { font-size:clamp(2rem,10vw,2.5rem); }
  [data-hdm-presentation] [data-mobile-hero] :is(.crm-description,.legal-meta),
  [data-hdm-presentation] [data-mobile-hero-kind=legal]>p { font-size:.9375rem; line-height:1.5; margin-bottom:1rem; }
  [data-hdm-presentation] [data-mobile-hero] .crm-actions { gap:.6rem; }
  [data-hdm-presentation] [data-mobile-hero] .crm-actions .btn { min-height:2.75rem; padding:.65rem 1rem; font-size:.9375rem; }
  [data-hdm-presentation] .thank-you-icon { width:4rem; height:4rem; margin-bottom:1rem; }
}
@media print {
  [data-hdm-presentation] [data-mobile-hero] { min-height:0; padding-block:0; }
  [data-hdm-presentation] [data-mobile-hero-kind=legal] { display:contents; }
}
