/* Speqtus Landing Pages & Lead Generation Widget — stylesheet scoped to .htel-lpl-widget.sq. Source: landing-pages-lead-generation.html (design source of truth).
   Every rule of the source stylesheet is kept (same .sq-* class names, same values); selectors are prefixed with the widget wrapper,
   keyframes are namespaced (htelsq*), body/standalone rules were moved onto the wrapper, and the logo, promo bar and breadcrumb
   gained variable hooks so Elementor controls can drive them without !important. */

/* ===== widget wrapper (reset against theme / Elementor inheritance) ===== */
.htel-lpl-widget.sq{ font-style:normal; letter-spacing:normal; word-spacing:normal; text-transform:none; text-align:start; text-indent:0; text-shadow:none; white-space:normal; width:100%; max-width:none; margin:0; }
.htel-lpl-widget.sq.htel-fullbleed{ width:100vw; max-width:100vw; margin-left:calc(50% - 50vw); }
.htel-lpl-widget.sq [id]{ scroll-margin-top:96px; }
/* Theme / Elementor-kit colour guard (specificity deliberately LOWER than every source colour rule). */
.htel-lpl-widget.sq h1,.htel-lpl-widget.sq h2,.htel-lpl-widget.sq h3,.htel-lpl-widget.sq h4,.htel-lpl-widget.sq p,.htel-lpl-widget.sq li,.htel-lpl-widget.sq span,.htel-lpl-widget.sq button{ color:inherit; }
/* ===== source stylesheet ===== */
/* =====================================================================
   WEBSITE DESIGN & DEVELOPMENT PAGE — all rules are scoped under .htel-lpl-widget.sq so
   they cannot clash with a host site. Tokens mirror seo-services.html.
   ===================================================================== */

