/* HOWTOBECOMEAANTHE - theme layer.
   Layout, colours, type and spacing live in Elementor. This file only holds
   (1) base resets, (2) effects Elementor cannot reproduce, (3) a few utility classes. */

:root{--hba-red:#ff2635;--hba-orange:#ff852b;--hba-bg:#080808;--hba-line:#292929;
  --hba-font:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--hba-bg);color:#f8f8f6;font-family:var(--hba-font);overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{text-decoration:none}
h1,h2,h3,h4,h5,h6{margin:0}
.elementor-widget-image img{display:block}
:where(.e-con) .elementor-widget:not(:last-child){margin-block-end:0}
.elementor-widget-text-editor p{margin:0 0 1em}
.elementor-widget-text-editor p:last-child{margin-bottom:0}
.elementor-widget-text-editor ul{margin:0;padding-left:18px}

/* ---------- utilities ---------- */
.hba-mw-190{max-width:190px}.hba-mw-310{max-width:310px}.hba-mw-540{max-width:540px}.hba-mw-640{max-width:640px}
.hba-mw-650{max-width:650px}.hba-mw-700{max-width:700px}.hba-mw-760{max-width:760px}.hba-mw-780{max-width:780px}.hba-mw-820{max-width:820px}
.hba-isolate{isolation:isolate}
.hba-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--hba-red);margin:0 6px 1px 4px;vertical-align:middle}
.hba-kicker .elementor-widget-container{display:inline-flex;align-items:center;gap:10px}
.hba-kicker .elementor-widget-container::before{content:"";width:26px;height:1px;background:var(--hba-red);flex:none}
.hba-sticky{position:sticky;top:120px;align-self:start}
.hba-ul ul{line-height:2}

