@import url("https://fonts.googleapis.com/css2?family=Cinzel:wght@600&family=Montserrat:wght@300&display=swap");
/* ===== FAAZ INTERNATIONAL - MAIN STYLESHEET =====
   Base colours: navy + tan. Supporting colours are in :root too; change them there. */
:root{
  --n9:#08121B; --n8:#0E1C28; --n7:#142A3A; --navy:#1C2D38;
  --tan:#C09A72; --tan2:#DDBF9B; --brown:#8A7566;
  --sky:#3FA7F5; --violet:#7C5CFC; --teal:#1FA39A; --amber:#F5A524; --coral:#F2705A; --green:#35B37E;
  --mist:#F2F4F6; --ink:#0E1C28; --body:#4A5A66; --line:#DDE3E8; --dline:rgba(255,255,255,.12);
  --serif:"Newsreader",Georgia,serif; --sans:"IBM Plex Sans",system-ui,sans-serif; --mono:"IBM Plex Mono",ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{font:400 1rem/1.65 var(--sans);color:var(--body);background:#fff;-webkit-font-smoothing:antialiased}
a{color:inherit} img,svg{display:block;max-width:100%}
h1,h2,h3,h4{font-family:var(--serif);font-weight:500;color:var(--ink);letter-spacing:-.015em;line-height:1.12}
h1{font-size:clamp(2.5rem,6vw,4.4rem)} h2{font-size:clamp(1.9rem,4vw,2.9rem)} h3{font-size:1.35rem;line-height:1.25}
p+p{margin-top:1rem}
:focus-visible{outline:2px solid var(--tan);outline-offset:3px}
.wrap{width:min(1180px,100% - 2.5rem);margin-inline:auto}
.dark{background:var(--n8);color:#B7C3CC}.dark h1,.dark h2,.dark h3,.dark h4{color:#fff}
.dark .tl{color:#fff}

/* header (light, like a modern site builder) - FIXED MOBILE OVERFLOW */
.hd{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.hd .wrap{display:flex;align-items:center;height:72px;justify-content:space-between}
.brand{display:flex;align-items:center;gap:0;color:var(--ink);text-decoration:none}
.brand b{font:600 1.2rem/1 'Cinzel','Times New Roman',serif;letter-spacing:.2em}
.brand small{display:block;font:300 .62rem/1 'Montserrat','IBM Plex Sans',sans-serif;letter-spacing:.38em;color:var(--ink);margin-top:6px}
.nav{display:flex;align-items:center;gap:1.5rem;margin-left:auto;margin-right:1rem}
.nav a{color:var(--body);text-decoration:none;font-size:.9rem;padding:.3rem 0;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}
.nav a:hover,.nav a.on{color:var(--ink);border-color:var(--tan)}
.hd-cta{padding:.5rem 1rem;font-size:.85rem;white-space:nowrap;background:var(--navy);color:#fff;box-shadow:0 10px 22px -10px rgba(14,28,40,.7)}
.hd-cta:hover{background:var(--n7)}
#menu{display:none;background:none;border:1px solid var(--line);color:var(--ink);padding:.4rem .7rem;font:inherit;border-radius:6px}

@media(max-width:960px){
  #menu{display:block}
  .hd-cta{display:none}
  .nav{display:none;position:absolute;top:72px;left:0;right:0;margin:0;background:#fff;flex-direction:column;align-items:flex-start;padding:1.5rem 1.25rem 2rem;gap:1.1rem;border-bottom:1px solid var(--line);box-shadow:0 20px 30px -20px rgba(14,28,40,.3)}
  .nav.open{display:flex}
}

/* buttons */
.btn{display:inline-flex;align-items:center;padding:.9rem 1.6rem;font:500 .95rem var(--sans);border:1px solid transparent;border-radius:8px;text-decoration:none;cursor:pointer;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px)}
.btn-t{background:var(--tan);color:var(--n9);box-shadow:0 10px 24px -10px rgba(192,154,114,.9)}.btn-t:hover{background:var(--tan2)}
.btn-o{border-color:rgba(255,255,255,.35);color:#fff}.btn-o:hover{border-color:var(--tan)}
.btn-n{background:var(--n8);color:#fff}.btn-n:hover{background:var(--n7)}
.btns{display:flex;gap:.8rem;flex-wrap:wrap}

/* hero */
.hero{position:relative;overflow:hidden;padding:5.5rem 0 5rem}
.hero-l{background:
  radial-gradient(620px 420px at 88% 8%,rgba(124,92,252,.18),transparent 70%),
  radial-gradient(560px 400px at 98% 85%,rgba(31,163,154,.18),transparent 70%),
  radial-gradient(520px 360px at 0% 100%,rgba(242,112,90,.13),transparent 70%),
  radial-gradient(420px 300px at 45% 0%,rgba(245,165,36,.12),transparent 70%),
  linear-gradient(180deg,#FFF9F2,#fff)}
.hero-in{position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:2.5rem;align-items:center}
@media(max-width:900px){.hero-in{grid-template-columns:1fr}.hero{padding:3.5rem 0}}
.eyebrow{display:inline-block;font:500 .78rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--violet);background:rgba(124,92,252,.1);padding:.4rem .8rem;border-radius:999px;margin-bottom:1.4rem}
.hero h1{font-size:clamp(2.3rem,4.6vw,3.7rem);max-width:16ch}
.gt{background:linear-gradient(90deg,var(--coral),var(--violet) 60%,var(--sky));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .lead{font-size:1.15rem;max-width:56ch;margin:1.5rem 0 2.2rem}
.tl{color:var(--ink);text-decoration:none;border-bottom:2px solid var(--tan);padding:.2rem 0;margin-left:.8rem}.tl:hover{color:var(--brown)}
@keyframes up{from{opacity:0;transform:translateY(18px)}}
.hero .eyebrow,.hero h1{animation:up .9s both}.hero .lead{animation:up .9s .15s both}.hero .btns{animation:up .9s .3s both}

/* hero floating cards */
.fl{position:relative;min-height:450px}@media(max-width:900px){.fl{min-height:400px}}
.fc{overflow:hidden;position:absolute;background:#fff;border-radius:16px;padding:1rem 1.15rem;font-size:.85rem;box-shadow:0 28px 50px -22px rgba(14,28,40,.4),0 0 0 1px rgba(14,28,40,.06);animation:bob 7s ease-in-out infinite alternate}
.fc small{display:block;color:#7A8892;font-size:.75rem;margin-bottom:.2rem}.fc b{font:600 1.6rem var(--mono);color:var(--ink)}
.smp{font-style:normal;background:var(--mist);color:#7A8892;border-radius:4px;padding:0 .35rem;margin-left:.3rem}
.up{color:var(--green);font:500 .85rem var(--mono)}
.fc1{top:28px;left:2%;width:64%;--bar:var(--violet)}
.mb{display:flex;align-items:flex-end;gap:7px;height:80px;margin-top:.9rem}.mb i{flex:1;border-radius:5px 5px 0 0;background:var(--c)}
.fc2{top:195px;right:0;width:62%;--bar:var(--teal);animation-delay:-2s}
.bb{padding:.5rem .8rem;border-radius:12px;margin-top:.5rem;max-width:88%;line-height:1.4}.bb.u{background:#EEF1F4;color:var(--ink)}.bb.b{background:var(--teal);color:#fff;margin-left:auto}
.fc3{top:0;right:5%;display:flex;align-items:center;gap:.5rem;font-weight:500;color:var(--ink);border-radius:999px;animation-delay:-4s}
.dot{width:10px;height:10px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(53,179,126,.25)}
.fc4{bottom:6px;left:6%;--bar:var(--coral);animation-delay:-3s}.fc4 b{font-size:1.2rem}
@keyframes bob{to{transform:translateY(-12px)}}

/* sections */
.sec{padding:5.5rem 0}.light{background:var(--mist)}
.tint{background:linear-gradient(180deg,#F6F3FF,#F1FAF8)}
.sh{max-width:720px;margin-bottom:3rem}.sh p{margin-top:1rem;font-size:1.08rem}
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}@media(max-width:700px){.cards{grid-template-columns:1fr}}
.card{background:#fff;padding:2rem;text-decoration:none;display:flex;flex-direction:column;gap:.6rem;border:1px solid var(--line);border-radius:12px;position:relative;overflow:hidden;--bar:var(--sky);transition:transform .25s,box-shadow .25s}
.card:nth-child(2){--bar:var(--violet)}.card:nth-child(3){--bar:var(--amber)}.card:nth-child(4){--bar:var(--coral)}
.card:hover{transform:translateY(-4px);box-shadow:0 24px 40px -24px rgba(14,28,40,.4)}
.price{font:500 .92rem var(--mono);color:var(--brown);margin-top:auto;padding-top:1rem}
.two{display:grid;grid-template-columns:1fr 1.2fr;gap:4rem}@media(max-width:900px){.two{grid-template-columns:1fr;gap:2rem}}
.step{display:grid;grid-template-columns:4rem 1fr;gap:1rem;padding:1.6rem 0;border-top:1px solid var(--dline)}
.step i{font:normal 500 .95rem var(--mono);color:var(--tan)}.step h3{margin-bottom:.3rem}
.step:nth-child(1) i{color:var(--sky)}.step:nth-child(2) i{color:var(--amber)}.step:nth-child(3) i{color:var(--coral)}.step:nth-child(4) i{color:var(--green)}
.pr3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2.5rem}.pr3>div{border-top:3px solid var(--tan);padding-top:1.2rem}.pr3>div:nth-child(2){border-color:var(--teal)}.pr3>div:nth-child(3){border-color:var(--violet)}.pr3 h3{margin-bottom:.5rem}
.cta{padding:5rem 0;background:linear-gradient(120deg,var(--n8) 30%,#1D4B63 70%,#4B3A8C)}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap}.cta p{max-width:48ch;margin-top:.8rem}
.cta .btn-t{background:var(--navy);color:#fff;border:1px solid rgba(255,255,255,.45);box-shadow:0 12px 26px -10px rgba(0,0,0,.55)}
.cta .btn-t:hover{background:var(--n7);color:#fff;border-color:rgba(255,255,255,.8)}
.ph{padding:5rem 0 4rem}.ph p{max-width:60ch;margin-top:1.2rem;font-size:1.12rem}

/* before / after */
.ba{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media(max-width:820px){.ba{grid-template-columns:1fr}}
.ba>div{padding:2.4rem 2.2rem 2rem;border-radius:14px;position:relative;overflow:hidden}.ba h3{margin-bottom:.6rem}.ba ul{list-style:none;padding:0}.ba li{padding:.7rem 0;border-top:1px solid var(--line)}
.before{background:#fff;border:1px solid var(--line);--bar:linear-gradient(90deg,var(--coral),var(--amber))}
.after{background:linear-gradient(145deg,var(--navy),#17586B);color:#E3EEF3;--bar:linear-gradient(90deg,var(--teal),var(--sky));box-shadow:0 30px 50px -30px rgba(14,28,40,.6)}.after h3{color:#fff}.after li{border-color:rgba(255,255,255,.18);font-weight:500}

/* facts strip */
.facts{background:var(--n9)}.facts .wrap{display:grid;grid-template-columns:repeat(4,1fr)}@media(max-width:760px){.facts .wrap{grid-template-columns:1fr 1fr}}
.facts .wrap>div{padding:2rem 1.4rem;border-left:1px solid var(--dline)}.facts .wrap>div:first-child{border-left:0}
.facts b{display:block;font:500 clamp(1.9rem,4vw,2.9rem)/1.1 var(--serif);color:var(--tan2)}.facts span{font-size:.9rem;color:#9FB0BC}
.facts .wrap>div:nth-child(2) b{color:#5ED0C8}.facts .wrap>div:nth-child(3) b{color:#FF9B8A}.facts .wrap>div:nth-child(4) b{color:#B7A3FF}

/* services page */
.sv{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;padding:3rem 0;border-top:1px solid var(--line)}
@media(max-width:820px){.sv{grid-template-columns:1fr;gap:1rem}}
.sv h2{font-size:1.9rem}.meta{margin-top:1.2rem;font:.86rem var(--mono);color:var(--brown);display:grid;gap:.3rem}
.ck{list-style:none;padding:0;margin:1rem 0 1.5rem}.ck li{padding-left:1.6rem;position:relative;margin:.4rem 0}.ck li::before{content:"";position:absolute;left:0;top:.7em;width:.8rem;height:2px;background:var(--ac,var(--tan))}
.tw{overflow-x:auto;border:1px solid var(--line);border-radius:12px}table{border-collapse:collapse;width:100%;min-width:600px;background:#fff}
th,td{text-align:left;padding:1rem 1.2rem;border-bottom:1px solid var(--line);font-size:.95rem}th{font:500 .85rem var(--sans);color:var(--ink);background:var(--mist)}td.m{font-family:var(--mono);font-size:.88rem}tr:last-child td{border:0}

/* demo */
.box{border:1px solid var(--line);background:#fff;padding:1.8rem;border-radius:14px;box-shadow:0 30px 50px -36px rgba(14,28,40,.35)}
.tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}
.tabs button,.chip{background:#fff;border:1px solid var(--line);color:var(--ink);padding:.55rem 1.1rem;font:500 .92rem var(--sans);cursor:pointer;border-radius:999px;transition:background .2s,transform .2s}
.chip:hover{transform:translateY(-1px);border-color:var(--tan)}
.tabs button[aria-selected=true],.chip.on{background:var(--n8);color:#fff;border-color:var(--n8)}
.kp{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1rem;margin:1.4rem 0}
.kp div{background:#fff;padding:1rem 1.2rem 1rem 1.5rem;border:1px solid var(--line);border-radius:10px;position:relative;overflow:hidden;--bar:var(--sky)}.kp div::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--bar)}
.kp div:nth-child(2){--bar:var(--violet)}.kp div:nth-child(3){--bar:var(--teal)}
.kp span{font-size:.82rem;color:var(--body)}.kp b{display:block;font:500 1.6rem var(--mono);color:var(--ink)}.kp em{font:normal .8rem var(--mono);color:#1F8A5B}
.chart{width:100%;height:auto;max-height:260px}.chart rect{fill:var(--sky);transition:all .5s}.chart rect.hi{fill:var(--violet)}.chart text{fill:#6B7A85;font:11px var(--sans)}
.chat{background:#F6F8FA;border:1px solid var(--line);border-radius:12px;padding:1rem;height:320px;overflow:auto;display:flex;flex-direction:column;gap:.6rem}
.m{max-width:82%;padding:.7rem 1rem;font-size:.95rem;border:1px solid var(--line);background:#fff;border-radius:14px 14px 14px 4px}
.m.u{align-self:flex-end;background:var(--teal);color:#fff;border-color:var(--teal);border-radius:14px 14px 4px 14px}
.qs{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem}.note{font-size:.85rem;color:#6B7A85;margin-top:1rem}
.ty{display:flex;gap:5px;width:58px;padding:.9rem 1rem}.ty span{width:7px;height:7px;border-radius:50%;background:#9AA8B2;animation:bl 1s infinite}.ty span:nth-child(2){animation-delay:.15s}.ty span:nth-child(3){animation-delay:.3s}@keyframes bl{50%{opacity:.25}}
.chart rect{transform-box:fill-box;transform-origin:bottom;animation:gr .7s both cubic-bezier(.2,.8,.2,1)}@keyframes gr{from{transform:scaleY(0)}}

/* faq + form */
.fa{border-top:1px solid var(--line)}.fa:last-child{border-bottom:1px solid var(--line)}
.fa button{all:unset;box-sizing:border-box;width:100%;display:flex;justify-content:space-between;gap:1rem;padding:1.3rem 0;cursor:pointer;font:500 1.2rem var(--serif);color:var(--ink)}
.fa button:focus-visible{outline:2px solid var(--tan)}.fa i{font-style:normal;transition:transform .3s}.fa.o i{transform:rotate(45deg)}
.fa .p{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s}.fa.o .p{grid-template-rows:1fr}.fa .p>div{overflow:hidden}.fa .p p{padding-bottom:1.3rem;max-width:68ch}
form{display:grid;gap:1.1rem}label{display:grid;gap:.4rem;font-weight:500;font-size:.9rem;color:var(--ink)}
input,select,textarea{font:inherit;padding:.8rem .9rem;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:2px solid var(--tan);border-color:var(--tan)}
.cl{display:block;padding:1.3rem 1.5rem;border:1px solid var(--line);border-radius:12px;text-decoration:none;margin-bottom:1rem;transition:border-color .2s;border-left:4px solid var(--tan)}.cl:hover{border-color:var(--tan)}.cl b{font:500 1.2rem var(--serif);color:var(--ink);display:block}

/* footer */
.ft{background:var(--n9);color:#9FB0BC;padding:4rem 0 2rem;font-size:.92rem}
.ft .brand{color:#fff}
.ft .g{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2.5rem}@media(max-width:760px){.ft .g{grid-template-columns:1fr}}
.ft h4{font:600 .9rem var(--sans);color:#fff;letter-spacing:0;margin-bottom:.9rem}.ft a{display:block;text-decoration:none;margin:.4rem 0}.ft a:hover{color:#fff}
.ft .f{border-top:1px solid var(--dline);margin-top:2.5rem;padding-top:1.3rem;font-size:.82rem}

/* page-header art + reveal + count */
.trc{stroke-dasharray:1 2;stroke-dashoffset:1;animation:dr 1.8s ease-out forwards}
.t1{animation-delay:.9s}.t2{animation-delay:1.2s}.t3{animation-delay:1.5s}.t4{animation-delay:1.8s}@keyframes dr{to{stroke-dashoffset:0}}
.nd{opacity:0;animation:pop .4s forwards}@keyframes pop{to{opacity:1}}
.ph{position:relative;overflow:hidden}.ph .wrap{position:relative;z-index:1}
.pha{position:absolute;right:0;top:50%;width:520px;transform:translateY(-50%);opacity:.75;pointer-events:none}@media(max-width:900px){.pha{display:none}}
.js .rv{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}.js .rv.in{opacity:1;transform:none}
.steps{position:relative;padding-left:2.4rem}.steps::before{content:"";position:absolute;left:.55rem;top:0;bottom:0;border-left:2px dashed rgba(192,154,114,.35)}
.thread{position:absolute;left:.55rem;top:0;border-left:2px solid var(--tan);height:0;transition:height .2s linear}
.step{position:relative}.step::before{content:"";position:absolute;left:-2.3rem;top:1.95rem;width:14px;height:14px;border-radius:50%;background:var(--n8);border:2px solid rgba(192,154,114,.5);transition:all .4s}
.step.on::before{background:var(--tan);border-color:var(--tan);box-shadow:0 0 0 6px rgba(192,154,114,.18)}

/* ===== SERVICES BOOK ===== */
.fc1::before,.fc2::before,.fc4::before,.card::before,.before::before,.after::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--bar,var(--tan))}

/* book: cover first, then the pages */
.bks{padding:2.4rem 0 2.8rem}
.bks .sh{margin:0 auto 1.1rem;text-align:center}.bks .sh h2{font-size:clamp(1.6rem,3vw,2.2rem)}.bks .sh p{margin-top:.3rem;font-size:1rem}
.bk{max-width:900px;margin:0 auto;outline-offset:8px}
.js .bk{opacity:0;transform:translateY(36px) scale(.97);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}.js .bk.in{opacity:1;transform:none}
.bkw{filter:drop-shadow(0 34px 26px rgba(14,28,40,.32))}
.bkin{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:clamp(340px,52vh,390px);perspective:2400px;cursor:pointer;transition:transform .95s cubic-bezier(.55,.05,.25,1)}
.bkin.closed{transform:translateX(-25%)}
.bkin::after{content:"";position:absolute;left:50%;top:0;bottom:0;width:36px;margin-left:-18px;background:linear-gradient(90deg,transparent,rgba(14,28,40,.18),transparent);z-index:6;pointer-events:none}.bkin.closed::after{display:none}
.sl,.sr{position:relative}.sl{cursor:w-resize}.sr{cursor:e-resize}.bkin.closed .sr,.bkin.closed .sl{cursor:pointer}
.pg{position:relative;height:100%;padding:1.5rem 1.8rem;display:flex;flex-direction:column;overflow:hidden}
.pgl{color:#fff;background:linear-gradient(150deg,var(--ac),var(--ac2));border-radius:14px 0 0 14px;box-shadow:-4px 0 0 -1px rgba(14,28,40,.28)}
.pgr{background:#FCFAF6;border-radius:0 14px 14px 0;box-shadow:4px 0 0 -1px #efe9dc,8px 0 0 -2px #e2dac9}
.pgl .of{font:.7rem var(--mono);letter-spacing:.14em;text-transform:uppercase;opacity:.85}
.pgl .no{font:500 3.2rem/1 var(--serif);margin-top:.4rem}
.pgl .ic{width:92px;height:92px;margin:.9rem 0;fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.pgl h3{color:#fff;font-size:1.65rem;margin:0}
.pgl .tg{margin-top:auto;position:relative;align-self:flex-start;background:rgba(255,255,255,.2);padding:.4rem .85rem;border-radius:999px;font:.8rem var(--mono)}
.pgl .deco{position:absolute;right:-70px;bottom:-70px;width:220px;height:220px;border-radius:50%;box-shadow:0 0 0 26px rgba(255,255,255,.1),0 0 0 54px rgba(255,255,255,.07),inset 0 0 0 60px rgba(255,255,255,.12)}
.pgr .kick{font:.7rem var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ac2)}
.pgr .big{font:500 1.45rem/1.3 var(--serif);color:var(--ink);margin:.7rem 0 1rem;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.pgr .fit{font-size:.92rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0}.pgr .fit b{color:var(--ink)}
.ft2{display:flex;justify-content:space-between;align-items:center;gap:.8rem;flex-wrap:wrap;margin-top:auto;padding-right:2.2rem}
.more{color:var(--ac2);font-weight:500;font-size:.92rem;text-decoration:none;border-bottom:1px solid currentColor}
.pgr .btn{padding:.6rem 1.1rem;font-size:.88rem}.pgr .btn-n{background:var(--ac2)}.pgr .btn-n:hover{filter:brightness(1.1)}
/* content settles in after each page turn */
@keyframes pgIn{from{opacity:0;transform:translateY(12px)}}
@keyframes ic{to{stroke-dashoffset:0}}
.pg.anim>*{animation:pgIn .55s .5s both}.pg.anim>*:nth-child(2){animation-delay:.58s}.pg.anim>*:nth-child(3){animation-delay:.66s}.pg.anim>*:nth-child(4){animation-delay:.74s}.pg.anim>*:nth-child(5){animation-delay:.82s}.pg.anim>.deco{animation:none}
.pg.anim .ic *{stroke-dasharray:200;stroke-dashoffset:200;animation:ic 1.1s .6s ease-out forwards}
/* the cover */
.cv{position:absolute;top:0;bottom:0;right:0;width:50%;z-index:9;transform-origin:left center;transform-style:preserve-3d;transition:transform .95s cubic-bezier(.55,.05,.25,1)}
.bkin.closed .cv:hover{transform:rotateY(-13deg)}.cv.open{transform:rotateY(-180deg)}.cv.gone{visibility:hidden;pointer-events:none}
.cvF,.cvB{position:absolute;inset:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.cvB{transform:rotateY(180deg)}
.cvF{border-radius:4px 14px 14px 4px;overflow:hidden;background:linear-gradient(150deg,#1D4B63,var(--navy) 55%,var(--n8));box-shadow:inset 10px 0 14px -8px rgba(0,0,0,.55)}
.cvF::before{content:"";position:absolute;inset:14px 14px 14px 22px;border:1.5px solid rgba(221,191,155,.6);border-radius:4px 8px 8px 4px;pointer-events:none}
.cvF::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.2) 50%,transparent 62%);transform:translateX(-130%);pointer-events:none}
.bk.in .cvF::after{animation:shine 1.8s 1.1s ease-out 1 forwards}.bkin.closed .cv:hover .cvF::after{animation:shine2 1.2s ease-out 1 forwards}
@keyframes shine{to{transform:translateX(130%)}}@keyframes shine2{to{transform:translateX(130%)}}
.cvin{position:relative;height:100%;padding:2rem 2rem 2rem 2.4rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.8rem}
.cvk{font:500 .68rem var(--sans);letter-spacing:.34em;text-transform:uppercase;color:var(--tan2)}
.cvo{width:150px;height:28px;fill:none;stroke:var(--tan);stroke-width:2}.cvo path{stroke-dasharray:1;stroke-dashoffset:1}.bk.in .cvo path{animation:dr 1.6s .7s ease-out forwards}
.cvF h3{color:#fff;font-size:2.5rem}.cvF p{color:#B7C3CC;font-size:.95rem;max-width:24ch;margin:0}
.cvd{display:flex;gap:7px}.cvd i{width:9px;height:9px;border-radius:50%}
.cvc{margin-top:.4rem;font:.75rem var(--mono);letter-spacing:.1em;color:var(--tan2);border:1px solid rgba(221,191,155,.5);padding:.4rem .9rem;border-radius:999px;animation:soft 2.6s ease-in-out infinite}
@keyframes soft{50%{opacity:.5}}
.bk.in .cvin>*{animation:pgIn .7s both}.bk.in .cvin>*:nth-child(1){animation-delay:.25s}.bk.in .cvin>*:nth-child(2){animation-delay:.35s}.bk.in .cvin>*:nth-child(3){animation-delay:.45s}.bk.in .cvin>*:nth-child(4){animation-delay:.6s}.bk.in .cvin>*:nth-child(5){animation-delay:.7s}.bk.in .cvin>*:nth-child(6){animation-delay:.85s}
.bk.in .cvin>.cvc{animation:pgIn .7s .85s both,soft 2.6s 1.6s ease-in-out infinite}
.rib{position:absolute;top:0;right:34px;width:22px;height:84px;background:linear-gradient(var(--coral),#D95843);clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%)}
/* page-corner graphics */
.sr::after,.sl::after{content:"";position:absolute;bottom:0;width:46px;height:46px;z-index:7;pointer-events:none;transition:width .25s,height .25s;filter:drop-shadow(-2px -2px 3px rgba(14,28,40,.3))}
.sr::after{right:0;background:linear-gradient(135deg,#d9cfbd 0%,#fbf8f1 49%,#F2F8F9 50%)}
.sl::after{left:0;background:linear-gradient(225deg,rgba(255,255,255,.55) 0%,rgba(255,255,255,.3) 49%,#F2F8F9 50%)}
.bkin:hover .sr::after,.bkin:hover .sl::after{width:64px;height:64px}
.bkin.first .sl::after,.bkin.last .sr::after,.bkin.closed .sl::after,.bkin.closed .sr::after{display:none}
.leaf{position:absolute;top:0;bottom:0;width:50%;z-index:8;transform-style:preserve-3d;transition:transform .95s cubic-bezier(.55,.05,.25,1)}
.lf-n{right:0;transform-origin:left center}.lf-p{left:0;transform-origin:right center}
.lfF,.lfB{position:absolute;inset:0;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-shadow:0 0 40px rgba(14,28,40,.25)}
.lfB{transform:rotateY(180deg)}
.bkc{display:flex;align-items:center;justify-content:center;gap:.8rem;margin-top:1rem;flex-wrap:wrap}
.nv{all:unset;box-sizing:border-box;cursor:pointer;padding:.5rem 1.1rem;border-radius:999px;background:var(--n8);color:#fff;font:500 .88rem var(--sans);transition:transform .2s,background .2s}
.nv:hover{transform:translateY(-2px);background:var(--n7)}.nv:disabled{opacity:.3;cursor:default;transform:none}.nv:focus-visible{outline:2px solid var(--tan);outline-offset:3px}
.dts{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:center}
.dt{all:unset;box-sizing:border-box;cursor:pointer;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font:500 .7rem var(--mono);color:var(--ink);background:#fff;border:2px solid var(--ac);transition:all .25s}
.dt:hover{transform:translateY(-2px)}.dt.on{background:var(--ac);color:#fff;transform:scale(1.15)}.dt:focus-visible{outline:2px solid var(--tan);outline-offset:3px}
.bk.closed .dts,.bk.closed #pv{visibility:hidden}
.hint{text-align:center;font:.74rem var(--mono);color:#7A8892;margin-top:.6rem}
@media(max-width:860px){
 .bkin{grid-template-columns:1fr;min-height:0;perspective:none;cursor:default}.bkin.closed{transform:none}.bkin.closed .sl,.bkin.closed .sr{display:none}
 .bkin::after,.sr::after,.sl::after{display:none}.sl,.sr{cursor:default}
 .cv{position:relative;width:100%;height:330px;transform:none!important}.cv.gone{display:none}.cvB{display:none}
 .pgl{border-radius:14px 14px 0 0;box-shadow:none}.pgr{border-radius:0 0 14px 14px;box-shadow:none}.pgl .ic{width:64px;height:64px}.pgl .tg{margin-top:1rem}.ft2{margin-top:1rem;padding-right:0}.hint{display:none}.bk.closed .dts{display:none}}

/* ===== SAME THEME ON EVERY PAGE ===== */
.ph,.ph.dark{background:radial-gradient(520px 360px at 90% 0%,rgba(124,92,252,.16),transparent 70%),radial-gradient(480px 340px at 100% 100%,rgba(31,163,154,.16),transparent 70%),radial-gradient(420px 300px at 0% 100%,rgba(242,112,90,.12),transparent 70%),linear-gradient(180deg,#FFF9F2,#fff);color:var(--body)}
.ph h1,.ph.dark h1{color:var(--ink)}.ph p{color:var(--body)}
.ph h1::after{content:"";display:block;width:72px;height:5px;border-radius:9px;margin-top:1.1rem;background:linear-gradient(90deg,var(--coral),var(--violet),var(--sky))}
.sv{--ac:var(--sky)}.sv:nth-child(7n+2){--ac:var(--violet)}.sv:nth-child(7n+3){--ac:var(--amber)}.sv:nth-child(7n+4){--ac:var(--coral)}.sv:nth-child(7n+5){--ac:var(--teal)}.sv:nth-child(7n+6){--ac:var(--green)}.sv:nth-child(7n){--ac:var(--tan)}
.sv h2{padding-left:1rem;border-left:5px solid var(--ac)}
th{background:linear-gradient(90deg,#F6F3FF,#F1FAF8)}
.ph .from{display:inline-block;margin-top:1.4rem;font:500 .95rem var(--mono);color:var(--ink);background:linear-gradient(90deg,rgba(245,165,36,.2),rgba(242,112,90,.15));padding:.5rem 1.1rem;border-radius:999px}
a.tq{color:var(--violet);font-weight:500;text-decoration:none;border-bottom:1px solid currentColor}
.cl{border-left:4px solid var(--tan)}.cl:nth-of-type(2){border-left-color:var(--teal)}.cl:nth-of-type(3){border-left-color:var(--violet)}.cl:nth-of-type(4){border-left-color:var(--coral)}

@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.trc{stroke-dashoffset:0}.nd{opacity:1}.js .rv{opacity:1;transform:none}.js .bk{opacity:1;transform:none}.cvo path,.pg.anim .ic *{stroke-dashoffset:0}}
/* ===== additions: floating WhatsApp, footer legal links, offer, legal pages, 404 ===== */
.wa-fab{position:fixed;right:1.1rem;bottom:1.1rem;z-index:60;width:56px;height:56px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 10px 24px -8px rgba(0,0,0,.45);transition:transform .2s}
.wa-fab:hover{transform:scale(1.07)}.wa-fab svg{width:30px;height:30px}
.fl2{margin-left:1rem}.fl2 a{margin-left:1rem;text-decoration:underline}
.offer{border:1px dashed var(--tan);border-radius:14px;padding:1.6rem 1.8rem;background:#FBF7F2;display:flex;gap:1.5rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.offer h3{margin-bottom:.4rem}.offer p{max-width:60ch}
.btn-n{white-space:nowrap}
.legal{max-width:760px}.legal h2{font-size:1.5rem;margin:2.2rem 0 .6rem}.legal ul{padding-left:1.2rem;margin-top:.6rem}.legal li{margin-top:.3rem}
.nf{min-height:60vh;display:grid;place-items:center;text-align:center;padding:5rem 0}.nf h1{margin-bottom:1rem}.nf .btns{justify-content:center;margin-top:1.6rem}

/* contact page layout: form on the left, contact cards on the right, with a gap */
.cgrid{display:grid;grid-template-columns:1.3fr 1fr;gap:2rem;align-items:start}
@media(max-width:860px){.cgrid{grid-template-columns:1fr;gap:1.5rem}}
.cgrid .box{margin-bottom:0}

/* normal arrow pointer over page text (links and form fields keep their own cursors) */
body{cursor:default;caret-color:transparent}
input,textarea,select{caret-color:auto}

/* review fixes: stronger header CTA, readable book cover, dot indicators, story timeline */
.cvk{color:#F3DEC4;font-size:.8rem;font-weight:600}
.cvF p{color:#E3EAF0}
.cvc{color:#F3DEC4;border-color:rgba(243,222,196,.7)}
.dts{gap:.7rem;align-items:center}
.dt{width:16px;height:16px;font-size:0;border-width:2px}
.dt.on{transform:scale(1.35)}
.tl2{list-style:none;margin:2rem 0 0;padding:0 0 0 1.4rem;border-left:2px solid var(--tan)}
.tl2 li{position:relative;padding-bottom:1.6rem}
.tl2 li:last-child{padding-bottom:0}
.tl2 li::before{content:"";position:absolute;left:calc(-1.4rem - 7px);top:.35rem;width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--tan)}
.tl2 li:last-child::before{background:var(--tan)}
.tl2 b{display:block;font:500 .8rem var(--mono);letter-spacing:.08em;color:#8A6A44;text-transform:uppercase}
.tl2 span{display:block;margin-top:.25rem;color:var(--ink)}

/* demo: Faaz business dashboard */
#p2.box{padding:0;background:none;border:0;box-shadow:none}
.fb{background:#0A1722;color:#E6EDF2;border-radius:16px;padding:1.5rem;border:1px solid #1C2D38}
.fbh{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding-bottom:1.1rem;border-bottom:1px solid #1C2D38}
.fbh h3{color:#fff;font-size:1.5rem}.fbh p{color:#9FB0BC;font-size:.9rem;margin:.2rem 0 0}
.fbh label{font:500 .72rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#9FB0BC;display:flex;align-items:center;gap:.6rem}
.fbh select{background:#101F2C;color:#E6EDF2;border:1px solid #2A3E4D;border-radius:8px;padding:.45rem .7rem;font:500 .85rem var(--sans)}
.fbk{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.2rem}
.fbk>div,.fbp{background:#101F2C;border:1px solid #1C2D38;border-radius:12px;padding:1.1rem}
.fbk span{display:block;font:600 .68rem var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#9FB0BC}
.fbk b{display:block;font-size:1.5rem;color:#fff;margin:.45rem 0;font-weight:700}
.fbk b.g,.fb dd.g{color:#4ADE9A}.fbk b.s{font-size:1.1rem;color:#fff}
.fbk em{font-style:normal;font-size:.78rem;color:#9FB0BC}
.fbm{display:grid;grid-template-columns:2fr 1fr;gap:1rem;margin-top:1rem}
.fbp h4{font:600 .78rem var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#E6EDF2;margin:0 0 .9rem}
.fb table{width:100%;border-collapse:collapse;font-size:.88rem;min-width:420px}
.fb th{text-align:left;font:600 .68rem var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#9FB0BC;padding:.6rem .7rem;background:#0A1722}
.fb td{padding:.7rem;border-top:1px solid #1C2D38;color:#C9D5DE}.fb td:first-child{color:#fff;font-weight:500}
.fb .ok{color:#4ADE9A;font-size:.78rem}
.fb dl{margin:0;display:grid;grid-template-columns:1fr auto;font-size:.88rem}
.fb dt,.fb dd{margin:0;padding:.7rem 0;border-bottom:1px solid #1C2D38;color:#9FB0BC}.fb dd{color:#fff;font-weight:600;text-align:right}
.fb dt:nth-last-of-type(1),.fb dd:last-of-type{border-bottom:0}
.fbn{color:#9FB0BC;font-size:.9rem}
@media(max-width:900px){.fbk{grid-template-columns:1fr 1fr}.fbm{grid-template-columns:1fr}}
@media(max-width:520px){.fbk{grid-template-columns:1fr}}

/* demo table fix: the site's default table styles were painting white rows */
.fb .tw{background:transparent;border:0;box-shadow:none;border-radius:0}
.fb table,.fb thead,.fb tbody,.fb tr,.fb td{background:transparent}
.fb th{background:#0A1722}
.fbh h3 small{font:600 .65rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#DDBF9B;border:1px solid rgba(221,191,155,.5);border-radius:999px;padding:.15rem .55rem;margin-left:.5rem;vertical-align:middle}

.bdg{display:inline-block;font:600 .68rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#8A6A44;border:1px solid var(--tan);border-radius:999px;padding:.25rem .7rem;margin-bottom:1rem}
.trust{list-style:none;display:flex;gap:.6rem 1.8rem;flex-wrap:wrap;justify-content:center;margin:1.6rem 0 0;padding:0;color:var(--ink);font-size:.9rem}
.trust li::before{content:"\2713";color:#1B7F55;font-weight:700;margin-right:.45rem}

.brand .lg{width:38px;height:38px;margin-right:.7rem;flex:none}

/* brand fonts: FAAZ in Cinzel SemiBold, INTERNATIONAL in Montserrat Light (matches the logo) */
.brand b{font:600 1.2rem/1 'Cinzel','Times New Roman',serif;letter-spacing:.2em}
.brand small{font:300 .62rem/1 'Montserrat','IBM Plex Sans',sans-serif;letter-spacing:.38em;color:var(--ink);margin-top:6px}
.ft .brand small{color:#fff}

/* mobile polish: book widget and demo tabs */
.thanks{padding:1rem 0}.thanks h3{margin-bottom:.6rem}.thanks p{margin-bottom:1.2rem}
@media(max-width:860px){
 .dts{flex-wrap:wrap;justify-content:center;gap:.6rem}
 .dt{width:28px;height:28px}.dt.on{transform:none;box-shadow:0 0 0 3px rgba(14,28,40,.18)}
 .bkc{flex-wrap:wrap;gap:.8rem;justify-content:center}
 .nv{min-height:44px;padding-left:1.2rem;padding-right:1.2rem}
 .pg h3,.pg .big,.pg .fit{overflow-wrap:anywhere}
}
@media(max-width:600px){
 .tabs{flex-wrap:wrap;gap:.5rem}
 .tabs>button{flex:1 1 calc(50% - .5rem);min-height:44px;white-space:normal;line-height:1.25}
 .chip{min-height:44px}
 .cv{height:300px}
 .fb{padding:1rem}.fbh h3{font-size:1.25rem}
}