:root{--navy:#061a3a;--navy2:#0a2149;--purple:#7c3aed;--violet:#a78bfa;--gold:#f4c36c;--cream:#fffaf3;--ink:#14203b;--muted:#667085;--white:#fff;--sage:#b9c1a3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--cream);line-height:1.55}.container{width:min(1180px,calc(100% - 40px));margin:auto}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.site-header{position:absolute;z-index:10;width:100%;top:0}.nav-wrap{height:112px;display:flex;align-items:center;gap:28px}.brand img{width:180px;background:#fff;border-radius:50%;padding:9px;box-shadow:0 6px 30px #0001}.main-nav{display:flex;gap:34px;margin-left:auto}.main-nav a{color:#fff;text-transform:uppercase;font-size:13px;font-weight:700;letter-spacing:.04em}.main-nav a.active,.main-nav a:hover{color:var(--gold)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 22px;border-radius:999px;font-weight:700;text-transform:uppercase;font-size:12px;letter-spacing:.03em;transition:.25s}.btn-gold{background:linear-gradient(135deg,#ffd88a,#ecb756);color:#121b2e;box-shadow:0 9px 24px #0002}.btn-gold:hover{transform:translateY(-2px);box-shadow:0 14px 30px #0003}.btn-outline{border:1px solid #c8b6ff;color:#fff;background:#ffffff08}.btn-outline:hover{background:#ffffff12}.nav-cta{padding:12px 18px}.menu-toggle{display:none;background:none;border:0}.hero{position:relative;overflow:hidden;min-height:610px;background:radial-gradient(circle at 70% 22%,#28235f 0,#0a2149 34%,#041226 76%);color:#fff;padding:150px 0 100px}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 35%,rgba(124,58,237,.22),transparent 28%),linear-gradient(110deg,rgba(4,18,38,.99) 0 42%,rgba(4,18,38,.35) 62%,rgba(4,18,38,.78) 100%)}.stars{position:absolute;inset:0;opacity:.6;background-image:radial-gradient(circle,#fff 0 1px,transparent 1.5px),radial-gradient(circle,#f4c36c 0 1px,transparent 2px);background-size:74px 74px,113px 113px;background-position:0 0,28px 19px;animation:drift 35s linear infinite}.hero-inner{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:38px}.hero-copy{z-index:2}.hero h1{font-family:"Playfair Display",serif;font-size:clamp(48px,5.4vw,76px);line-height:1.02;margin:0 0 22px;letter-spacing:-.03em}.hero h1 em{font-style:normal;color:var(--gold)}.tiny-orbit{color:var(--violet);letter-spacing:6px;font-size:11px;margin:8px 0 18px}.hero-copy p{max-width:560px;font-size:18px;color:#f4f1ff;margin:0 0 30px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.hero-art{position:relative;z-index:1}.hero-art img{width:100%;border-radius:50% 45% 38% 48% / 42% 47% 40% 51%;mix-blend-mode:screen;filter:saturate(1.05) contrast(1.04);box-shadow:0 0 80px rgba(124,58,237,.23)}.hero-wave{position:absolute;bottom:-45px;left:-5%;width:110%;height:110px;background:var(--cream);border-radius:50% 50% 0 0/65% 65% 0 0}.trust-band{position:relative;margin-top:-64px;z-index:3}.trust-grid{background:linear-gradient(105deg,#081a3b,#03132d);border:1px solid #ffffff15;border-radius:28px;padding:28px 34px;display:grid;grid-template-columns:repeat(4,1fr);box-shadow:0 18px 46px #061a3a2a}.trust-item{display:flex;align-items:center;gap:16px;color:#fff;padding:0 20px;border-right:1px solid #ffffff1f}.trust-item:last-child{border-right:0}.trust-item img{width:56px;height:56px}.trust-item strong{display:block;font-family:"Playfair Display",serif;font-size:28px}.trust-item strong.compact{font-family:"DM Sans",sans-serif;text-transform:uppercase;font-size:15px;line-height:1.2}.trust-item small{font-size:12px}.trust-item b{display:block;text-transform:uppercase;font-size:12px}.trust-item span{display:block;color:#d4d9e6;font-size:11px;margin-top:4px}.qb-mark{width:54px;height:54px;border-radius:50%;background:#2ca01c;color:#fff;display:grid;place-items:center;font-size:23px;font-weight:700}.section{padding:90px 0}.services{position:relative;overflow:hidden}.section-kicker{text-transform:uppercase;color:var(--purple);font-size:13px;font-weight:700;letter-spacing:.04em}.services h2,.about h2{font-family:"Playfair Display",serif;font-size:50px;line-height:1;margin:5px 0 42px}.script{font-family:"Sacramento",cursive;color:var(--purple);font-weight:400;font-size:1.25em}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:880px;margin-left:auto}.service-card{background:#fff;border-radius:18px;padding:30px 28px;text-align:center;border:1px solid #ece7ff;box-shadow:0 14px 36px #2c1e580f;transition:.25s}.service-card:hover{transform:translateY(-7px);box-shadow:0 20px 42px #2c1e5817}.service-card img{width:80px;height:80px;margin:0 auto 14px}.service-card h3{font-family:"Playfair Display",serif;font-size:24px;margin:0 0 10px}.service-card p{font-size:14px;color:#475467}.service-card a{font-weight:700;color:var(--purple);text-transform:uppercase;font-size:12px}.services .container{position:relative}.services .container:before{content:"";position:absolute;width:290px;height:290px;border:1px solid #c4b5fd;border-radius:50%;left:-90px;top:30px;opacity:.8}.services .section-kicker,.services h2{max-width:270px;position:absolute;left:20px;top:50px}.numbers{padding-top:0}.numbers-grid{background:linear-gradient(120deg,#04172f,#071d44 65%,#100f35);border-radius:34px;padding:42px;display:grid;grid-template-columns:.7fr 1.3fr;gap:34px;color:#fff;box-shadow:0 24px 70px #05152c27}.numbers-copy h2{font-family:"Playfair Display",serif;font-size:44px;line-height:1.08;margin:0 0 20px}.numbers-copy p{color:#d6dded}.numbers-copy ul{list-style:none;padding:0;margin:22px 0 0}.numbers-copy li{margin:7px 0}.numbers-copy li:before{content:"★";color:var(--gold);margin-right:10px}.dashboard{background:#0c1b3d;border:1px solid #ffffff14;border-radius:17px;padding:18px;box-shadow:inset 0 1px #ffffff0c}.dash-title{font-size:12px;font-weight:700;margin-bottom:14px}.dash-title span{float:right}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.metric-grid>div,.chart-box{background:#13274f;border:1px solid #ffffff0d;border-radius:9px;padding:13px}.metric-grid small{display:block;color:#abb7d0;text-transform:uppercase;font-size:8px}.metric-grid strong{display:block;font-size:19px;margin:3px 0}.metric-grid span{font-size:9px}.up{color:#6ee7a5}.down{color:#fb7185}.charts{display:grid;grid-template-columns:1.7fr 1fr;gap:10px;margin-top:10px}.chart-box>strong{font-size:11px}.line-chart{height:160px;margin-top:8px}.line-chart svg{width:100%;height:100%}.chart-labels{display:flex;justify-content:space-between;font-size:8px;color:#91a0bf}.pie-box{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;gap:8px}.pie-box>strong{grid-column:1/-1}.donut{width:105px;height:105px;border-radius:50%;margin:auto;background:conic-gradient(#8b5cf6 0 35%,#a78bfa 35% 63%,#d7c4ff 63% 78%,#f5c36b 78% 86%,#44506d 86%);position:relative}.donut:after{content:"";position:absolute;inset:24px;background:#13274f;border-radius:50%}.pie-box ul{font-size:9px;list-style:none;padding:0;margin:0;align-self:center}.pie-box li{margin:5px 0;color:#c7d0e5}.pie-box b{float:right;color:#fff}.about{padding-top:20px}.about-grid{display:grid;grid-template-columns:.85fr 1.2fr .9fr;gap:36px;align-items:center}.nancy-photo{position:relative;width:260px;height:260px;margin:auto}.nancy-photo img{width:100%;height:100%;object-fit:cover;border-radius:50%;position:relative;z-index:2}.orbit-ring{position:absolute;inset:-23px;border:2px solid #b89cff;border-radius:50%;transform:rotate(-14deg)}.orbit-ring:before,.orbit-ring:after{content:"✦";position:absolute;color:var(--gold);font-size:22px}.orbit-ring:before{right:12px;top:8px}.orbit-ring:after{left:8px;bottom:23px}.about-copy h2{margin-bottom:18px}.about-copy h2 span{color:var(--purple)}.about-copy p{color:#475467}.btn.purple{color:var(--purple);border-color:#a78bfa;background:#fff}.testimonial{background:#fff;border:1px solid #ece7ff;border-radius:18px;padding:28px;box-shadow:0 18px 40px #2b1d570e}.quote{font-family:"Playfair Display",serif;color:var(--purple);font-size:64px;line-height:.7}.testimonial p{font-size:14px}.testimonial strong,.testimonial span{display:block;font-size:12px}.rating{color:#f3b63f;letter-spacing:3px;margin-top:14px}.dots{margin-top:12px}.dot{width:8px;height:8px;border-radius:50%;border:1px solid var(--purple);background:transparent;margin-right:5px}.dot.active{background:var(--purple)}.cta{background:linear-gradient(90deg,#33206a,#6d37bd 55%,#30205f);color:#fff;position:relative;overflow:hidden}.cta:before{content:"";position:absolute;inset:0;background-image:radial-gradient(#fff 0 1px,transparent 1px),radial-gradient(#f5c36b 0 1.5px,transparent 2px);background-size:67px 67px,109px 109px;opacity:.3}.cta-inner{position:relative;min-height:150px;display:grid;grid-template-columns:auto 1fr auto 150px;align-items:center;gap:22px}.cta-icon{font-size:62px;color:var(--gold)}.cta h2{font-family:"Playfair Display",serif;margin:0;font-size:31px}.cta p{margin:4px 0 0;color:#ddd1f7}.cta img{height:130px;width:150px;object-fit:cover;object-position:center;border-radius:80px;mix-blend-mode:screen}.footer{background:#03142f;color:#d9e0ef;padding:48px 0 15px}.footer-grid{display:grid;grid-template-columns:1.25fr .7fr 1fr 1.2fr .9fr;gap:28px}.footer h3{text-transform:uppercase;font-size:12px;color:#fff}.footer a{display:block;font-size:12px;margin:7px 0;color:#cfd7e7}.footer-brand img{width:185px;background:#fff;border-radius:50%;padding:7px}.footer-brand p{font-family:"Sacramento",cursive;color:var(--gold);font-size:24px;line-height:1.15}.social{letter-spacing:6px;color:#fff}.footer-moon{display:flex;align-items:center;gap:12px}.moon-shape{width:72px;height:72px;border-radius:50%;background:radial-gradient(circle at 65% 45%,#03142f 0 49%,transparent 50%),linear-gradient(135deg,#fff1c9,#d9a84f)}.footer-moon p{text-transform:uppercase;font-family:"Playfair Display",serif;color:#fff;font-size:15px}.footer-bottom{border-top:1px solid #ffffff1a;margin-top:32px;padding-top:14px;display:flex;justify-content:space-between;font-size:10px;color:#8693ad}.reveal:not(.testimonial):not(.otm-testimonials):not([data-otm-testimonials]){opacity:0;transform:translateY(22px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.22s}@keyframes drift{to{background-position:74px 74px,141px 132px}}@media(max-width:900px){.nav-wrap{height:86px}.brand img{width:125px}.main-nav,.nav-cta{display:none}.menu-toggle{display:block;margin-left:auto;width:42px}.menu-toggle span{display:block;height:2px;background:#fff;margin:7px}.main-nav.open{display:flex;position:absolute;top:80px;left:20px;right:20px;background:#071b3c;border-radius:15px;padding:25px;flex-direction:column;gap:18px}.hero{padding-top:120px}.hero-inner{grid-template-columns:1fr}.hero-art{order:-1;max-width:600px;margin:auto}.hero-copy{text-align:center}.hero-copy p{margin-left:auto;margin-right:auto}.hero-actions{justify-content:center}.trust-grid{grid-template-columns:1fr 1fr}.trust-item:nth-child(2){border-right:0}.service-grid{grid-template-columns:1fr}.services .section-kicker,.services h2{position:static;max-width:none}.services h2{margin-bottom:30px}.services .container:before{display:none}.numbers-grid{grid-template-columns:1fr}.about-grid{grid-template-columns:1fr;text-align:center}.cta-inner{grid-template-columns:1fr;text-align:center;padding:34px 0}.cta img{display:none}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand,.footer-moon{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:8px}}@media(max-width:580px){.container{width:min(100% - 26px,1180px)}.hero h1{font-size:43px}.trust-grid{grid-template-columns:1fr;padding:22px}.trust-item{border-right:0;border-bottom:1px solid #ffffff1f;padding:14px 0}.trust-item:last-child{border-bottom:0}.section{padding:65px 0}.services h2,.about h2{font-size:40px}.numbers-grid{padding:26px 20px}.metric-grid{grid-template-columns:1fr 1fr}.charts{grid-template-columns:1fr}.about-grid{gap:24px}.nancy-photo{width:220px;height:220px}.footer-grid{grid-template-columns:1fr}.footer-brand,.footer-moon{grid-column:auto}.footer-bottom,.footer-credit{font-size:9px}}

/* v2 refinements: full-bleed hero + closer services title treatment */
.hero{
  min-height:690px;
  padding:165px 0 120px;
  background-image:linear-gradient(90deg,rgba(3,12,31,.96) 0%,rgba(3,12,31,.82) 32%,rgba(3,12,31,.18) 57%,rgba(3,12,31,.05) 100%),var(--otm-hero-image);
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
}
.hero:before{background:linear-gradient(180deg,rgba(1,9,25,.24),transparent 24%,transparent 74%,rgba(2,12,30,.20));}
.hero .stars{opacity:.28;}
.hero-inner{display:block;}
.hero-copy{width:min(570px,52%);padding-top:30px;}
.hero-art{display:none;}
.hero-wave{bottom:-56px;height:112px;}

.services{padding-top:105px;}
.services .container:before{width:335px;height:335px;left:-120px;top:12px;border-color:#bfa7ff;opacity:.6;}
.services .container:after{content:"✦   ·   ✧   ·   ★";position:absolute;left:5px;top:22px;color:#d4a43d;font-size:19px;letter-spacing:13px;transform:rotate(-8deg);opacity:.95;pointer-events:none;}
.services .section-kicker{top:78px;color:#7547d8;font-size:14px;letter-spacing:.055em;}
.services h2{top:105px;max-width:320px;font-size:47px;line-height:.92;letter-spacing:-.025em;}
.services h2:before{content:"✦";position:absolute;left:-28px;top:60px;color:#d6a53f;font-family:"DM Sans",sans-serif;font-size:20px;}
.services h2:after{content:"✧";position:absolute;right:5px;bottom:-36px;color:#d6a53f;font-family:"DM Sans",sans-serif;font-size:24px;}
.services h2 .script{display:block;font-family:"Sacramento",cursive;font-size:1.82em;line-height:.72;margin-top:14px;margin-left:24px;color:#8150e7;font-weight:400;letter-spacing:0;transform:rotate(-5deg);transform-origin:left center;text-shadow:0 1px 0 #fff;}
.service-grid{max-width:890px;}

@media(max-width:900px){
  .hero{min-height:760px;background-position:63% center;padding-top:125px;}
  .hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,10,28,.36),rgba(2,10,28,.72));pointer-events:none;}
  .hero-inner{z-index:2;}
  .hero-copy{width:100%;max-width:620px;margin:300px auto 0;padding:0;text-align:center;}
  .services .container:after{display:none;}
  .services h2 .script{margin-left:0;transform:none;}
}
@media(max-width:580px){
  .hero{min-height:720px;background-position:66% center;padding-top:105px;}
  .hero-copy{margin-top:285px;}
  .hero h1{font-size:42px;}
}

/* v3 hero rebuild — artwork is a composed layer, not a stretched background */
.hero{
  min-height:650px;
  padding:154px 0 112px;
  background:
    radial-gradient(ellipse at 77% 46%,rgba(82,45,147,.40) 0%,rgba(36,26,92,.22) 31%,transparent 59%),
    radial-gradient(circle at 14% 72%,rgba(90,42,151,.27),transparent 26%),
    linear-gradient(118deg,#020c22 0%,#051634 42%,#0a1640 72%,#120d38 100%);
}
.hero:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 91% 92%,rgba(138,75,185,.48) 0 7%,rgba(102,56,160,.34) 14%,transparent 31%),
    radial-gradient(ellipse at 63% 100%,rgba(108,54,169,.44) 0 8%,rgba(76,44,137,.28) 16%,transparent 34%),
    radial-gradient(ellipse at 36% 104%,rgba(83,44,145,.38) 0 10%,transparent 28%),
    linear-gradient(180deg,rgba(1,7,20,.08),transparent 55%,rgba(17,12,54,.28));
}
.hero:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(circle at 24% 18%,rgba(255,210,112,.95) 0 2px,transparent 2.8px),
    radial-gradient(circle at 42% 12%,rgba(255,255,255,.92) 0 1.2px,transparent 2px),
    radial-gradient(circle at 74% 25%,rgba(245,195,108,.92) 0 2px,transparent 3px),
    radial-gradient(circle at 86% 14%,rgba(255,255,255,.85) 0 1.2px,transparent 2px),
    radial-gradient(circle at 91% 45%,rgba(245,195,108,.95) 0 1.8px,transparent 3px),
    radial-gradient(circle at 57% 38%,rgba(255,255,255,.8) 0 1px,transparent 2px);
}
.hero .stars{z-index:1;opacity:.40;mix-blend-mode:screen;}
.hero-inner{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(430px,.82fr) minmax(520px,1.18fr);
  align-items:center;
  gap:0;
  min-height:390px;
}
.hero-copy{
  width:auto;
  max-width:535px;
  padding-top:24px;
  position:relative;
  z-index:3;
}
.hero h1{font-size:clamp(49px,5vw,70px);line-height:1.03;}
.hero-art{
  display:block;
  position:absolute;
  z-index:2;
  width:min(720px,66vw);
  right:-28px;
  bottom:-44px;
  pointer-events:none;
}
.hero-art img{
  width:100%;
  height:auto;
  border-radius:0;
  mix-blend-mode:normal;
  filter:saturate(1.08) contrast(1.03) brightness(1.01);
  box-shadow:none;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.55) 7%,#000 16%,#000 100%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.55) 7%,#000 16%,#000 100%);
}
.hero-wave{
  z-index:2;
  bottom:-52px;
  height:92px;
  border-radius:48% 48% 0 0/54% 54% 0 0;
}
.trust-band{margin-top:-54px;}

@media(max-width:1050px){
  .hero-inner{grid-template-columns:minmax(390px,.8fr) minmax(430px,1.2fr);}
  .hero-art{width:650px;right:-90px;bottom:-20px;}
  .hero-copy{max-width:490px;}
  .hero h1{font-size:56px;}
}
@media(max-width:900px){
  .hero{
    min-height:800px;
    padding:110px 0 112px;
    background:
      radial-gradient(ellipse at 62% 28%,rgba(82,45,147,.42),transparent 48%),
      linear-gradient(155deg,#020c22 0%,#071839 58%,#160e3d 100%);
  }
  .hero-inner{display:block;min-height:590px;}
  .hero-art{display:block;width:min(640px,92vw);right:50%;transform:translateX(50%);bottom:215px;}
  .hero-art img{
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 78%,transparent 100%);
    mask-image:linear-gradient(180deg,#000 0%,#000 78%,transparent 100%);
  }
  .hero-copy{width:100%;max-width:650px;margin:0 auto;padding:0;position:absolute;left:50%;transform:translateX(-50%);bottom:30px;text-align:center;}
  .hero-actions{justify-content:center;}
  .hero-copy p{margin-left:auto;margin-right:auto;}
  .hero:after{background:linear-gradient(180deg,transparent 0%,transparent 58%,rgba(2,10,28,.36) 77%,rgba(2,10,28,.72) 100%);}
}
@media(max-width:580px){
  .hero{min-height:740px;padding-top:96px;}
  .hero-inner{min-height:555px;}
  .hero-art{width:560px;max-width:115vw;bottom:222px;right:48%;}
  .hero-copy{bottom:18px;padding:0 5px;}
  .hero h1{font-size:41px;}
  .hero-copy p{font-size:15px;margin-bottom:20px;}
  .hero-actions{gap:9px;}
  .hero-actions .btn{padding:12px 15px;font-size:10px;}
}

/* v4 — approved full-bleed header composition */
.site-header{z-index:20}
.nav-wrap{height:126px;align-items:flex-start;padding-top:18px}
.brand{display:block;flex:0 0 auto}
.brand img{width:178px;height:178px;object-fit:contain;background:#fff;border-radius:50%;padding:8px;box-shadow:0 10px 36px rgba(0,0,0,.17)}
.main-nav{padding-top:18px;gap:38px}
.main-nav a{font-size:12px;text-shadow:0 1px 8px rgba(0,0,0,.45)}
.nav-cta{margin-top:5px}

.hero{
  min-height:700px;
  padding:178px 0 135px;
  background-image:var(--otm-hero-image);
  background-size:cover;
  background-position:center 50%;
  background-repeat:no-repeat;
  color:#fff;
}
.hero:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg,rgba(2,11,30,.91) 0%,rgba(2,11,30,.78) 27%,rgba(2,11,30,.31) 47%,rgba(2,11,30,.05) 70%),
    linear-gradient(180deg,rgba(0,5,18,.20) 0%,transparent 20%,transparent 72%,rgba(7,11,39,.20) 100%);
  pointer-events:none;
}
.hero:after{display:none}
.hero .stars{display:none}
.hero-inner{position:relative;z-index:3;display:block;min-height:387px}
.hero-copy{width:520px;max-width:47%;padding-top:28px;margin:0}
.hero h1{font-size:clamp(52px,4.8vw,69px);line-height:1.03;margin-bottom:18px;text-shadow:0 3px 20px rgba(0,0,0,.25)}
.hero-copy p{max-width:500px;font-size:17px;line-height:1.55;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.35)}
.hero-art{display:none!important}
.tiny-orbit{color:#ba77ff;text-shadow:0 0 12px rgba(151,78,255,.45)}
.hero-wave{z-index:4;bottom:-55px;height:100px;background:var(--cream);border-radius:50% 50% 0 0/58% 58% 0 0}
.trust-band{margin-top:-78px;z-index:8}
.trust-grid{border-radius:30px;padding:30px 28px;background:linear-gradient(105deg,rgba(4,20,49,.98),rgba(2,13,34,.99));box-shadow:0 22px 55px rgba(4,14,39,.25)}

/* Keep the approved success treatment prominent below the hero */
.services{padding-top:112px}
.services .container:after{content:"✦    ·    ✧    ·    ★";display:block;position:absolute;left:8px;top:24px;color:#d4a43d;font-size:20px;letter-spacing:14px;transform:rotate(-8deg);opacity:.95;pointer-events:none}
.services h2{font-size:49px}
.services h2 .script{font-size:1.9em}

@media(max-width:1050px){
  .brand img{width:150px;height:150px}
  .main-nav{gap:26px}
  .hero{min-height:680px;background-position:57% 50%}
  .hero-copy{max-width:50%;width:500px}
  .hero h1{font-size:55px}
}

@media(max-width:900px){
  .nav-wrap{height:92px;align-items:flex-start;padding-top:10px}
  .brand img{width:118px;height:118px}
  .menu-toggle{margin-top:13px;position:relative;z-index:30}
  .main-nav.open{top:86px;z-index:30}
  .hero{
    min-height:790px;
    padding:110px 0 115px;
    background-position:61% 50%;
  }
  .hero:before{
    background:
      linear-gradient(180deg,rgba(2,10,28,.22) 0%,rgba(2,10,28,.08) 45%,rgba(2,10,28,.85) 76%,rgba(2,10,28,.96) 100%);
  }
  .hero-inner{min-height:575px}
  .hero-copy{position:absolute;left:0;right:0;bottom:18px;width:100%;max-width:680px;margin:auto;padding:0 18px;text-align:center}
  .hero-copy p{margin-left:auto;margin-right:auto}
  .hero-actions{justify-content:center}
  .trust-band{margin-top:-62px}
}

@media(max-width:580px){
  .container{width:min(100% - 24px,1180px)}
  .brand img{width:104px;height:104px}
  .hero{min-height:735px;padding-top:98px;background-position:64% 48%}
  .hero-inner{min-height:530px}
  .hero-copy{bottom:8px;padding:0 6px}
  .hero h1{font-size:40px}
  .hero-copy p{font-size:15px}
  .trust-band{margin-top:-48px}
  .services .container:after{display:none}
}

/* v5 — wider landscape hero: preserve the full cow/moon composition without cover-zoom */
@media(min-width:901px){
  .hero{
    min-height:700px;
    background-color:#020c22;
    background-size:auto 100%;
    background-position:right center;
    background-repeat:no-repeat;
  }
  .hero:before{
    background:
      linear-gradient(90deg,#020b1e 0%,rgba(2,11,30,.98) 18%,rgba(2,11,30,.88) 34%,rgba(2,11,30,.48) 48%,rgba(2,11,30,.10) 63%,rgba(2,11,30,0) 76%),
      linear-gradient(180deg,rgba(0,5,18,.14) 0%,transparent 24%,transparent 76%,rgba(7,11,39,.18) 100%);
  }
}
@media(min-width:1500px){
  .hero{
    background-size:auto 100%;
    background-position:right center;
  }
}

/* v6 — preserve the wide hero, remove the left black fade, and carry clouds across the full width */
@media(min-width:901px){
  .hero{
    background-color:#07143a;
    background-size:auto 100%;
    background-position:right center;
  }
  .hero:before{
    display:block;
    z-index:1;
    background:
      radial-gradient(ellipse at 3% 82%,rgba(83,48,137,.96) 0 8%,rgba(54,34,105,.86) 15%,transparent 28%),
      radial-gradient(ellipse at 14% 88%,rgba(115,63,159,.90) 0 8%,rgba(68,40,124,.78) 17%,transparent 30%),
      radial-gradient(ellipse at 27% 93%,rgba(91,50,145,.82) 0 8%,rgba(53,35,111,.66) 17%,transparent 30%),
      radial-gradient(ellipse at 39% 98%,rgba(77,43,132,.58) 0 9%,transparent 27%),
      radial-gradient(ellipse at 9% 48%,rgba(55,32,112,.22),transparent 33%),
      linear-gradient(90deg,rgba(8,20,58,.04) 0%,rgba(8,20,58,.02) 42%,transparent 66%);
    pointer-events:none;
  }
}

/* v7 — genuinely wider hero artwork; no synthetic left-side fade/cloud overlay */
@media(min-width:901px){
  .hero{
    background-color:#07143a;
    background-image:var(--otm-hero-image);
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
  }
  .hero:before{
    display:none;
  }
}
@media(min-width:1500px){
  .hero{
    background-size:cover;
    background-position:center center;
  }
}

/* v8 — mobile hero: center the cow + crescent composition */
@media(max-width:900px){
  .hero{
    background-image:var(--otm-hero-image);
    background-size:auto 100%;
    background-position:80% center;
    background-repeat:no-repeat;
    background-color:#07143a;
  }
}
@media(max-width:580px){
  .hero{
    background-size:auto 100%;
    background-position:80% center;
  }
}



/* —— WordPress theme chrome —— */
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}
.otm-theme .entry-content>:first-child{margin-top:0}
.otm-theme .entry-content>:last-child{margin-bottom:0}
.otm-inner .site-header{position:relative;background:linear-gradient(120deg,#04172f,#0a2149)}
.otm-inner .main-nav a,.otm-inner .menu-toggle span{color:#fff}
.otm-inner .menu-toggle span{background:#fff}
.otm-page{padding:72px 0 96px}
.otm-page-intro h1{font-family:"Playfair Display",serif;font-size:clamp(36px,4vw,52px);margin:0 0 18px}
.otm-page-intro p{color:var(--muted);max-width:640px}
.brand .custom-logo-link img,.brand .custom-logo{width:178px;height:178px;object-fit:contain;background:#fff;border-radius:50%;padding:8px;box-shadow:0 10px 36px rgba(0,0,0,.17)}
@media(max-width:1050px){.brand .custom-logo-link img,.brand .custom-logo{width:150px;height:150px}}
@media(max-width:900px){.brand .custom-logo-link img,.brand .custom-logo{width:118px;height:118px}}
@media(max-width:580px){.brand .custom-logo-link img,.brand .custom-logo{width:104px;height:104px}}

/* Footer QB certifications (live-site placement: bottom of page) */
.qb-certs{border-top:1px solid #ffffff1a;margin-top:28px;padding:28px 0 8px;text-align:center}
.qb-certs-label{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:#9aa6bf;margin-bottom:16px}
.qb-certs-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:28px 40px}
.qb-certs-row img{width:96px;height:96px;object-fit:contain;background:#fff;border-radius:12px;padding:8px;box-shadow:0 8px 24px rgba(0,0,0,.18)}
@media(max-width:580px){.qb-certs-row img{width:84px;height:84px}}

.footer-menus .menu,.footer-menus ul{list-style:none;margin:0;padding:0}
.footer-menus li{margin:0}
.footer .footer-menus a{display:block;font-size:12px;margin:7px 0;color:#cfd7e7}
/* hero image var comes from wp_add_inline_style */


.footer-credit{text-align:center;padding:0 0 18px;font-size:10px;line-height:1.4;color:#8693ad;letter-spacing:.02em}
.footer-credit a{color:#9aa6bf;text-decoration:underline;text-underline-offset:2px}
.footer-credit a:hover{color:var(--gold)}


/* —— Cookie consent (cute cow banner) —— */
.otm-cookie{
  position:fixed;
  z-index:10000;
  left:16px;
  right:16px;
  bottom:16px;
  display:flex;
  justify-content:center;
  pointer-events:none;
  opacity:0;
  transform:translateY(18px);
  transition:opacity .35s ease,transform .45s cubic-bezier(.22,1,.36,1);
}
.otm-cookie.is-visible{
  opacity:1;
  transform:none;
  pointer-events:auto;
}
.otm-cookie[hidden]{display:none!important}
.otm-cookie-card{
  width:min(720px,100%);
  display:grid;
  grid-template-columns:auto 1fr;
  gap:18px 22px;
  align-items:center;
  padding:18px 20px 18px 14px;
  border-radius:28px;
  background:
    radial-gradient(circle at 12% 20%,rgba(244,195,108,.28),transparent 42%),
    linear-gradient(135deg,#081a3b 0%,#1a1248 55%,#2a1760 100%);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 22px 60px rgba(4,14,39,.4),0 0 0 1px rgba(244,195,108,.08);
  color:#f4f1ff;
}
.otm-cookie-cow{
  position:relative;
  width:118px;
  height:118px;
  border-radius:50%;
  background:#fff;
  display:grid;
  place-items:center;
  box-shadow:0 10px 28px rgba(0,0,0,.25);
  flex-shrink:0;
}
.otm-cookie-cow img{
  width:92px;
  height:auto;
  mix-blend-mode:multiply;
  transform:translateY(2px);
}
.otm-cookie-sparkle{
  position:absolute;
  top:8px;
  right:10px;
  color:var(--gold);
  font-size:16px;
  animation:otmTwinkle 2.4s ease-in-out infinite;
}
@keyframes otmTwinkle{
  0%,100%{opacity:.45;transform:scale(.9) rotate(-8deg)}
  50%{opacity:1;transform:scale(1.15) rotate(8deg)}
}
.otm-cookie-kicker{
  margin:0 0 4px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:11px;
  font-weight:700;
  color:var(--gold);
}
.otm-cookie-copy h2{
  margin:0 0 8px;
  font-family:"Playfair Display",serif;
  font-size:28px;
  line-height:1.1;
  color:#fff;
}
.otm-cookie-copy p{
  margin:0 0 14px;
  font-size:14px;
  line-height:1.5;
  color:#d9dff0;
}
.otm-cookie-privacy{
  display:inline;
  margin-left:6px;
  color:var(--gold);
  text-decoration:underline;
  text-underline-offset:2px;
  font-weight:600;
}
.otm-cookie-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.otm-cookie .btn-outline{
  border-color:rgba(200,182,255,.55);
  color:#fff;
  background:rgba(255,255,255,.06);
}
.otm-cookie .btn-outline:hover{background:rgba(255,255,255,.12)}
@media(max-width:640px){
  .otm-cookie{left:10px;right:10px;bottom:10px}
  .otm-cookie-card{
    grid-template-columns:1fr;
    text-align:center;
    padding:16px 16px 18px;
    gap:10px;
  }
  .otm-cookie-cow{margin:0 auto;width:96px;height:96px}
  .otm-cookie-cow img{width:74px}
  .otm-cookie-copy h2{font-size:24px}
  .otm-cookie-actions{justify-content:center}
}


/* —— OTM mobile polish —— */
html,body{overflow-x:clip}
img,svg,video{max-width:100%;height:auto}
.site-header{z-index:40}
.nav-wrap{position:relative}
.nav-panel{display:contents}

.menu-toggle{
  min-width:44px;
  min-height:44px;
  padding:10px 8px;
  cursor:pointer;
  position:relative;
  z-index:45;
}
.menu-toggle span{pointer-events:none}

.dots{display:flex;flex-wrap:wrap;gap:2px;align-items:center}
.dot{
  width:44px;
  height:44px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  position:relative;
  cursor:pointer;
}
.dot::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:10px;
  height:10px;
  margin:-5px 0 0 -5px;
  border-radius:50%;
  border:1px solid var(--purple);
  background:transparent;
}
.dot.active::before{background:var(--purple)}

.otm-page{padding:48px 16px 72px;overflow-wrap:anywhere}
.otm-page .btn{max-width:100%}

/* Tablet: stack services title (desktop absolute layout collides) */
@media(max-width:1100px){
  .services{padding-top:72px}
  .services .section-kicker,
  .services h2{
    position:static!important;
    max-width:none!important;
    top:auto!important;
    left:auto!important;
  }
  .services h2{
    margin:8px 0 28px!important;
    font-size:clamp(34px,5vw,46px)!important;
  }
  .services h2:before,
  .services h2:after,
  .services .container:before,
  .services .container:after{display:none!important}
  .services h2 .script{
    display:inline!important;
    margin-left:0!important;
    transform:none!important;
    font-size:1.35em!important;
  }
  .service-grid{max-width:none;margin:0}
}

@media(max-width:900px){
  body.otm-nav-open{overflow:hidden}
  .nav-wrap{height:92px;align-items:flex-start;padding-top:10px}
  .brand img,
  .brand .custom-logo{
    width:104px!important;
    height:104px!important;
  }
  .menu-toggle{display:block;margin-left:auto;margin-top:10px}
  .nav-panel{
    display:none;
    position:fixed;
    top:86px;
    left:12px;
    right:12px;
    z-index:50;
    background:#071b3c;
    border:1px solid rgba(255,255,255,.12);
    border-radius:18px;
    padding:22px 18px 20px;
    flex-direction:column;
    align-items:stretch;
    gap:14px;
    box-shadow:0 20px 50px rgba(0,0,0,.35);
    max-height:calc(100dvh - 110px);
    overflow:auto;
    -webkit-overflow-scrolling:touch;
  }
  .nav-wrap.is-open .nav-panel{display:flex}
  .main-nav{
    display:flex!important;
    flex-direction:column;
    gap:4px;
    margin:0;
    padding:0;
  }
  .main-nav a{
    display:flex;
    align-items:center;
    min-height:44px;
    padding:10px 8px;
    font-size:14px;
  }
  .nav-cta{
    display:inline-flex!important;
    width:100%;
    justify-content:center;
    margin-top:6px;
    min-height:48px;
    box-sizing:border-box;
  }
  /* Override older rule that hid nav/cta */
  .main-nav.open{position:static;inset:auto;background:transparent;padding:0;border-radius:0;box-shadow:none}

  .hero{
    min-height:auto!important;
    padding:118px 0 88px!important;
    background-size:cover!important;
    background-position:72% center!important;
  }
  .hero:before{
    display:block!important;
    background:
      linear-gradient(180deg,rgba(2,10,28,.18) 0%,rgba(2,10,28,.12) 38%,rgba(2,10,28,.82) 72%,rgba(2,10,28,.96) 100%)!important;
  }
  .hero-inner{
    position:relative!important;
    min-height:0!important;
    display:block!important;
  }
  .hero-copy{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    transform:none!important;
    width:100%!important;
    max-width:560px!important;
    margin:220px auto 0!important;
    padding:0 8px!important;
    text-align:center;
  }
  .hero h1{font-size:clamp(34px,9vw,46px)!important;line-height:1.08!important}
  .hero-copy p{font-size:15px!important;margin-left:auto;margin-right:auto}
  .hero-actions{
    justify-content:center;
    flex-direction:column;
    align-items:stretch;
    gap:10px;
  }
  .hero-actions .btn{
    width:100%;
    min-height:48px;
    padding:14px 16px;
    font-size:12px;
    box-sizing:border-box;
  }
  .trust-band{margin-top:-48px!important;z-index:8}
  .trust-grid{grid-template-columns:1fr 1fr;gap:0;padding:18px!important}
  .trust-item{padding:14px 10px!important;align-items:flex-start}
  .trust-item img,.qb-mark{width:44px;height:44px;flex-shrink:0}
  .trust-item strong{font-size:22px}
  .trust-item strong.compact{font-size:13px}
  .numbers-grid{padding:24px 18px!important;border-radius:24px}
  .numbers-copy h2{font-size:clamp(28px,7vw,38px)!important}
  .metric-grid{grid-template-columns:1fr 1fr}
  .metric-grid strong{font-size:16px}
  .charts{grid-template-columns:1fr}
  .about-grid{grid-template-columns:1fr;text-align:center;gap:28px}
  .about-copy .btn{width:100%;max-width:320px}
  .cta-inner{
    grid-template-columns:1fr!important;
    text-align:center;
    padding:28px 0!important;
    gap:14px!important;
  }
  .cta h2{font-size:clamp(22px,6vw,28px)!important}
  .cta .btn{width:100%;max-width:320px;min-height:48px;margin:0 auto}
  .cta img{display:none}
  .footer-grid{grid-template-columns:1fr 1fr;gap:22px}
  .footer-brand,.footer-moon{grid-column:1/-1}
  .footer a,.footer-menus a{min-height:40px;display:flex;align-items:center}
  .footer-bottom{flex-direction:column;gap:8px;text-align:center}
  .footer-credit{padding-bottom:max(18px, env(safe-area-inset-bottom))}
  .qb-certs-row{gap:16px 20px}
  .qb-certs-row img{width:78px;height:78px}
}

@media(max-width:580px){
  .container{width:min(100% - 20px,1180px)}
  .brand img,
  .brand .custom-logo{
    width:88px!important;
    height:88px!important;
  }
  .nav-wrap{height:80px;padding-top:8px}
  .nav-panel{top:74px}
  .hero-copy{margin-top:180px!important}
  .trust-grid{grid-template-columns:1fr!important}
  .trust-item{
    border-right:0!important;
    border-bottom:1px solid #ffffff1f;
    padding:14px 4px!important;
  }
  .trust-item:last-child{border-bottom:0}
  .section{padding:56px 0}
  .services h2,.about h2{font-size:clamp(30px,9vw,38px)!important}
  .service-card{padding:24px 18px}
  .nancy-photo{width:200px;height:200px}
  .footer-grid{grid-template-columns:1fr}
  .footer-brand,.footer-moon{grid-column:auto}
  .footer-brand img{width:140px}
  .qb-certs-row img{width:68px;height:68px}
}

/* Cookie banner: mobile + safe areas */
.otm-cookie{
  left:max(10px, env(safe-area-inset-left));
  right:max(10px, env(safe-area-inset-right));
  bottom:max(10px, env(safe-area-inset-bottom));
}
.otm-cookie-card{
  max-height:min(72vh, 560px);
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}
.otm-cookie-actions .btn{
  min-height:48px;
  flex:1 1 140px;
  box-sizing:border-box;
}
@media(max-width:640px){
  .otm-cookie-card{
    grid-template-columns:1fr;
    text-align:center;
    padding:14px 14px 16px;
    gap:8px;
    border-radius:22px;
  }
  .otm-cookie-cow{margin:0 auto;width:84px;height:84px}
  .otm-cookie-cow img{width:64px}
  .otm-cookie-copy h2{font-size:22px}
  .otm-cookie-copy p{font-size:13px;margin-bottom:12px}
  .otm-cookie-actions{flex-direction:column}
  .otm-cookie-actions .btn{width:100%;flex:none}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal,.otm-cookie,.otm-cookie-sparkle,.stars{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}


/* —— OTM hero image fix —— */
.hero{
  background-color:#07143a !important;
  background-image:var(--otm-hero-image) !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-position:center center !important;
}
@media(max-width:900px){
  .hero{
    background-size:cover !important;
    background-position:72% center !important;
  }
  .hero:before{
    display:block !important;
    z-index:1;
    background:
      linear-gradient(180deg,rgba(2,10,28,.18) 0%,rgba(2,10,28,.12) 38%,rgba(2,10,28,.82) 72%,rgba(2,10,28,.96) 100%) !important;
  }
}


/* —— OTM top gap fix —— */
body.otm-home,
body.otm-home #main-content,
body.otm-home .otm-entry,
body.otm-home .entry-content{
  margin:0;
  padding:0;
}
body.otm-home .entry-content > p:first-child:empty{
  display:none;
  margin:0;
  padding:0;
  height:0;
  overflow:hidden;
}
body.otm-home .hero{margin-top:0}


/* —— OTM block editor layout —— */
.entry-content > .wp-block-group.alignfull,
.entry-content > .alignfull{
  max-width:none;
  width:100%;
  margin-left:0;
  margin-right:0;
}
.entry-content > .wp-block-group{
  margin-block:0;
}
.entry-content .wp-block-columns{
  margin-bottom:0;
}
.hero .wp-block-button__link,
.cta .wp-block-button__link,
.about .wp-block-button__link,
.otm-page-intro .wp-block-button__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:14px 22px;
  border-radius:999px;
  font-weight:700;
  text-transform:uppercase;
  font-size:12px;
  letter-spacing:.03em;
  text-decoration:none;
  line-height:1.2;
  border:0;
}
.hero .btn-gold .wp-block-button__link,
.cta .btn-gold .wp-block-button__link,
.otm-page-intro .btn-gold .wp-block-button__link,
.is-style-otm-gold .wp-block-button__link{
  background:linear-gradient(135deg,#ffd88a,#ecb756)!important;
  color:#121b2e!important;
  box-shadow:0 9px 24px #0002;
}
.hero .btn-outline .wp-block-button__link,
.about .btn-outline .wp-block-button__link,
.is-style-otm-outline .wp-block-button__link{
  border:1px solid #c8b6ff!important;
  color:#fff!important;
  background:#ffffff08!important;
}
.about .btn.purple .wp-block-button__link{
  color:var(--purple)!important;
  border-color:#a78bfa!important;
  background:#fff!important;
}
.hero-actions.wp-block-buttons,
.hero .wp-block-buttons{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin:0;
}
.hero .wp-block-button{margin:0}
.hero .hero-copy > *:last-child{margin-bottom:0}

/* Trust band as columns */
.trust-band .trust-grid.wp-block-columns{
  background:linear-gradient(105deg,rgba(4,20,49,.98),rgba(2,13,34,.99));
  border:1px solid #ffffff15;
  border-radius:30px;
  padding:30px 28px;
  box-shadow:0 22px 55px rgba(4,14,39,.25);
  gap:0;
}
.trust-band .trust-item{
  display:flex;
  align-items:center;
  gap:16px;
  color:#fff;
  padding:0 20px;
  border-right:1px solid #ffffff1f;
}
.trust-band .trust-item:last-child{border-right:0}
.trust-band .trust-item .wp-block-image{margin:0;flex-shrink:0}
.trust-band .trust-item .wp-block-image img{width:56px;height:56px;display:block}
.trust-band .trust-item p{margin:0;color:#fff;font-size:12px;line-height:1.35}
.trust-band .trust-item p strong{
  display:block;
  font-family:"Playfair Display",serif;
  font-size:24px;
  line-height:1.15;
}
.trust-band .trust-item.qb .qb-mark{flex-shrink:0}

/* Services cards as columns */
.services .service-grid.wp-block-columns{
  max-width:890px;
  margin-left:auto;
  gap:22px;
}
.services .service-card{
  background:#fff;
  border-radius:18px;
  padding:30px 28px;
  text-align:center;
  border:1px solid #ece7ff;
  box-shadow:0 14px 36px #2c1e580f;
}
.services .service-card .wp-block-image{margin:0 auto 14px}
.services .service-card .wp-block-image img{margin:0 auto}
.services .service-card h3{font-family:"Playfair Display",serif;font-size:24px;margin:0 0 10px}
.services .service-card p{font-size:14px;color:#475467}
.services .service-card a{font-weight:700;color:var(--purple);text-transform:uppercase;font-size:12px}

/* Numbers / about columns */
.numbers .numbers-grid.wp-block-columns,
.about .about-grid.wp-block-columns{
  margin:0 auto;
}
.numbers .metric-grid.wp-block-columns{gap:9px}
.numbers .metric-grid .wp-block-column{
  background:#13274f;
  border:1px solid #ffffff0d;
  border-radius:9px;
  padding:13px;
}
.numbers .metric-grid p{margin:0;color:#fff;font-size:12px}
.numbers .metric-grid strong{display:block;font-size:19px;margin:3px 0}
.about .nancy-photo .wp-block-image{margin:0;position:relative;z-index:2}
.about .nancy-photo .wp-block-image img{
  width:100%;
  height:100%;
  max-width:260px;
  aspect-ratio:1;
  object-fit:cover;
  border-radius:50%;
  margin:0 auto;
}
.about .testimonial .quote{font-family:"Playfair Display",serif;color:var(--purple);font-size:64px;line-height:.7;margin:0}
.cta .cta-inner{width:min(1180px,calc(100% - 40px));margin:auto}
.cta .wp-block-image img{
  height:130px;
  width:150px;
  object-fit:cover;
  border-radius:80px;
  mix-blend-mode:screen;
}

@media(max-width:900px){
  .trust-band .trust-grid.wp-block-columns{flex-wrap:wrap}
  .trust-band .trust-item{
    flex-basis:50%;
    border-right:0;
    border-bottom:1px solid #ffffff1f;
    padding:14px 10px;
  }
  .services .service-grid.wp-block-columns{flex-direction:column}
  .hero-actions.wp-block-buttons{flex-direction:column;align-items:stretch}
  .hero-actions .wp-block-button,
  .hero-actions .wp-block-button__link{width:100%}
}
@media(max-width:580px){
  .trust-band .trust-item{flex-basis:100%}
}

/* Block editor canvas (admin) — keep copy readable */
.editor-styles-wrapper .hero,
.editor-styles-wrapper .trust-band,
.editor-styles-wrapper .numbers,
.editor-styles-wrapper .cta{
  padding:28px 20px!important;
  min-height:0!important;
  position:relative!important;
}
.editor-styles-wrapper .hero{color:#fff}
.editor-styles-wrapper .hero-copy{width:auto!important;max-width:100%!important;margin:0!important;position:relative!important}
.editor-styles-wrapper .trust-band .trust-item{color:#fff}
.editor-styles-wrapper .hero-wave{display:none}


/* —— OTM button ring fix —— */
/* Class "btn" sits on the wrapper; WP styles the inner link — kill double border/ring. */
.wp-block-button.btn,
.wp-block-button.is-style-otm-gold,
.wp-block-button.is-style-otm-outline,
.entry-content .wp-block-button.btn{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0;
}
.wp-block-button.btn .wp-block-button__link,
.wp-block-button.btn .wp-element-button,
.is-style-otm-gold .wp-block-button__link,
.is-style-otm-outline .wp-block-button__link,
.hero .wp-block-button__link,
.cta .wp-block-button__link,
.about .wp-block-button__link,
.otm-page-intro .wp-block-button__link{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  text-decoration:none!important;
}
.wp-block-button.btn-gold .wp-block-button__link,
.wp-block-button.is-style-otm-gold .wp-block-button__link,
.hero .btn-gold .wp-block-button__link,
.cta .btn-gold .wp-block-button__link,
.otm-page-intro .btn-gold .wp-block-button__link{
  background:linear-gradient(135deg,#ffd88a,#ecb756)!important;
  color:#121b2e!important;
  box-shadow:0 9px 24px rgba(0,0,0,.14)!important;
}
.wp-block-button.btn-outline .wp-block-button__link,
.wp-block-button.is-style-otm-outline .wp-block-button__link,
.hero .btn-outline .wp-block-button__link{
  background:rgba(255,255,255,.06)!important;
  color:#fff!important;
  box-shadow:inset 0 0 0 1px rgba(200,182,255,.7)!important;
}
.about .wp-block-button.btn.purple .wp-block-button__link,
.about .btn.purple .wp-block-button__link{
  background:#fff!important;
  color:var(--purple)!important;
  box-shadow:inset 0 0 0 1px #a78bfa!important;
}
.wp-block-button.btn .wp-block-button__link:hover,
.wp-block-button.btn .wp-block-button__link:focus,
.wp-block-button.btn .wp-element-button:hover,
.wp-block-button.btn .wp-element-button:focus{
  outline:0!important;
}
.wp-block-button.btn-gold .wp-block-button__link:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(0,0,0,.2)!important;
}


/* —— OTM testimonials slider —— */
.otm-testimonials{
  background:#fff;
  border:1px solid #ece7ff;
  border-radius:18px;
  padding:28px;
  box-shadow:0 18px 40px #2b1d570e;
  position:relative;
}
.otm-testimonials .quote{
  font-family:"Playfair Display",serif;
  color:var(--purple);
  font-size:64px;
  line-height:.7;
  margin:0 0 8px;
}
.otm-testimonials-viewport{position:relative;min-height:9.5rem}
.otm-testimonial-slide{
  opacity:0;
  transform:translateY(10px);
  transition:opacity .45s ease,transform .45s ease;
  pointer-events:none;
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
}
.otm-testimonial-slide.is-active{
  opacity:1;
  transform:none;
  pointer-events:auto;
  position:relative;
}
.otm-testimonial-quote{
  font-size:14px;
  margin:0 0 12px;
  color:var(--ink);
}
.otm-testimonial-name{
  display:block;
  font-size:12px;
  margin:0;
}
.otm-testimonial-role{
  display:block;
  font-size:12px;
  color:#667085;
  margin-top:2px;
}
.otm-testimonials .rating{
  color:#f3b63f;
  letter-spacing:3px;
  margin-top:14px;
}
.otm-testimonials .dots{margin-top:14px}

/* —— OTM testimonials visibility —— */
.about .testimonial,
.about .otm-testimonials,
[data-otm-testimonials],
.testimonial.reveal,
.otm-testimonials.reveal,
[data-otm-testimonials].reveal{
  opacity:1!important;
  transform:none!important;
  visibility:visible!important;
  display:block!important;
  position:relative!important;
  z-index:2;
}
.about .about-grid.wp-block-columns{
  display:flex!important;
  align-items:center;
  gap:36px;
  flex-wrap:wrap;
}
.about .about-grid.wp-block-columns > .wp-block-column{
  margin:0;
  min-width:0;
}
.about .about-grid.wp-block-columns > .wp-block-column:last-child{
  min-width:min(100%,260px);
  flex:0.9 1 260px;
}
/* Kill invalid <p> wrapper around the card */
.about .wp-block-column > p:has(> [data-otm-testimonials]),
.about .wp-block-column > p:has([data-otm-testimonials]){
  display:contents;
}
.otm-testimonials-viewport{
  position:relative;
  min-height:10.5rem;
  overflow:hidden;
}
.otm-testimonial-slide[hidden]{display:none!important}
.otm-testimonial-slide.is-active{
  display:block!important;
  opacity:1!important;
  transform:none!important;
  position:relative!important;
  pointer-events:auto!important;
}
@media (max-width:900px){
  .about .about-grid.wp-block-columns{
    flex-direction:column;
  }
  .about .about-grid.wp-block-columns > .wp-block-column:last-child{
    width:100%;
    flex:1 1 auto;
    max-width:420px;
    margin-inline:auto;
  }
}

/* —— OTM testimonials swipe —— */
.otm-testimonials-viewport{
  touch-action:pan-y;
  cursor:grab;
}
.otm-testimonials-viewport.is-dragging{
  cursor:grabbing;
  user-select:none;
  -webkit-user-select:none;
}
.otm-testimonials .dots{
  position:relative;
  z-index:3;
  pointer-events:auto;
  gap:0;
}
.otm-testimonials .dot{
  pointer-events:auto;
  z-index:3;
}
.otm-testimonials .otm-testimonial-slide{
  pointer-events:none;
}
.otm-testimonials .otm-testimonial-slide.is-active{
  pointer-events:auto;
}