/* buttons: subtle lift on hover (as original) */
.hba-btn .elementor-button{transition:transform .2s,box-shadow .2s,border-color .2s,background-color .2s}
.hba-btn .elementor-button:hover{transform:translateY(-2px);box-shadow:0 10px 30px #ff26352b}

/* header / footer */
.hba-header{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.hba-brand-text .elementor-heading-title{white-space:nowrap}

/* scroll reveal (disabled inside the Elementor editor and for reduced motion) */
html.hba-js body:not(.elementor-editor-active) .hba-reveal{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}
html.hba-js body:not(.elementor-editor-active) .hba-reveal.hba-in{opacity:1;transform:translateY(0)}

/* ================= HOME HERO ================= */
.e-con.hba-glow{position:absolute;z-index:-2;width:780px;height:780px;max-width:none;border-radius:50%;right:-120px;top:-190px;left:auto;
  background:radial-gradient(circle,#ff26351b 0%,#ff263508 35%,transparent 70%);pointer-events:none}
.e-con.hba-gridline,.e-con.hba-pgrid,.e-con.hba-gridbg{position:absolute;z-index:-1;pointer-events:none;width:auto;max-width:none}
.e-con.hba-gridline{inset:0;opacity:.15;background-image:linear-gradient(#777 1px,transparent 1px),linear-gradient(90deg,#777 1px,transparent 1px);background-size:70px 70px;
  -webkit-mask-image:linear-gradient(to right,transparent,#000 55%,#000);mask-image:linear-gradient(to right,transparent,#000 55%,#000)}
.e-con.hba-visual{position:relative;display:grid;place-items:center;perspective:1000px}
.e-con.hba-orb{position:absolute;width:400px;height:400px;max-width:none;border:1px solid #ffffff14;border-radius:50%;transform:rotateX(68deg) rotateZ(-25deg);box-shadow:0 0 80px #ff263509;pointer-events:none}
.e-con.hba-orb-2{width:330px;height:330px;transform:rotateX(68deg) rotateZ(35deg);border-color:#ff263532}
.e-con.hba-shape{position:absolute;max-width:none;background:linear-gradient(135deg,#222,#0b0b0b);border:1px solid #ffffff18;transform:rotate(35deg);box-shadow:0 20px 70px #000;pointer-events:none}
.e-con.hba-shape-1{width:100px;height:100px;right:3%;top:14%}
.e-con.hba-shape-2{width:48px;height:48px;left:8%;bottom:17%;background:var(--hba-red);opacity:.85;transform:rotate(45deg)}
.e-con.hba-floatcard{position:absolute;z-index:3;width:auto;max-width:none;background:#141414ef;border:1px solid #ffffff20;padding:14px 17px;box-shadow:0 20px 50px #0008;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.hba-fc1{left:0;top:21%}.hba-fc2{right:0;bottom:17%}
.e-con.hba-book{position:relative;z-index:2;width:275px;height:365px;max-width:none;padding:29px 26px 22px;
  background:linear-gradient(145deg,#f4f3ed,#d8d7d0);color:#080808;transform:rotateY(-16deg) rotateZ(-4deg);transform-style:preserve-3d;
  box-shadow:23px 18px 0 var(--hba-red),40px 38px 60px #000c;transition:transform .3s}
.e-con.hba-book::before{content:"";position:absolute;left:0;top:0;bottom:0;right:auto;width:17px;height:auto;background:linear-gradient(90deg,#999,#eee 40%,#c9c8c1);transform:translateX(-17px) rotateY(-90deg);transform-origin:right}
.e-con.hba-book::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:8px;background:#c7c6bf;transform:rotateX(90deg);transform-origin:top}
.hba-bookfoot{position:absolute;bottom:23px;left:26px;width:78%;border-top:1px solid #aaa;padding-top:12px}
@media(max-width:850px){.hba-sticky{position:static}.hba-fc1{left:2%}.hba-fc2{right:2%}}
@media(max-width:520px){
  .e-con.hba-visual{transform:scale(.9);margin:-10px -20px}
  .e-con.hba-book{width:235px;height:320px}
  .e-con.hba-floatcard{padding:10px}
}

/* author portrait */
.e-con.hba-portrait{position:relative;display:grid;place-items:center}
.e-con.hba-portrait-rings{position:absolute;left:50%;top:50%;width:280px;height:280px;max-width:none;margin:-140px 0 0 -140px;border:1px solid #ff26353b;border-radius:50%;pointer-events:none}
.e-con.hba-portrait-rings::after{content:"";position:absolute;inset:39px;border:1px solid #ff26353b;border-radius:50%}
.hba-portrait-mark{position:relative;z-index:1}
.hba-portrait-label{position:absolute;bottom:20px;left:22px}

/* ================= ABOUT ================= */
.e-con.hba-glow-about{position:absolute;inset:0;z-index:-2;width:auto;max-width:none;background:radial-gradient(ellipse at 88% 25%,#ff26351b,transparent 38%);pointer-events:none}
.e-con.hba-pgrid{inset:0;opacity:.14;background-image:linear-gradient(#777 1px,transparent 1px),linear-gradient(90deg,#777 1px,transparent 1px);background-size:65px 65px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000);mask-image:linear-gradient(90deg,transparent,#000)}
.elementor-widget.hba-bgword{position:absolute;z-index:-1;right:-25px;bottom:-65px;width:auto;white-space:nowrap;pointer-events:none;letter-spacing:-.09em;font-weight:950}
.hba-bgword p{letter-spacing:-.09em;margin:0}
.e-con.hba-art{position:relative}
.e-con.hba-artgrid{position:absolute;inset:0;width:auto;max-width:none;pointer-events:none;background-image:linear-gradient(#ffffff09 1px,transparent 1px),linear-gradient(90deg,#ffffff09 1px,transparent 1px);background-size:32px 32px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000);mask-image:linear-gradient(90deg,transparent,#000)}
.e-con.hba-ring{position:absolute;width:300px;height:300px;max-width:none;right:-70px;top:-60px;border:1px solid #ff26354d;border-radius:50%;box-shadow:0 0 0 28px #ff263508,0 0 0 60px #ff263505;pointer-events:none}
.e-con.hba-card{position:relative;overflow:hidden}
.e-con.hba-card::after{content:attr(data-letter);position:absolute;right:7px;top:10px;font-size:100px;line-height:1;font-weight:950;letter-spacing:-8px;color:#00000005;pointer-events:none}
.e-con.hba-card>*{position:relative;z-index:1}
.hba-focus{margin-top:auto}
.hba-numicon,.hba-check{display:flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;background:#ff26351a}
.hba-check{flex-basis:25px;width:25px;height:25px;background:#fff0e4}
.hba-numicon p,.hba-check p{margin:0}

/* ================= MASTERCLASS ================= */
.e-con.hba-glow-orange{position:absolute;inset:0;z-index:-2;width:auto;max-width:none;pointer-events:none;
  background:radial-gradient(ellipse at 77% 30%,#ff852b1d,transparent 36%),linear-gradient(135deg,#0c1420,#080a0e 65%)}
.e-con.hba-gridbg{inset:-5%;opacity:.2;background-image:linear-gradient(#6b7c8f 1px,transparent 1px),linear-gradient(90deg,#6b7c8f 1px,transparent 1px);background-size:54px 54px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000);mask-image:linear-gradient(90deg,transparent,#000)}
.e-con.hba-coverstage{position:relative;display:grid;place-items:center;perspective:1000px}
.e-con.hba-halo{position:absolute;width:330px;height:330px;max-width:none;border:1px solid #ff852b54;border-radius:50%;box-shadow:0 0 0 35px #ff852b08,0 0 0 75px #ff852b05;transform:rotateX(60deg);pointer-events:none}
.e-con.hba-cover{position:relative;z-index:2;width:auto;max-width:100%;transform:rotateY(-13deg) rotateX(3deg);filter:drop-shadow(20px 24px 25px #000b);transition:transform .3s}
.hba-cover-img img{display:block;height:auto;max-width:100%;border:1px solid #ffffff30}
.e-con.hba-covertag{position:absolute;bottom:25px;right:0;z-index:3;width:auto;max-width:none}

.hba-langbtn.active .elementor-button{background:var(--hba-orange)!important;color:#141414!important;border-color:var(--hba-orange)!important}
.hba-langbtn .elementor-button{border-radius:0}

.e-con.hba-bundle{cursor:pointer;transition:border-color .2s,box-shadow .2s}
.e-con.hba-bundle:hover,.e-con.hba-bundle.selected{border-color:var(--hba-red)!important;box-shadow:0 0 0 1px var(--hba-red)}
.e-con.hba-pricebox{background-image:radial-gradient(ellipse at top right,#ff852b18,transparent 55%)}
.hba-picker{font-family:var(--hba-font)}
.hba-bundleoptions{margin-top:20px;border:1px solid #354052;padding:18px;background:#0c131c}
.hba-bundleoptions label{display:block;margin:8px 0;font-size:13px;color:#ddd}
.hba-bundleoptions select{width:100%;padding:13px;background:#151e2a;color:#fff;border:1px solid #485163;font-size:14px;font-family:inherit}
.hba-bundlesummary{margin:18px 0;color:#f5f5f5;font-size:14px}
.hba-bundlecheckout{display:block;width:100%;padding:16px;text-align:center;background:var(--hba-red);color:#fff;font-weight:900;border:0;font-size:14px;cursor:pointer;font-family:inherit}
.hba-bundlecheckout:disabled{opacity:.5;cursor:not-allowed}
.hba-bundlenote{font-size:11px;color:#adb4bd;margin:12px 0 0;line-height:1.6}

.hba-policy a{color:#e92332}
@media(max-width:850px){.hba-span-all{grid-column:1/-1}}

/* fallback (non-Elementor) header/footer */
.hba-fb-header{background:#080808;border-bottom:1px solid #ffffff12;padding:18px 24px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.hba-fb-header a,.hba-fb-footer a{color:#c5c5c5;font-size:13px}
.hba-fb-header .menu{list-style:none;display:flex;gap:24px;margin:0;padding:0;flex-wrap:wrap}
.hba-fb-brand{color:#f8f8f6!important;font-weight:900;letter-spacing:1.2px;font-size:12px!important}
.hba-fb-footer{background:#080808;border-top:1px solid #292929;padding:30px 24px;color:#888;font-size:12px}
.hba-fb-main{max-width:900px;margin:0 auto;padding:60px 24px;color:#f8f8f6}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  html.hba-js body:not(.elementor-editor-active) .hba-reveal{opacity:1;transform:none;transition:none}
}