.htel-lpl-widget.sq{
  --ink:#0C0C0E; --ink-elevated:#1B1B1E; --crimson:#E21F36; --crimson-2:#FF4757; --maroon:#82112B;
  --paper:#FBF8F6; --paper-dim:#F1EBE8; --slate:#6A6367; --slate-light:#A79FA3;
  --line-on-paper:rgba(12,12,14,0.10); --line-on-ink:rgba(249,245,247,0.12);
  --glass-ink:rgba(255,255,255,0.045); --glass-ink-brd:rgba(255,255,255,0.09);
  --shadow-ink:0 30px 60px -25px rgba(20,1,7,0.55); --shadow-soft:0 20px 40px -28px rgba(42,2,14,0.35);
  --font-display:'Bricolage Grotesque','Segoe UI',system-ui,sans-serif;
  --font-body:'Plus Jakarta Sans','Segoe UI',system-ui,sans-serif;
  --font-mono:'JetBrains Mono','Courier New',monospace;
  --fs-h1:clamp(2.4rem,1.5rem + 3.7vw,4.5rem); --fs-h2:clamp(1.9rem,1.5rem + 1.7vw,2.9rem);
  --fs-h3:clamp(1.2rem,1.08rem + 0.5vw,1.4rem); --fs-lead:clamp(1.05rem,0.98rem + 0.3vw,1.2rem);
  --container:1600px; --radius-lg:22px; --radius-md:14px; --radius-sm:9px; --ease:cubic-bezier(.16,.84,.44,1);
  font-family:var(--font-body); background:var(--paper); color:var(--ink); font-size:var(--base-fs,16px); line-height:var(--base-lh,1.6); font-weight:var(--fw-body,400);
  -webkit-font-smoothing:antialiased; overflow-x:clip; position:relative;
}
.htel-lpl-widget.sq *,.htel-lpl-widget.sq *::before,.htel-lpl-widget.sq *::after{ box-sizing:border-box; }
.htel-lpl-widget.sq img{ max-width:100%; display:block; }
.htel-lpl-widget.sq a{ color:inherit; text-decoration:none; }
.htel-lpl-widget.sq ul,.htel-lpl-widget.sq ol{ list-style:none; margin:0; padding:0; }
.htel-lpl-widget.sq button{ font:inherit; color:inherit; background:none; border:none; cursor:pointer; }
.htel-lpl-widget.sq h1,.htel-lpl-widget.sq h2,.htel-lpl-widget.sq h3,.htel-lpl-widget.sq h4{ font-family:var(--font-display); margin:0; line-height:1.1; letter-spacing:var(--heading-ls,-0.01em); font-weight:var(--fw-display,700); }
.htel-lpl-widget.sq p{ margin:0; }
.htel-lpl-widget.sq svg{ display:block; }
.htel-lpl-widget.sq :focus-visible{ outline:2px solid var(--crimson); outline-offset:3px; border-radius:4px; }
.htel-lpl-widget.sq .on-ink :focus-visible,.htel-lpl-widget.sq .sq-nav :focus-visible,.htel-lpl-widget.sq .sq-footer :focus-visible,.htel-lpl-widget.sq .sq-mobile :focus-visible{ outline-color:var(--crimson-2); }
.htel-lpl-widget.sq .sq-container{ max-width:var(--container); margin-inline:auto; padding-inline:clamp(1.25rem,5vw,4.5rem); }
.htel-lpl-widget.sq .sq-section{ padding-block:clamp(4.5rem,8vw,7.5rem); position:relative; }
.htel-lpl-widget.sq .sq-ink{ background:var(--ink); color:var(--paper); }
.htel-lpl-widget.sq .sq-dim{ background:var(--paper-dim); }
.htel-lpl-widget.sq .sq-eyebrow{ display:inline-flex; align-items:center; gap:.55rem; font-family:var(--font-mono); font-size:.78rem; letter-spacing:.04em; color:#C5162B; margin-bottom:1.1rem; }
.htel-lpl-widget.sq .sq-ink .sq-eyebrow{ color:var(--crimson-2); }
.htel-lpl-widget.sq .sq-eyebrow::before{ content:''; width:16px; height:1px; background:currentColor; opacity:.6; }
.htel-lpl-widget.sq .sq-head h2{ font-size:var(--fs-h2); }
.htel-lpl-widget.sq .sq-head p{ margin-top:1rem; font-size:var(--fs-lead); color:var(--slate); max-width:56ch; }
.htel-lpl-widget.sq .sq-ink .sq-head p{ color:var(--slate-light); }
.htel-lpl-widget.sq .sq-skip{ position:absolute; left:1rem; top:-60px; background:var(--ink); color:var(--paper); padding:.75rem 1.25rem; border-radius:8px; z-index:999; transition:top .2s var(--ease); }
.htel-lpl-widget.sq .sq-skip:focus{ top:1rem; }

/* buttons */
.htel-lpl-widget.sq .sq-btn{ display:inline-flex; align-items:center; gap:.6rem; font-weight:600; font-size:.95rem; padding:.95rem 1.6rem; border-radius:100px; white-space:nowrap; transition:transform .3s var(--ease), box-shadow .3s var(--ease), border-color .25s ease, color .25s ease; }
.htel-lpl-widget.sq .sq-btn svg{ width:16px; height:16px; transition:transform .3s var(--ease); }
.htel-lpl-widget.sq .sq-btn:hover svg{ transform:translateX(3px); }
.htel-lpl-widget.sq .sq-btn--primary{ background:linear-gradient(135deg,var(--crimson),var(--maroon)); color:#fff; box-shadow:0 16px 32px -14px rgba(226,31,54,.55); }
.htel-lpl-widget.sq .sq-btn--primary:hover{ transform:translateY(-2px); box-shadow:0 22px 40px -14px rgba(226,31,54,.65); }
.htel-lpl-widget.sq .sq-btn--ghost{ border:1.5px solid var(--line-on-paper); color:var(--ink); }
.htel-lpl-widget.sq .sq-btn--ghost:hover{ border-color:var(--crimson); color:#C5162B; }
.htel-lpl-widget.sq .on-ink .sq-btn--ghost{ border-color:var(--line-on-ink); color:var(--paper); }
.htel-lpl-widget.sq .on-ink .sq-btn--ghost:hover{ border-color:var(--crimson-2); color:var(--crimson-2); }

/* editorial link */
.htel-lpl-widget.sq .sq-more{ display:inline-flex; align-items:center; gap:.6rem; font-weight:600; font-size:.9rem; color:var(--ink); position:relative; padding-bottom:.2rem; }
.htel-lpl-widget.sq .sq-more::after{ content:''; position:absolute; left:0; bottom:0; height:1.5px; width:100%; background:var(--line-on-paper); }
.htel-lpl-widget.sq .sq-more::before{ content:''; position:absolute; left:0; bottom:0; height:1.5px; width:0; background:var(--crimson); transition:width .35s var(--ease); z-index:1; }
.htel-lpl-widget.sq .sq-more svg{ width:15px; height:15px; transition:transform .3s var(--ease); }
.htel-lpl-widget.sq .sq-more:hover::before,.htel-lpl-widget.sq .sq-more:focus-visible::before{ width:100%; }
.htel-lpl-widget.sq .sq-more:hover svg{ transform:translateX(4px); }

/* ---------------- NAV (same behaviour as reference pages) ---------------- */
.htel-lpl-widget.sq .sq-nav{ position:fixed; top:0; left:0; right:0; z-index:200; padding-block:var(--sq-nav-pad,1.1rem); background:var(--sq-nav-bg,transparent); border-bottom:1px solid transparent; transition:padding-block .4s var(--ease), background .4s ease, box-shadow .4s ease, border-color .4s ease; }
.htel-lpl-widget.sq .sq-nav__inner{ display:flex; align-items:center; justify-content:space-between; gap:1.5rem; }
.htel-lpl-widget.sq .sq-nav.is-scrolled{ padding-block:var(--sq-nav-pad-s,.6rem); background:var(--sq-nav-bg-s,rgba(12,12,14,.88)); -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); box-shadow:0 12px 30px -18px rgba(0,0,0,.65); border-bottom-color:rgba(255,255,255,.08); }
.htel-lpl-widget.sq .sq-nav__logo{ display:flex; align-items:center; background:var(--sq-logo-bg,var(--paper)); padding:var(--sq-logo-pad,.4rem .8rem); border-radius:var(--sq-logo-radius,11px); }
.htel-lpl-widget.sq .sq-nav__logo img{ width:var(--sq-logo-w,60px); height:auto; max-width:none; flex-shrink:0; transition:width .3s var(--ease); }
.htel-lpl-widget.sq .sq-nav.is-scrolled .sq-nav__logo img{ width:calc(var(--sq-logo-w,60px) * .8333); }
.htel-lpl-widget.sq .sq-nav__links{ display:none; align-items:center; gap:2.1rem; font-size:var(--sq-nav-fs,.92rem); font-weight:600; color:var(--sq-nav-link,var(--paper)); }
.htel-lpl-widget.sq .sq-nav__links a{ position:relative; padding-block:.3rem; }
.htel-lpl-widget.sq .sq-nav__links a::after{ content:''; position:absolute; left:0; bottom:0; width:0; height:2px; background:var(--crimson-2); transition:width .3s var(--ease); }
.htel-lpl-widget.sq .sq-nav__links a:hover::after,.htel-lpl-widget.sq .sq-nav__links a[aria-current]::after{ width:100%; }
.htel-lpl-widget.sq .sq-nav__cta{ display:none; }
.htel-lpl-widget.sq .sq-nav__toggle{ display:flex; flex-direction:column; gap:5px; padding:.6rem; z-index:210; }
.htel-lpl-widget.sq .sq-nav__toggle span{ width:22px; height:2px; background:var(--paper); border-radius:2px; transition:all .3s var(--ease); }
.htel-lpl-widget.sq .sq-nav__toggle.is-open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.htel-lpl-widget.sq .sq-nav__toggle.is-open span:nth-child(2){ opacity:0; }
.htel-lpl-widget.sq .sq-nav__toggle.is-open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }
@media (min-width:980px){
  .htel-lpl-widget.sq .sq-nav__links{ display:flex; } .htel-lpl-widget.sq .sq-nav__cta{ display:inline-flex; } .htel-lpl-widget.sq .sq-nav__toggle{ display:none; }
}
.htel-lpl-widget.sq .sq-mobile{ position:fixed; inset:0; background:var(--sq-mobile-bg,var(--ink)); z-index:190; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2rem; transform:translateY(-100%); visibility:hidden; transition:transform .4s var(--ease), visibility 0s .4s; }
.htel-lpl-widget.sq .sq-mobile.is-open{ transform:none; visibility:visible; transition:transform .4s var(--ease); }
.htel-lpl-widget.sq .sq-mobile a:not(.sq-btn){ font-family:var(--font-display); font-size:var(--sq-mobile-fs,1.7rem); color:var(--sq-mobile-link,var(--paper)); font-weight:600; opacity:0; transform:translateY(14px); transition:opacity .4s ease, transform .5s var(--ease); }
.htel-lpl-widget.sq .sq-mobile.is-open a:not(.sq-btn){ opacity:1; transform:none; transition-delay:calc(var(--i,0) * 50ms + 120ms); }

/* ---- promo bar (dismissible) ---- */
.htel-lpl-widget.sq .sq-promo{ position:fixed; top:0; left:0; right:0; z-index:260; background:linear-gradient(90deg,var(--sq-promo-a,var(--maroon)),var(--sq-promo-b,var(--crimson))); color:var(--sq-promo-color,#fff); }
.htel-lpl-widget.sq .sq-promo.is-hidden{ display:none; }
.htel-lpl-widget.sq .sq-promo__inner{ display:flex; align-items:center; justify-content:center; gap:1.25rem; padding:var(--sq-promo-py,.6rem) var(--sq-promo-px,clamp(1.25rem,4vw,2.5rem)); flex-wrap:wrap; text-align:center; font-size:var(--sq-promo-fs,.82rem); }
.htel-lpl-widget.sq .sq-promo__cta{ font-weight:700; text-decoration:underline; text-underline-offset:3px; white-space:nowrap; }
.htel-lpl-widget.sq .sq-promo__close{ display:flex; align-items:center; justify-content:center; width:28px; height:28px; opacity:.85; flex-shrink:0; }
.htel-lpl-widget.sq .sq-promo__close:hover{ opacity:1; }
.htel-lpl-widget.sq .sq-promo__close svg{ width:14px; height:14px; }
.htel-lpl-widget.sq .sq-promo :focus-visible{ outline-color:#fff; }

/* ---------------- scroll reveal (content stays visible if JS fails) ---------------- */
.htel-lpl-widget.sq.sq-js .sq-rv{ opacity:0; transform:translateY(28px); transition:opacity .8s var(--ease), transform .9s var(--ease); transition-delay:calc(var(--d,0) * 90ms); will-change:opacity,transform; }
.htel-lpl-widget.sq.sq-js .sq-rv.is-in{ opacity:1; transform:none; will-change:auto; }

/* ---------------- HERO ---------------- */
.htel-lpl-widget.sq .sq-hero{ position:relative; padding-top:calc(clamp(8rem,14vw,10.5rem) + var(--sq-bar-h,0px)); padding-bottom:clamp(3.5rem,7vw,5.5rem); background:var(--ink); color:var(--paper); overflow:hidden; }
.htel-lpl-widget.sq .sq-hero__grid{ position:absolute; inset:-2px; opacity:.4; background-image:linear-gradient(var(--line-on-ink) 1px,transparent 1px),linear-gradient(90deg,var(--line-on-ink) 1px,transparent 1px); background-size:56px 56px; -webkit-mask-image:radial-gradient(ellipse 75% 60% at 75% 25%,#000 25%,transparent 78%); mask-image:radial-gradient(ellipse 75% 60% at 75% 25%,#000 25%,transparent 78%); animation:htelLplGrid 24s linear infinite; }
@keyframes htelLplGrid{ to{ background-position:56px 56px; } }
.htel-lpl-widget.sq .sq-hero__glow{ position:absolute; width:520px; height:520px; top:-170px; right:-150px; border-radius:50%; filter:blur(100px); background:radial-gradient(circle,rgba(226,31,54,.36),transparent 70%); pointer-events:none; animation:htelLplDrift 14s ease-in-out infinite alternate; }
.htel-lpl-widget.sq .sq-hero__glow--2{ top:auto; right:auto; left:-220px; bottom:-260px; width:460px; height:460px; background:radial-gradient(circle,rgba(130,17,43,.4),transparent 70%); animation-duration:18s; animation-direction:alternate-reverse; }
@keyframes htelLplDrift{ from{ transform:translate3d(0,0,0) scale(1); } to{ transform:translate3d(-50px,40px,0) scale(1.12); } }
.htel-lpl-widget.sq .sq-hero__inner{ position:relative; z-index:1; display:grid; gap:clamp(2.5rem,5vw,3.5rem); grid-template-columns:minmax(0,1fr); align-items:center; }
@media (min-width:980px){ .htel-lpl-widget.sq .sq-hero__inner{ grid-template-columns:minmax(0,1fr) minmax(0,1fr); } }
.htel-lpl-widget.sq .sq-up{ opacity:0; transform:translateY(24px); animation:htelLplUp .9s var(--ease) forwards; animation-delay:calc(var(--i,0) * 110ms + 100ms); }
@keyframes htelLplUp{ to{ opacity:1; transform:none; } }
.htel-lpl-widget.sq .sq-crumbs{ font-family:var(--font-mono); font-size:.74rem; color:var(--slate-light); margin-bottom:1.4rem; }
.htel-lpl-widget.sq .sq-crumbs ol{ display:flex; flex-wrap:wrap; gap:.4rem; }
.htel-lpl-widget.sq .sq-crumbs li+li::before{ content:var(--sq-crumb-sep,'/'); margin-right:.4rem; opacity:.5; }
.htel-lpl-widget.sq .sq-crumbs a:hover{ color:var(--crimson-2); }
.htel-lpl-widget.sq .sq-hero h1{ font-size:var(--fs-h1); max-width:17ch; }
.htel-lpl-widget.sq .sq-hero h1 em{ font-style:normal; display:block; background:linear-gradient(120deg,var(--crimson-2),var(--crimson) 65%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.htel-lpl-widget.sq .sq-hero .sq-lead{ margin-top:1.5rem; font-size:var(--fs-lead); color:var(--slate-light); max-width:54ch; }
.htel-lpl-widget.sq .sq-hero__actions{ display:flex; flex-wrap:wrap; gap:1rem; margin-top:2.2rem; }
.htel-lpl-widget.sq .sq-hero__notes{ display:flex; flex-wrap:wrap; gap:.6rem; margin-top:2rem; }
.htel-lpl-widget.sq .sq-chip{ display:inline-flex; align-items:center; gap:.5rem; font-family:var(--font-mono); font-size:.74rem; background:var(--glass-ink); border:1px solid var(--line-on-ink); color:var(--slate-light); padding:.45rem .85rem; border-radius:100px; }
.htel-lpl-widget.sq .sq-chip i{ width:6px; height:6px; border-radius:50%; background:var(--crimson-2); box-shadow:0 0 10px var(--crimson-2); animation:htelLplPing 2.4s ease-in-out infinite; }
@keyframes htelLplPing{ 50%{ opacity:.35; } }

/* hero mockup stage */
.htel-lpl-widget.sq .sq-stage{ position:relative; width:100%; max-width:600px; margin-inline:auto; padding:0 0 3.2rem; opacity:0; transform:translateY(34px) scale(.97); animation:htelLplStage 1.1s var(--ease) .35s forwards; }
@keyframes htelLplStage{ to{ opacity:1; transform:none; } }
.htel-lpl-widget.sq .sq-browser{ position:relative; z-index:2; background:var(--ink-elevated); border:1px solid var(--glass-ink-brd); border-radius:var(--radius-lg); box-shadow:var(--shadow-ink), 0 0 0 1px rgba(255,71,87,.06); overflow:hidden; transform:perspective(1400px) rotateY(-5deg) rotateX(2deg); transition:transform .8s var(--ease); }
.htel-lpl-widget.sq .sq-stage:hover .sq-browser{ transform:perspective(1400px) rotateY(0) rotateX(0); }
.htel-lpl-widget.sq .sq-browser__bar{ display:flex; align-items:center; gap:.45rem; padding:.75rem 1rem; background:rgba(255,255,255,.035); border-bottom:1px solid var(--line-on-ink); }
.htel-lpl-widget.sq .sq-browser__bar i{ width:9px; height:9px; border-radius:50%; background:rgba(255,255,255,.16); }
.htel-lpl-widget.sq .sq-browser__bar i:first-child{ background:var(--crimson-2); }
.htel-lpl-widget.sq .sq-url{ margin-left:.8rem; flex:1; max-width:260px; font-family:var(--font-mono); font-size:.68rem; color:var(--slate-light); background:rgba(255,255,255,.05); border:1px solid var(--line-on-ink); border-radius:100px; padding:.28rem .8rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.htel-lpl-widget.sq .sq-site{ padding:1.1rem 1.2rem 1.4rem; display:grid; gap:1.1rem; }
.htel-lpl-widget.sq .sq-site [data-b]{ opacity:0; transform:translateY(12px); animation:htelLplUp .8s var(--ease) forwards; animation-delay:calc(var(--b,0) * 130ms + 900ms); }
.htel-lpl-widget.sq .sq-site__nav{ display:flex; align-items:center; gap:.7rem; }
.htel-lpl-widget.sq .sq-site__nav b{ width:54px; height:10px; border-radius:4px; background:linear-gradient(90deg,var(--crimson-2),var(--crimson)); }
.htel-lpl-widget.sq .sq-site__nav span{ width:30px; height:6px; border-radius:3px; background:rgba(255,255,255,.14); }
.htel-lpl-widget.sq .sq-site__nav span:first-of-type{ margin-left:auto; }
.htel-lpl-widget.sq .sq-site__nav em{ width:54px; height:20px; border-radius:100px; background:rgba(255,71,87,.18); border:1px solid rgba(255,71,87,.4); }
.htel-lpl-widget.sq .sq-site__hero{ display:grid; grid-template-columns:1.15fr .85fr; gap:1.1rem; align-items:center; }
.htel-lpl-widget.sq .sq-site__txt{ display:grid; gap:.55rem; }
.htel-lpl-widget.sq .sq-sk{ display:block; height:11px; border-radius:5px; background:rgba(255,255,255,.2); position:relative; overflow:hidden; }
.htel-lpl-widget.sq .sq-sk--lg{ height:15px; width:92%; background:rgba(255,255,255,.34); }
.htel-lpl-widget.sq .sq-sk--md{ width:68%; }
.htel-lpl-widget.sq .sq-sk--accent{ width:46%; background:linear-gradient(90deg,var(--crimson-2),var(--crimson)); height:15px; }
.htel-lpl-widget.sq .sq-sk--sm{ width:84%; height:6px; background:rgba(255,255,255,.1); }
.htel-lpl-widget.sq .sq-sk::after{ content:''; position:absolute; inset:0; background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%); transform:translateX(-100%); animation:htelLplShine 4.2s ease-in-out infinite; animation-delay:calc(var(--b,0) * 300ms + 2s); }
@keyframes htelLplShine{ 0%{ transform:translateX(-100%); } 35%,100%{ transform:translateX(100%); } }
.htel-lpl-widget.sq .sq-site__btn{ margin-top:.45rem; width:92px; height:24px; border-radius:100px; background:linear-gradient(135deg,var(--crimson),var(--maroon)); box-shadow:0 8px 18px -8px rgba(226,31,54,.7); animation:htelLplBtn 3.4s ease-in-out 2.4s infinite; }
@keyframes htelLplBtn{ 0%,70%,100%{ transform:scale(1); } 82%{ transform:scale(1.07); } }
.htel-lpl-widget.sq .sq-site__art{ aspect-ratio:1/.92; border-radius:var(--radius-md); border:1px solid var(--line-on-ink); background:radial-gradient(circle at 30% 25%,rgba(255,71,87,.5),transparent 55%),linear-gradient(160deg,#2A0B14,#150609); position:relative; overflow:hidden; }
.htel-lpl-widget.sq .sq-site__art::before{ content:''; position:absolute; left:14%; right:14%; bottom:14%; height:38%; border-radius:10px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); animation:htelLplFloatS 5s ease-in-out infinite alternate; }
.htel-lpl-widget.sq .sq-site__art::after{ content:''; position:absolute; width:34%; aspect-ratio:1; right:12%; top:12%; border-radius:50%; background:radial-gradient(circle at 35% 30%,#fff,rgba(255,255,255,.2) 60%,transparent 62%); opacity:.55; animation:htelLplFloatS 6s ease-in-out infinite alternate-reverse; }
@keyframes htelLplFloatS{ to{ transform:translateY(-8px); } }
.htel-lpl-widget.sq .sq-site__cards{ display:grid; grid-template-columns:repeat(3,1fr); gap:.7rem; }
.htel-lpl-widget.sq .sq-site__cards div{ height:56px; border-radius:11px; border:1px solid var(--line-on-ink); background:var(--glass-ink); position:relative; }
.htel-lpl-widget.sq .sq-site__cards div::before{ content:''; position:absolute; left:10px; top:10px; width:16px; height:16px; border-radius:5px; background:rgba(255,71,87,.35); }
.htel-lpl-widget.sq .sq-site__cards div::after{ content:''; position:absolute; left:10px; right:26px; bottom:10px; height:5px; border-radius:3px; background:rgba(255,255,255,.14); }
.htel-lpl-widget.sq .sq-site__cards div:nth-child(2)::before{ background:rgba(255,255,255,.22); }

.htel-lpl-widget.sq .sq-phone{ position:absolute; z-index:3; right:-2%; bottom:0; width:27%; min-width:112px; aspect-ratio:9/18.5; background:#101013; border:1px solid rgba(255,255,255,.18); border-radius:22px; padding:8px; box-shadow:var(--shadow-ink), 0 0 40px -10px rgba(226,31,54,.4); animation:htelLplFloat 6s ease-in-out infinite alternate; }
.htel-lpl-widget.sq .sq-phone__screen{ height:100%; border-radius:15px; background:linear-gradient(180deg,#1B1B1E,#120709); padding:10px 8px; display:grid; align-content:start; gap:7px; overflow:hidden; }
.htel-lpl-widget.sq .sq-phone__screen i{ display:block; height:6px; border-radius:3px; background:rgba(255,255,255,.2); }
.htel-lpl-widget.sq .sq-phone__screen i.a{ width:40%; background:linear-gradient(90deg,var(--crimson-2),var(--crimson)); }
.htel-lpl-widget.sq .sq-phone__screen i.b{ width:90%; height:9px; background:rgba(255,255,255,.34); }
.htel-lpl-widget.sq .sq-phone__screen i.c{ width:70%; }
.htel-lpl-widget.sq .sq-phone__screen u{ display:block; height:38px; border-radius:9px; background:radial-gradient(circle at 30% 30%,rgba(255,71,87,.5),transparent 60%),#22090F; border:1px solid rgba(255,255,255,.08); }
.htel-lpl-widget.sq .sq-phone__screen s{ display:block; height:18px; width:58%; border-radius:100px; background:linear-gradient(135deg,var(--crimson),var(--maroon)); }

.htel-lpl-widget.sq .sq-code{ position:absolute; z-index:1; left:-3%; bottom:.4rem; width:48%; background:rgba(255,255,255,.05); border:1px solid var(--glass-ink-brd); border-radius:var(--radius-md); padding:.8rem .95rem; font-family:var(--font-mono); font-size:.62rem; line-height:1.7; color:var(--slate-light); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); animation:htelLplFloat 7.5s ease-in-out infinite alternate-reverse; }
.htel-lpl-widget.sq .sq-code b{ color:var(--crimson-2); font-weight:500; }
.htel-lpl-widget.sq .sq-code span{ color:#fff; }
@keyframes htelLplFloat{ from{ transform:translateY(0); } to{ transform:translateY(-12px); } }
.htel-lpl-widget.sq .sq-badge{ position:absolute; z-index:4; display:inline-flex; align-items:center; gap:.45rem; font-family:var(--font-mono); font-size:.66rem; color:#fff; background:rgba(12,12,14,.82); border:1px solid rgba(255,71,87,.45); border-radius:100px; padding:.4rem .8rem; box-shadow:0 14px 30px -12px rgba(0,0,0,.7); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); white-space:nowrap; animation:htelLplFloat 5s ease-in-out infinite alternate; }
.htel-lpl-widget.sq .sq-badge i{ width:6px; height:6px; border-radius:50%; background:var(--crimson-2); box-shadow:0 0 8px var(--crimson-2); }
.htel-lpl-widget.sq .sq-badge--1{ top:-.9rem; left:6%; animation-delay:-1s; }
.htel-lpl-widget.sq .sq-badge--2{ top:18%; right:-3%; animation-delay:-2.5s; }
@media (max-width:560px){ .htel-lpl-widget.sq .sq-badge--2{ right:0; top:auto; bottom:36%; } .htel-lpl-widget.sq .sq-code{ display:none; } }

/* ---------------- SERVICES ---------------- */
.htel-lpl-widget.sq .sq-services-head{ display:grid; gap:1.5rem 3rem; grid-template-columns:minmax(0,1fr); align-items:end; margin-bottom:clamp(2.2rem,4vw,3.4rem); }
@media (min-width:980px){ .htel-lpl-widget.sq .sq-services-head{ grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); } .htel-lpl-widget.sq .sq-services-head .sq-side{ justify-self:end; text-align:right; } }
.htel-lpl-widget.sq .sq-side p{ color:var(--slate); max-width:42ch; }
.htel-lpl-widget.sq .sq-side .sq-btn{ margin-top:1.2rem; }
.htel-lpl-widget.sq .sq-grid{ display:grid; gap:1.25rem; grid-template-columns:minmax(0,1fr); }
@media (min-width:700px){ .htel-lpl-widget.sq .sq-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (min-width:1180px){ .htel-lpl-widget.sq .sq-grid{ grid-template-columns:repeat(4,minmax(0,1fr)); } }
.htel-lpl-widget.sq .sq-card{ position:relative; display:flex; flex-direction:column; background:#fff; border:1px solid var(--line-on-paper); border-radius:var(--radius-lg); padding:1.7rem 1.6rem 1.5rem; overflow:hidden; isolation:isolate; transition:transform .45s var(--ease), box-shadow .45s var(--ease), border-color .3s ease; }
.htel-lpl-widget.sq .sq-card::before{ content:''; position:absolute; inset:0; z-index:-1; opacity:0; background:radial-gradient(320px circle at var(--mx,50%) var(--my,0%),rgba(226,31,54,.10),transparent 60%); transition:opacity .35s ease; }
.htel-lpl-widget.sq .sq-card::after{ content:''; position:absolute; left:0; top:0; height:2px; width:100%; background:linear-gradient(90deg,var(--crimson),var(--maroon)); transform:scaleX(0); transform-origin:left; transition:transform .55s var(--ease); }
.htel-lpl-widget.sq .sq-card:hover,.htel-lpl-widget.sq .sq-card:focus-within{ transform:translateY(-6px); border-color:rgba(226,31,54,.3); box-shadow:0 34px 50px -34px rgba(42,2,14,.55); }
.htel-lpl-widget.sq .sq-card:hover::before,.htel-lpl-widget.sq .sq-card:focus-within::before{ opacity:1; }
.htel-lpl-widget.sq .sq-card:hover::after,.htel-lpl-widget.sq .sq-card:focus-within::after{ transform:scaleX(1); }
.htel-lpl-widget.sq .sq-card__ico{ width:46px; height:46px; border-radius:13px; background:var(--paper-dim); color:var(--maroon); display:grid; place-items:center; transition:background .3s ease,color .3s ease,transform .5s var(--ease); }
.htel-lpl-widget.sq .sq-card__ico svg{ width:22px; height:22px; }
.htel-lpl-widget.sq .sq-card:hover .sq-card__ico{ background:var(--crimson); color:#fff; transform:rotate(-6deg) scale(1.06); }
.htel-lpl-widget.sq .sq-card__no{ position:absolute; top:1.5rem; right:1.5rem; font-family:var(--font-mono); font-size:.7rem; color:var(--slate-light); }
.htel-lpl-widget.sq .sq-card h3{ font-size:var(--fs-h3); margin-top:1.3rem; }
.htel-lpl-widget.sq .sq-card p{ margin-top:.6rem; color:var(--slate); font-size:.95rem; }
.htel-lpl-widget.sq .sq-card__fit{ margin-top:.9rem; font-family:var(--font-mono); font-size:.72rem; color:var(--slate); }
.htel-lpl-widget.sq .sq-card__fit b{ color:#C5162B; font-weight:500; }

/* ---------------- APPROACH ---------------- */
.htel-lpl-widget.sq .sq-approach{ display:grid; gap:clamp(2rem,5vw,4.5rem); grid-template-columns:minmax(0,1fr); align-items:center; }
@media (min-width:980px){ .htel-lpl-widget.sq .sq-approach{ grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); } }
.htel-lpl-widget.sq .sq-pillars{ margin-top:2.2rem; border-top:1px solid var(--line-on-ink); }
.htel-lpl-widget.sq .sq-pillar{ display:grid; grid-template-columns:auto 1fr; gap:1.1rem; padding-block:1.3rem; border-bottom:1px solid var(--line-on-ink); position:relative; transition:padding-left .35s var(--ease); }
.htel-lpl-widget.sq .sq-pillar::before{ content:''; position:absolute; left:0; bottom:-1px; height:1.5px; width:0; background:var(--crimson-2); transition:width .5s var(--ease); }
.htel-lpl-widget.sq .sq-pillar:hover::before{ width:100%; }
@media (min-width:760px){ .htel-lpl-widget.sq .sq-pillar:hover{ padding-left:.5rem; } }
.htel-lpl-widget.sq .sq-pillar__ico{ width:40px; height:40px; border-radius:12px; border:1px solid var(--line-on-ink); color:var(--crimson-2); display:grid; place-items:center; background:var(--glass-ink); transition:background .3s ease,color .3s ease,border-color .3s ease; }
.htel-lpl-widget.sq .sq-pillar__ico svg{ width:19px; height:19px; }
.htel-lpl-widget.sq .sq-pillar:hover .sq-pillar__ico{ background:var(--crimson); border-color:var(--crimson); color:#fff; }
.htel-lpl-widget.sq .sq-pillar h3{ font-size:1.12rem; color:#fff; }
.htel-lpl-widget.sq .sq-pillar p{ margin-top:.3rem; font-size:.92rem; color:var(--slate-light); max-width:54ch; }

.htel-lpl-widget.sq .sq-vp{ background:var(--glass-ink); border:1px solid var(--glass-ink-brd); border-radius:var(--radius-lg); padding:1.2rem; box-shadow:var(--shadow-ink); max-width:640px; margin-inline:auto; width:100%; }
.htel-lpl-widget.sq .sq-vp__top{ display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; margin-bottom:1rem; }
.htel-lpl-widget.sq .sq-vp__label{ font-family:var(--font-mono); font-size:.72rem; color:var(--slate-light); }
.htel-lpl-widget.sq .sq-vp__label b{ color:var(--crimson-2); font-weight:500; }
.htel-lpl-widget.sq .sq-vp__btns{ display:inline-flex; gap:.3rem; background:rgba(255,255,255,.05); border:1px solid var(--line-on-ink); border-radius:100px; padding:.25rem; }
.htel-lpl-widget.sq .sq-vp__btn{ font-family:var(--font-mono); font-size:.68rem; color:var(--slate-light); padding:.35rem .8rem; border-radius:100px; transition:background .25s ease,color .25s ease; }
.htel-lpl-widget.sq .sq-vp__btn:hover{ color:#fff; }
.htel-lpl-widget.sq .sq-vp__btn[aria-pressed="true"]{ background:linear-gradient(135deg,var(--crimson),var(--maroon)); color:#fff; }
.htel-lpl-widget.sq .sq-vp__stage{ min-height:340px; display:flex; justify-content:center; align-items:flex-start; padding:1rem; border-radius:var(--radius-md); background:repeating-linear-gradient(45deg,rgba(255,255,255,.02) 0 10px,transparent 10px 20px); border:1px dashed var(--line-on-ink); overflow:hidden; }
.htel-lpl-widget.sq .sq-vp__frame{ width:100%; transition:width .9s var(--ease); background:#141417; border:1px solid var(--glass-ink-brd); border-radius:14px; overflow:hidden; container-type:inline-size; box-shadow:0 20px 40px -20px rgba(0,0,0,.7); }
.htel-lpl-widget.sq .sq-vp__frame[data-bp="tablet"]{ width:64%; }
.htel-lpl-widget.sq .sq-vp__frame[data-bp="mobile"]{ width:36%; min-width:158px; }
.htel-lpl-widget.sq .sq-vp__bar{ display:flex; align-items:center; gap:.6rem; padding:.7rem .9rem; border-bottom:1px solid var(--line-on-ink); }
.htel-lpl-widget.sq .sq-vp__bar b{ width:42px; height:9px; border-radius:4px; background:linear-gradient(90deg,var(--crimson-2),var(--crimson)); }
.htel-lpl-widget.sq .sq-vp__bar span{ width:24px; height:5px; border-radius:3px; background:rgba(255,255,255,.14); display:none; }
.htel-lpl-widget.sq .sq-vp__bar span:first-of-type{ margin-left:auto; }
.htel-lpl-widget.sq .sq-vp__burger{ margin-left:auto; display:grid; gap:3px; }
.htel-lpl-widget.sq .sq-vp__burger i{ display:block; width:14px; height:2px; border-radius:2px; background:rgba(255,255,255,.5); }
.htel-lpl-widget.sq .sq-vp__body{ padding:1rem .9rem 1.1rem; display:grid; gap:.9rem; }
.htel-lpl-widget.sq .sq-vp__h{ display:grid; gap:.45rem; }
.htel-lpl-widget.sq .sq-vp__h i{ display:block; height:10px; border-radius:5px; background:rgba(255,255,255,.32); }
.htel-lpl-widget.sq .sq-vp__h i:nth-child(1){ width:80%; } .htel-lpl-widget.sq .sq-vp__h i:nth-child(2){ width:56%; background:linear-gradient(90deg,var(--crimson-2),var(--crimson)); }
.htel-lpl-widget.sq .sq-vp__h i:nth-child(3){ width:70%; height:6px; background:rgba(255,255,255,.12); }
.htel-lpl-widget.sq .sq-vp__cards{ display:grid; gap:.6rem; grid-template-columns:1fr; }
.htel-lpl-widget.sq .sq-vp__cards div{ height:60px; border-radius:10px; border:1px solid var(--line-on-ink); background:var(--glass-ink); position:relative; }
.htel-lpl-widget.sq .sq-vp__cards div::before{ content:''; position:absolute; left:9px; top:9px; width:14px; height:14px; border-radius:4px; background:rgba(255,71,87,.4); }
.htel-lpl-widget.sq .sq-vp__cards div::after{ content:''; position:absolute; left:9px; right:30%; bottom:9px; height:5px; border-radius:3px; background:rgba(255,255,255,.14); }
@container (min-width:300px){
  .htel-lpl-widget.sq .sq-vp__cards{ grid-template-columns:repeat(2,1fr); }
  .htel-lpl-widget.sq .sq-vp__bar span{ display:block; } .htel-lpl-widget.sq .sq-vp__burger{ display:none; }
}
@container (min-width:470px){
  .htel-lpl-widget.sq .sq-vp__cards{ grid-template-columns:repeat(3,1fr); }
  .htel-lpl-widget.sq .sq-vp__cards div{ height:78px; }
}
@container (min-width:300px){ .htel-lpl-widget.sq .sq-vp__body{ padding:1.4rem 1.3rem 1.5rem; } }

/* ---------------- PROCESS ---------------- */
.htel-lpl-widget.sq .sq-steps{ counter-reset:step; display:grid; gap:0; grid-template-columns:minmax(0,1fr); position:relative; }
.htel-lpl-widget.sq .sq-step{ position:relative; padding:0 0 2.2rem 3.4rem; counter-increment:step; }
.htel-lpl-widget.sq .sq-step::before{ content:counter(step,decimal-leading-zero); position:absolute; left:0; top:0; width:40px; height:40px; border-radius:50%; background:var(--paper-dim); border:1.5px solid var(--crimson); color:#C5162B; font-family:var(--font-mono); font-size:.78rem; display:grid; place-items:center; z-index:1; transition:background .3s ease,color .3s ease,transform .4s var(--ease); }
.htel-lpl-widget.sq .sq-step::after{ content:''; position:absolute; left:19.5px; top:44px; bottom:4px; width:1px; background:var(--line-on-paper); }
.htel-lpl-widget.sq .sq-step:last-child{ padding-bottom:0; } .htel-lpl-widget.sq .sq-step:last-child::after{ display:none; }
.htel-lpl-widget.sq .sq-step:hover::before{ background:var(--crimson); color:#fff; transform:scale(1.08); }
.htel-lpl-widget.sq .sq-step h3{ font-size:var(--fs-h3); padding-top:.45rem; }
.htel-lpl-widget.sq .sq-step p{ margin-top:.5rem; color:var(--slate); max-width:42ch; font-size:.95rem; }
.htel-lpl-widget.sq .sq-step__tag{ display:inline-block; margin-top:.8rem; font-family:var(--font-mono); font-size:.72rem; color:#C5162B; }
@media (min-width:980px){
  .htel-lpl-widget.sq .sq-steps{ grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.6rem; }
  .htel-lpl-widget.sq .sq-step{ padding:4rem 0 0 0; }
  .htel-lpl-widget.sq .sq-step::after{ left:48px; right:-1.6rem; top:19.5px; bottom:auto; width:auto; height:1px; display:block; transform:scaleX(0); transform-origin:left; transition:transform .9s var(--ease); transition-delay:calc(var(--d,0) * 90ms + 250ms); }
  .htel-lpl-widget.sq.sq-js .sq-step.is-in::after{ transform:scaleX(1); }
  .htel-lpl-widget.sq:not(.sq-js) .sq-step::after{ transform:none; }
  .htel-lpl-widget.sq .sq-step:last-child::after{ display:none; }
  .htel-lpl-widget.sq .sq-step h3{ padding-top:0; }
}

/* ---------------- WHY ---------------- */
.htel-lpl-widget.sq .sq-split{ display:grid; gap:clamp(2rem,5vw,4.5rem); grid-template-columns:minmax(0,1fr); }
@media (min-width:980px){ .htel-lpl-widget.sq .sq-split{ grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); } .htel-lpl-widget.sq .sq-sticky{ position:sticky; top:110px; align-self:start; } }
.htel-lpl-widget.sq .sq-why li{ display:grid; grid-template-columns:auto 1fr; gap:1.2rem; padding-block:1.5rem; border-top:1px solid var(--line-on-paper); }
.htel-lpl-widget.sq .sq-why li:last-child{ border-bottom:1px solid var(--line-on-paper); }
.htel-lpl-widget.sq .sq-why__mark{ width:38px; height:38px; border-radius:50%; border:1.5px solid var(--crimson); color:var(--crimson); display:grid; place-items:center; transition:background .3s ease,color .3s ease; }
.htel-lpl-widget.sq .sq-why__mark svg{ width:16px; height:16px; }
.htel-lpl-widget.sq .sq-why li:hover .sq-why__mark{ background:var(--crimson); color:#fff; }
.htel-lpl-widget.sq .sq-why h3{ font-size:var(--fs-h3); }
.htel-lpl-widget.sq .sq-why p{ margin-top:.45rem; color:var(--slate); max-width:60ch; }
.htel-lpl-widget.sq .sq-why p a{ color:#C5162B; font-weight:600; text-decoration:underline; text-underline-offset:3px; }
.htel-lpl-widget.sq .sq-fine{ margin-top:1.8rem; border:1px solid var(--line-on-paper); border-left:2px solid var(--crimson); border-radius:var(--radius-sm); padding:1rem 1.2rem; font-size:.9rem; color:var(--slate); background:#fff; max-width:56ch; }
.htel-lpl-widget.sq .sq-fine b{ color:var(--ink); }

/* ---------------- FAQ ---------------- */
.htel-lpl-widget.sq .sq-faq{ max-width:860px; margin-inline:auto; border-top:1px solid var(--line-on-paper); }
.htel-lpl-widget.sq .sq-faq__item{ border-bottom:1px solid var(--line-on-paper); }
.htel-lpl-widget.sq .sq-faq__q{ width:100%; display:flex; align-items:center; justify-content:space-between; gap:1.5rem; padding:1.35rem .2rem; text-align:left; font-family:var(--font-display); font-weight:600; font-size:clamp(1.05rem,1rem + .35vw,1.25rem); }
.htel-lpl-widget.sq .sq-faq__q:hover{ color:#C5162B; }
.htel-lpl-widget.sq .sq-faq__icon{ position:relative; width:30px; height:30px; flex-shrink:0; border-radius:50%; border:1.5px solid var(--line-on-paper); transition:background .25s ease,border-color .25s ease; }
.htel-lpl-widget.sq .sq-faq__icon::before,.htel-lpl-widget.sq .sq-faq__icon::after{ content:''; position:absolute; left:50%; top:50%; width:11px; height:1.8px; background:currentColor; transform:translate(-50%,-50%); transition:transform .3s var(--ease); }
.htel-lpl-widget.sq .sq-faq__icon::after{ transform:translate(-50%,-50%) rotate(90deg); }
.htel-lpl-widget.sq .sq-faq__q[aria-expanded="true"] .sq-faq__icon{ background:var(--crimson); border-color:var(--crimson); color:#fff; }
.htel-lpl-widget.sq .sq-faq__q[aria-expanded="true"] .sq-faq__icon::after{ transform:translate(-50%,-50%) rotate(0); }
.htel-lpl-widget.sq .sq-faq__a{ display:grid; grid-template-rows:0fr; transition:grid-template-rows .35s var(--ease); }
.htel-lpl-widget.sq .sq-faq__a.is-open{ grid-template-rows:1fr; }
.htel-lpl-widget.sq .sq-faq__a > div{ overflow:hidden; }
.htel-lpl-widget.sq .sq-faq__a p{ padding:0 .2rem 1.5rem; color:var(--slate); max-width:68ch; opacity:0; transform:translateY(-6px); transition:opacity .35s ease, transform .4s var(--ease); }
.htel-lpl-widget.sq .sq-faq__a.is-open p{ opacity:1; transform:none; transition-delay:.08s; }

/* ---------------- CTA ---------------- */
.htel-lpl-widget.sq .sq-cta{ text-align:center; position:relative; overflow:hidden; }
.htel-lpl-widget.sq .sq-cta .sq-container{ position:relative; z-index:1; max-width:760px; }
.htel-lpl-widget.sq .sq-cta__glow{ position:absolute; top:50%; left:50%; width:640px; height:640px; transform:translate(-50%,-50%); border-radius:50%; filter:blur(140px); background:radial-gradient(circle,rgba(226,31,54,.24),transparent 70%); pointer-events:none; animation:htelLplBreathe 9s ease-in-out infinite alternate; }
@keyframes htelLplBreathe{ from{ transform:translate(-50%,-50%) scale(.9); opacity:.7; } to{ transform:translate(-50%,-50%) scale(1.15); opacity:1; } }
.htel-lpl-widget.sq .sq-cta h2{ font-size:var(--fs-h2); color:#fff; }
.htel-lpl-widget.sq .sq-cta p{ margin-top:1.2rem; color:var(--slate-light); font-size:var(--fs-lead); }
.htel-lpl-widget.sq .sq-cta__actions{ margin-top:2.2rem; display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; }
.htel-lpl-widget.sq .sq-cta .sq-btn--primary{ padding:1.1rem 2.1rem; font-size:1rem; }

/* ---------------- FOOTER ---------------- */
.htel-lpl-widget.sq .sq-footer{ background:var(--ink); color:var(--slate-light); padding-block:4rem 2rem; border-top:1px solid var(--line-on-ink); }
.htel-lpl-widget.sq .sq-footer__top{ display:grid; gap:2.5rem; grid-template-columns:minmax(0,1fr); margin-bottom:2.5rem; }
@media (min-width:900px){ .htel-lpl-widget.sq .sq-footer__top{ grid-template-columns:1.2fr 2fr; } }
.htel-lpl-widget.sq .sq-footer__brand .sq-logo-chip{ display:inline-flex; background:var(--sq-logo-bg,var(--paper)); padding:var(--sq-flogo-pad,.55rem .9rem); border-radius:var(--sq-flogo-radius,10px); margin-bottom:1.2rem; }
.htel-lpl-widget.sq .sq-footer__brand .sq-logo-chip img{ width:var(--sq-flogo-w,50px); height:auto; max-width:none; flex-shrink:0; }
.htel-lpl-widget.sq .sq-footer__brand p{ max-width:38ch; font-size:.9rem; line-height:1.7; }
.htel-lpl-widget.sq .sq-footer__cols{ display:grid; gap:2rem; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); }
.htel-lpl-widget.sq .sq-footer h4{ font-family:var(--font-mono); font-size:.75rem; letter-spacing:.05em; text-transform:uppercase; color:#fff; margin-bottom:1rem; }
.htel-lpl-widget.sq .sq-footer ul{ display:flex; flex-direction:column; gap:.7rem; font-size:.9rem; }
.htel-lpl-widget.sq .sq-footer a:hover{ color:var(--crimson-2); }
.htel-lpl-widget.sq .sq-footer__bottom{ padding-top:1.8rem; border-top:1px solid var(--line-on-ink); display:flex; flex-wrap:wrap; justify-content:space-between; gap:1rem; font-size:.8rem; }

@media (max-width:420px){ .htel-lpl-widget.sq .sq-btn{ white-space:normal; } }
@media (prefers-reduced-motion:reduce){
  .htel-lpl-widget.sq *,.htel-lpl-widget.sq *::before,.htel-lpl-widget.sq *::after{ animation:none !important; transition-duration:.01ms !important; transition-delay:0s !important; scroll-behavior:auto !important; }
  .htel-lpl-widget.sq .sq-up,.htel-lpl-widget.sq .sq-stage,.htel-lpl-widget.sq .sq-site [data-b]{ opacity:1 !important; transform:none !important; }
  .htel-lpl-widget.sq.sq-js .sq-rv{ opacity:1 !important; transform:none !important; }
}


/* ======= Landing Pages page ======= */
.htel-lpl-widget.sq .sq-hero h1{ font-size:clamp(2rem,1.1rem + 2.6vw,3.3rem); text-wrap:balance; }
.htel-lpl-widget.sq .sq-hero h1 em{ display:block; }
/* wireframe */
.htel-lpl-widget.sq .lp-win{ position:relative; overflow:hidden; background:var(--ink-elevated); border:1px solid var(--glass-ink-brd); border-radius:var(--radius-lg); box-shadow:var(--shadow-ink); }
.htel-lpl-widget.sq .lp-bar{ display:flex; align-items:center; gap:.4rem; padding:.7rem .9rem; border-bottom:1px solid var(--line-on-ink); font-family:var(--font-mono); font-size:.58rem; color:var(--slate-light); }
.htel-lpl-widget.sq .lp-bar i{ width:8px; height:8px; border-radius:50%; background:rgba(255,255,255,.18); }
.htel-lpl-widget.sq .lp-bar span{ margin-left:.6rem; }
.htel-lpl-widget.sq .lp-body{ display:grid; gap:.8rem; padding:1rem; transition:box-shadow .35s ease; }
.htel-lpl-widget.sq .lp-nav{ display:flex; align-items:center; gap:.7rem; }
.htel-lpl-widget.sq .lp-nav b{ width:20px; height:20px; border-radius:6px; background:linear-gradient(135deg,var(--crimson),var(--maroon)); }
.htel-lpl-widget.sq .lp-nav span{ width:40px; height:5px; border-radius:3px; background:rgba(255,255,255,.16); }
.htel-lpl-widget.sq .lp-nav span:first-of-type{ margin-left:auto; }
.htel-lpl-widget.sq .lp-main{ display:grid; grid-template-columns:1.1fr .9fr; gap:.8rem; align-items:stretch; }
.htel-lpl-widget.sq .lp-copy{ display:grid; gap:.8rem; align-content:start; }
.htel-lpl-widget.sq .lp-h,.htel-lpl-widget.sq .lp-form,.htel-lpl-widget.sq .lp-visual,.htel-lpl-widget.sq .lp-trk,.htel-lpl-widget.sq .lp-cta,.htel-lpl-widget.sq .lp-toast{ transition:box-shadow .35s ease, outline-color .35s ease; outline:2px solid transparent; outline-offset:3px; border-radius:10px; }
.htel-lpl-widget.sq .lp-h{ display:grid; gap:.4rem; padding:.2rem; }
.htel-lpl-widget.sq .lp-h strong{ font-family:var(--font-display); font-size:1rem; line-height:1.2; color:#fff; }
.htel-lpl-widget.sq .lp-h i{ display:block; height:5px; width:85%; border-radius:3px; background:rgba(255,255,255,.16); }
.htel-lpl-widget.sq .lp-h i + i{ width:60%; }
.htel-lpl-widget.sq .lp-cta,.htel-lpl-widget.sq .lp-sub{ display:inline-flex; width:max-content; align-items:center; font-size:.68rem; font-weight:600; color:#fff; padding:.5rem 1rem; border-radius:100px; background:linear-gradient(135deg,var(--crimson),var(--maroon)); }
.htel-lpl-widget.sq .lp-form{ display:grid; gap:.45rem; align-content:start; padding:.8rem; border:1px solid var(--line-on-ink); background:var(--glass-ink); }
.htel-lpl-widget.sq .lp-form small{ font-family:var(--font-mono); font-size:.56rem; color:var(--slate-light); }
.htel-lpl-widget.sq .lp-form u{ display:block; height:20px; border-radius:6px; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.08); }
.htel-lpl-widget.sq .lp-sub{ justify-content:center; width:100%; }
.htel-lpl-widget.sq .lp-visual{ height:54px; border:1px solid rgba(255,255,255,.08); background:radial-gradient(circle at 20% 30%,rgba(255,71,87,.45),transparent 55%),linear-gradient(160deg,#2A0B14,#150609); }
.htel-lpl-widget.sq .lp-trk{ font-family:var(--font-mono); font-size:.58rem; color:var(--slate-light); padding:.45rem .6rem; border:1px dashed var(--line-on-ink); }
.htel-lpl-widget.sq .lp-toast{ position:absolute; right:.8rem; bottom:3.1rem; display:flex; align-items:center; gap:.5rem; font-family:var(--font-mono); font-size:.58rem; color:#fff; background:var(--ink); border:1px solid rgba(74,222,128,.5); padding:.45rem .7rem; box-shadow:0 14px 30px -12px rgba(0,0,0,.7); }
.htel-lpl-widget.sq .lp-toast i{ width:7px; height:7px; border-radius:50%; background:#4ADE80; box-shadow:0 0 8px rgba(74,222,128,.8); }
.htel-lpl-widget.sq .lp-win[data-hl="head"] .lp-h,.htel-lpl-widget.sq .lp-win[data-hl="visual"] .lp-visual,.htel-lpl-widget.sq .lp-win[data-hl="form"] .lp-form,.htel-lpl-widget.sq .lp-win[data-hl="cta"] .lp-cta,.htel-lpl-widget.sq .lp-win[data-hl="bar"] .lp-trk,.htel-lpl-widget.sq .lp-win[data-hl="toast"] .lp-toast{ outline-color:var(--crimson-2); box-shadow:0 0 28px -4px rgba(226,31,54,.7); }
.htel-lpl-widget.sq .lp-win[data-hl="page"] .lp-body{ box-shadow:inset 0 0 0 2px var(--crimson-2), inset 0 0 40px -10px rgba(226,31,54,.5); }
@media (max-width:520px){ .htel-lpl-widget.sq .lp-main{ grid-template-columns:1fr; } }

/* hero-specific: wire sits in the stage */
.htel-lpl-widget.sq .lp-hero .lp-win{ transform:perspective(1400px) rotateY(-5deg) rotateX(2deg); transition:transform .8s var(--ease); }
.htel-lpl-widget.sq .lp-hero .sq-stage:hover .lp-win{ transform:none; }

/* services: anatomy */
.htel-lpl-widget.sq .lp-anat{ display:grid; gap:2.5rem 4rem; grid-template-columns:minmax(0,1fr); align-items:start; }
@media (min-width:1000px){ .htel-lpl-widget.sq .lp-anat{ grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); } .htel-lpl-widget.sq .lp-anat__wire{ position:sticky; top:110px; } }
.htel-lpl-widget.sq .lp-anat__cap{ margin-top:.9rem; font-family:var(--font-mono); font-size:.68rem; color:var(--slate); text-align:center; }
.htel-lpl-widget.sq .lp-rows{ border-top:1px solid var(--line-on-paper); }
.htel-lpl-widget.sq .lp-row{ display:grid; grid-template-columns:auto auto minmax(0,1fr); gap:1.1rem; align-items:start; padding:1.35rem .5rem; border-bottom:1px solid var(--line-on-paper); outline:none; transition:background .3s ease, padding-left .4s var(--ease); }
.htel-lpl-widget.sq .lp-row:hover,.htel-lpl-widget.sq .lp-row:focus-visible{ background:#fff; padding-left:1.2rem; }
.htel-lpl-widget.sq .lp-row:focus-visible{ box-shadow:inset 3px 0 0 var(--crimson); }
.htel-lpl-widget.sq .lp-row__no{ font-family:var(--font-mono); font-size:.74rem; color:var(--slate-light); padding-top:.7rem; }
.htel-lpl-widget.sq .lp-row__ico{ width:44px; height:44px; border-radius:12px; background:var(--paper-dim); color:var(--maroon); display:grid; place-items:center; transition:background .3s ease,color .3s ease; }
.htel-lpl-widget.sq .lp-row__ico svg{ width:21px; height:21px; }
.htel-lpl-widget.sq .lp-row:hover .lp-row__ico,.htel-lpl-widget.sq .lp-row:focus-visible .lp-row__ico{ background:var(--crimson); color:#fff; }
.htel-lpl-widget.sq .lp-row h3{ font-size:1.15rem; }
.htel-lpl-widget.sq .lp-row p{ margin-top:.35rem; color:var(--slate); font-size:.95rem; }

/* approach: journey */
.htel-lpl-widget.sq .lp-intro{ max-width:760px; margin-bottom:clamp(2.4rem,4vw,3.4rem); }
.htel-lpl-widget.sq .lp-jr{ position:relative; display:grid; gap:2rem 1.6rem; grid-template-columns:minmax(0,1fr); }
.htel-lpl-widget.sq .lp-jr::before{ content:''; position:absolute; left:28px; top:28px; bottom:0; width:1px; background:linear-gradient(180deg,var(--crimson),rgba(226,31,54,.15)); }
@media (min-width:900px){
  .htel-lpl-widget.sq .lp-jr{ grid-template-columns:repeat(4,minmax(0,1fr)); }
  .htel-lpl-widget.sq .lp-jr::before{ left:28px; right:0; top:28px; bottom:auto; width:auto; height:1px; background:linear-gradient(90deg,var(--crimson),rgba(226,31,54,.15)); }
}
.htel-lpl-widget.sq .lp-jn{ position:relative; padding-left:76px; }
@media (min-width:900px){ .htel-lpl-widget.sq .lp-jn{ padding-left:0; padding-top:76px; } }
.htel-lpl-widget.sq .lp-jn__dot{ position:absolute; left:0; top:0; width:56px; height:56px; border-radius:50%; background:var(--ink); border:1.5px solid var(--crimson); color:var(--crimson-2); display:grid; place-items:center; transition:background .3s ease,color .3s ease,transform .4s var(--ease); }
.htel-lpl-widget.sq .lp-jn__dot svg{ width:22px; height:22px; }
.htel-lpl-widget.sq .lp-jn:hover .lp-jn__dot{ background:var(--crimson); color:#fff; transform:scale(1.08); }
.htel-lpl-widget.sq .lp-jn small{ font-family:var(--font-mono); font-size:.7rem; color:var(--crimson-2); }
.htel-lpl-widget.sq .lp-jn h3{ margin-top:.5rem; font-size:1.2rem; color:#fff; }
.htel-lpl-widget.sq .lp-jn p{ margin-top:.45rem; font-size:.95rem; color:var(--slate-light); }

/* process: chevrons */
.htel-lpl-widget.sq .lp-chs{ display:grid; gap:1.4rem 0; grid-template-columns:minmax(0,1fr); }
@media (min-width:900px){ .htel-lpl-widget.sq .lp-chs{ grid-template-columns:repeat(4,minmax(0,1fr)); } }
.htel-lpl-widget.sq .lp-ch__h{ position:relative; display:flex; align-items:center; gap:.9rem; min-height:74px; padding:1rem 2.2rem 1rem 1.6rem; color:#fff; background:linear-gradient(90deg,var(--crimson),var(--maroon)); border-radius:14px; transition:filter .3s ease, transform .4s var(--ease); }
.htel-lpl-widget.sq .lp-ch__h span{ font-family:var(--font-mono); font-size:.8rem; opacity:.85; }
.htel-lpl-widget.sq .lp-ch__h h3{ font-size:1.08rem; color:#fff; }
.htel-lpl-widget.sq .lp-ch p{ margin-top:1rem; padding-inline:.4rem 1.4rem; color:var(--slate); font-size:.95rem; }
.htel-lpl-widget.sq .lp-ch:hover .lp-ch__h{ filter:brightness(1.1); transform:translateY(-3px); }
@media (min-width:900px){
  .htel-lpl-widget.sq .lp-ch__h{ border-radius:0; clip-path:polygon(0 0,calc(100% - 26px) 0,100% 50%,calc(100% - 26px) 100%,0 100%,26px 50%); padding-left:3rem; margin-right:-12px; }
  .htel-lpl-widget.sq .lp-ch:first-child .lp-ch__h{ clip-path:polygon(0 0,calc(100% - 26px) 0,100% 50%,calc(100% - 26px) 100%,0 100%); border-radius:14px 0 0 14px; padding-left:1.6rem; }
  .htel-lpl-widget.sq .lp-ch:last-child .lp-ch__h{ margin-right:0; }
  .htel-lpl-widget.sq .lp-ch p{ padding-left:1.6rem; }
}

/* benefits */
.htel-lpl-widget.sq .lp-bns{ display:grid; gap:1.1rem; grid-template-columns:minmax(0,1fr); }
@media (min-width:700px){ .htel-lpl-widget.sq .lp-bns{ grid-template-columns:repeat(2,minmax(0,1fr)); } .htel-lpl-widget.sq .lp-bn:last-child{ grid-column:1 / -1; } }
@media (min-width:1000px){ .htel-lpl-widget.sq .lp-bns{ grid-template-columns:repeat(6,minmax(0,1fr)); } .htel-lpl-widget.sq .lp-bn{ grid-column:span 2; } .htel-lpl-widget.sq .lp-bn:nth-child(n+4){ grid-column:span 3; } }
.htel-lpl-widget.sq .lp-bn{ position:relative; overflow:hidden; background:#fff; border:1px solid var(--line-on-paper); border-radius:var(--radius-lg); padding:1.8rem 1.6rem 1.7rem; transition:transform .45s var(--ease), box-shadow .45s var(--ease), border-color .3s ease; }
.htel-lpl-widget.sq .lp-bn::after{ content:''; position:absolute; left:0; right:0; bottom:0; height:3px; background:linear-gradient(90deg,var(--crimson),var(--maroon)); transform:scaleX(0); transform-origin:left; transition:transform .5s var(--ease); }
.htel-lpl-widget.sq .lp-bn:hover{ transform:translateY(-5px); border-color:rgba(226,31,54,.3); box-shadow:0 30px 44px -32px rgba(42,2,14,.5); }
.htel-lpl-widget.sq .lp-bn:hover::after{ transform:scaleX(1); }
.htel-lpl-widget.sq .lp-bn__ico{ width:46px; height:46px; border-radius:50%; border:1.5px solid var(--crimson); color:var(--crimson); display:grid; place-items:center; margin-bottom:1.1rem; }
.htel-lpl-widget.sq .lp-bn__ico svg{ width:20px; height:20px; }
.htel-lpl-widget.sq .lp-bn h3{ font-size:var(--fs-h3); }
.htel-lpl-widget.sq .lp-bn p{ margin-top:.5rem; color:var(--slate); font-size:.95rem; max-width:46ch; }
.htel-lpl-widget.sq .lp-note{ margin:1.6rem 0 0; max-width:none; }
.htel-lpl-widget.sq .lp-links{ margin-top:1.4rem; display:flex; flex-wrap:wrap; gap:.8rem 1.8rem; }

/* faq: two columns */
@media (min-width:980px){ .htel-lpl-widget.sq .lp-faq .sq-faq{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:3rem; align-items:start; border-top:0; } .htel-lpl-widget.sq .lp-faq .sq-faq__item{ border-top:1px solid var(--line-on-paper); } }

/* cta extras */
.htel-lpl-widget.sq .lp-bring{ display:flex; flex-wrap:wrap; justify-content:center; gap:.6rem; margin-top:2.2rem; }
.htel-lpl-widget.sq .lp-bring li{ font-family:var(--font-mono); font-size:.74rem; color:#fff; border:1px solid var(--line-on-ink); background:var(--glass-ink); border-radius:100px; padding:.45rem 1rem; }
.htel-lpl-widget.sq .lp-bring-h{ margin-top:2.4rem; font-family:var(--font-mono); font-size:.68rem; letter-spacing:.06em; text-transform:uppercase; color:var(--slate-light); }
/* skip link: moved off-screen (not above the widget) until focused */
.htel-lpl-widget.sq .sq-skip{ left:-9999px !important; top:1rem !important; }
.htel-lpl-widget.sq .sq-skip:focus{ left:1rem !important; }
/* keep the page below a site-wide header (stacking) */
.htel-lpl-widget.sq{ position:relative; z-index:0; }


/* ===== widget additions (not in the source file) ===== */
/* configurable mobile-menu breakpoint (source = 980px, handled by the rules above) */
@media (min-width:768px) and (max-width:979px){
  .htel-lpl-widget.sq[data-sq-bp="768"] .sq-nav__links{ display:flex; }
  .htel-lpl-widget.sq[data-sq-bp="768"] .sq-nav__cta{ display:inline-flex; }
  .htel-lpl-widget.sq[data-sq-bp="768"] .sq-nav__toggle{ display:none; }
}
@media (min-width:980px) and (max-width:1099px){
  .htel-lpl-widget.sq[data-sq-bp="1100"] .sq-nav__links,.htel-lpl-widget.sq[data-sq-bp="1100"] .sq-nav__cta,
  .htel-lpl-widget.sq[data-sq-bp="1280"] .sq-nav__links,.htel-lpl-widget.sq[data-sq-bp="1280"] .sq-nav__cta{ display:none; }
  .htel-lpl-widget.sq[data-sq-bp="1100"] .sq-nav__toggle,.htel-lpl-widget.sq[data-sq-bp="1280"] .sq-nav__toggle{ display:flex; }
}
@media (min-width:1100px) and (max-width:1279px){
  .htel-lpl-widget.sq[data-sq-bp="1280"] .sq-nav__links,.htel-lpl-widget.sq[data-sq-bp="1280"] .sq-nav__cta{ display:none; }
  .htel-lpl-widget.sq[data-sq-bp="1280"] .sq-nav__toggle{ display:flex; }
}
/* process step: optional custom number replaces the CSS counter */
.htel-lpl-widget.sq .gx-step__no:empty{ display:none; }
/* breadcrumb: current page hook (colour unchanged unless set in the Style tab) */
.htel-lpl-widget.sq .sq-crumbs [aria-current="page"]{ color:var(--sq-crumb-current,inherit); }
/* hero without the mockup composition */
.htel-lpl-widget.sq.htel-sq-no-serp .sq-hero__inner{ grid-template-columns:minmax(0,1fr); }
/* header turned off (e.g. site-wide Speqtus Header widget used instead): the hero keeps its original top padding, because that fixed header overlays it */
/* Elementor editor: keep the fixed bars inside the preview canvas instead of covering the editor UI */
.htel-lpl-widget.sq.htel-is-editor .sq-nav,.htel-lpl-widget.sq.htel-is-editor .sq-promo{ position:absolute !important; }
.htel-lpl-widget.sq.htel-is-editor .sq-mobile{ position:absolute; }
/* promo link colour hook */
.htel-lpl-widget.sq .sq-promo__cta{ color:var(--sq-promo-cta,inherit); }
/* anchors flash (in-page link feedback) */
@keyframes htelLplFlash{ 0%{ box-shadow:inset 0 0 0 0 rgba(226,31,54,0); } 30%{ box-shadow:inset 0 0 0 3px rgba(226,31,54,.35); } 100%{ box-shadow:inset 0 0 0 0 rgba(226,31,54,0); } }
.htel-lpl-widget.sq .sq-flash{ animation:htelLplFlash 1.1s ease-out 1; }

/* ===== layout adapts to the number of items ===== */
@media (min-width:900px){
  .htel-lpl-widget.sq .lp-jr{ grid-template-columns:repeat(var(--lp-jr-n,4),minmax(0,1fr)); }
  .htel-lpl-widget.sq .lp-chs{ grid-template-columns:repeat(var(--lp-ch-n,4),minmax(0,1fr)); }
}
@media (min-width:700px){
  .htel-lpl-widget.sq.htel-lp-bn-even .lp-bn:last-child{ grid-column:auto; }
}
@media (min-width:1000px){
  .htel-lpl-widget.sq.htel-lp-bn-alt .lp-bns{ grid-template-columns:repeat(var(--lp-bn-cols,3),minmax(0,1fr)); }
  .htel-lpl-widget.sq.htel-lp-bn-alt .lp-bn{ grid-column:auto; }
}
/* editable parts that the source hard-coded */
.htel-lpl-widget.sq .lp-row__no:empty,.htel-lpl-widget.sq .lp-ch__h span:empty{ display:none; }
.htel-lpl-widget.sq .lp-row__ico:empty,.htel-lpl-widget.sq .lp-bn__ico:empty{ display:none; }
.htel-lpl-widget.sq .lp-links:empty,.htel-lpl-widget.sq .lp-bring:empty,.htel-lpl-widget.sq .sq-hero__notes:empty,.htel-lpl-widget.sq .sq-cta__actions:empty{ display:none; }
/* inline links inside FAQ answers (the source styled them inline) */
.htel-lpl-widget.sq .sq-faq__a a{ color:#C5162B; font-weight:600; text-decoration:underline; text-underline-offset:3px; }
/* wireframe switched off: hero keeps one column, service list uses the full width */
.htel-lpl-widget.sq.htel-sq-no-board .sq-hero__inner{ grid-template-columns:minmax(0,1fr); }
.htel-lpl-widget.sq.htel-sq-no-anat .lp-anat{ grid-template-columns:minmax(0,1fr); }
