.elementor-kit-6{--e-global-color-primary:#FFB150;--e-global-color-secondary:#464DB7;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-c32230d:#35449C;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:500;font-family:"Inter", Sans-serif;font-weight:400;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ===== Contact Form 7 — site-wide styling (iBrokeMyGadget) ===== */
.wpcf7 form{display:grid;grid-template-columns:1fr 1fr;gap:20px;text-align:left;}
.wpcf7 form > p{margin:0;min-width:0;}
.wpcf7 form > fieldset,
.wpcf7 form > .wpcf7-response-output{grid-column:1 / -1;}

/* form-agnostic: any row with a textarea or the submit button spans full width */
.wpcf7 form > p:has(textarea),
.wpcf7 form > p:has(input[type=submit]){grid-column:1 / -1;}
.wpcf7 form > p:has(input[type=submit]){display:flex;justify-content:center;align-items:center;gap:10px;margin-top:4px;}

.wpcf7 label{display:block;font-size:14px;font-weight:600;line-height:1.4;color:#131A26;}
.wpcf7 .wpcf7-form-control-wrap{display:block;margin-top:7px;}

.wpcf7 input[type=text],
.wpcf7 input[type=tel],
.wpcf7 input[type=email],
.wpcf7 select,
.wpcf7 textarea{
  width:100%;height:auto;min-height:50px;padding:13px 14px;
  border:1px solid #D4DAE3;border-radius:6px;background:#fff;
  font-family:inherit;font-size:15px;line-height:1.4;color:#131A26;box-shadow:none;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.wpcf7 input[type=text]:focus,
.wpcf7 input[type=tel]:focus,
.wpcf7 input[type=email]:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus{outline:none;border-color:#F9A038;box-shadow:0 0 0 3px rgba(249,160,56,.22);}
.wpcf7 ::placeholder{color:#9AA5B4;opacity:1;}

.wpcf7 select{
  height:50px;line-height:1.4;appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:40px;
  background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='%23566274' d='M1.4 0 6 4.6 10.6 0 12 1.4 6 7.4 0 1.4z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;background-size:12px 8px;cursor:pointer;
}
.wpcf7 textarea{height:auto;min-height:150px;max-height:150px;resize:vertical;display:block;line-height:1.55;}

.wpcf7 input[type=submit]{
  background:#F9A038;color:#fff;border:2px solid #F9A038;border-radius:6px;
  padding:15px 44px;font-family:inherit;font-size:16px;font-weight:600;line-height:1.2;
  width:auto;cursor:pointer;transition:background-color .15s ease, border-color .15s ease;
}
.wpcf7 input[type=submit]:hover,
.wpcf7 input[type=submit]:focus{background:#F9A038;border-color:#F9A038;}
.wpcf7 .wpcf7-spinner{margin:0;}

.wpcf7 .wpcf7-response-output{margin:0;border-width:2px;border-radius:6px;padding:14px 16px;font-size:15px;}
.wpcf7 form.sent .wpcf7-response-output{border-color:#2E9E4F;background:#F1FAF4;color:#1E6B36;}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output{border-color:#D64545;background:#FDF3F3;color:#9B2C2C;}
.wpcf7 .wpcf7-not-valid{border-color:#D64545;}
.wpcf7 .wpcf7-not-valid-tip{margin-top:6px;font-size:13px;font-weight:500;color:#D64545;}

@media (max-width:767px){
  .wpcf7 form{grid-template-columns:1fr;gap:16px;}
  .wpcf7 input[type=submit]{width:100%;padding:15px 20px;}
  .wpcf7 form > p:has(input[type=submit]){flex-direction:column;}
}


/* ===== Shared content-page template ===== */
.ibmg-page .entry-title,
body:has(.ibmg-hero) .entry-title{display:none;}
.ibmg-hero{background:#3D4CA0;color:#fff;text-align:center;width:100vw;margin-left:calc(50% - 50vw);
  margin-top:-84px;padding:150px 20px 58px;}
.ibmg-hero h1{color:#fff;margin:0 0 12px;font:700 42px/1.15 Poppins,sans-serif;}
.ibmg-hero p{color:#C6CCE9;margin:0 auto;max-width:660px;font-size:17px;line-height:1.7;}
.ibmg-body{max-width:900px;margin:0 auto;padding:54px 0 20px;}
.ibmg-body h2{margin:2.1em 0 .5em;font:700 26px/1.25 Poppins,sans-serif;color:#131A26;}
.ibmg-body h2:first-child{margin-top:0;}
.ibmg-body h3{margin:1.6em 0 .4em;font:700 18px/1.3 Poppins,sans-serif;color:#3D4CA0;}
.ibmg-body p,.ibmg-body li{line-height:1.75;color:#3C4658;}
.ibmg-body li{margin-bottom:.5em;}
.ibmg-body a{color:#3D4CA0;}
.ibmg-body a:hover{color:#F9A038;}
.ibmg-note{background:#F5F7FB;border-left:4px solid #F9A038;border-radius:8px;padding:18px 22px;margin:26px 0;}
.ibmg-note p{margin:0;}
.ibmg-cta{background:#F5F7FB;border:1px solid #E4E8F2;border-radius:14px;padding:30px;text-align:center;margin:40px 0 10px;}
.ibmg-cta h3{color:#131A26;margin:0 0 8px;font-size:21px;}
.ibmg-cta p{margin:0 0 18px;}
.ibmg-btn{display:inline-block;background:#F9A038;color:#fff !important;font:600 15px/1 Poppins,sans-serif;
  padding:15px 30px;border-radius:6px;text-decoration:none;border:2px solid #F9A038;
  box-shadow:0 8px 20px rgba(249,160,56,.30);transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease;}
.ibmg-btn:hover{background:#F9A038;border-color:#F9A038;transform:translateY(-2px);box-shadow:0 12px 26px rgba(249,160,56,.40);color:#fff !important;}
.ibmg-btn.ghost{background:transparent;color:#3D4CA0 !important;border-color:#3D4CA0;box-shadow:none;}
.ibmg-btn.ghost:hover{background:#3D4CA0;color:#fff !important;}
@media(max-width:767px){
  .ibmg-hero{margin-top:-72px;padding:120px 16px 42px;}
  .ibmg-hero h1{font-size:29px;}
  .ibmg-body{padding:38px 0 16px;}
  .ibmg-body h2{font-size:22px;}
}

/* ===== New homepage ===== */

.hm{--blue:#3D4CA0;--blue2:#3D4CA0;--dark:#131A26;--orange:#F9A038;--ink:#3C4658;}
.hm *{box-sizing:border-box;}

/* ── HERO ───────────────────────────── */
.hm-hero{position:relative;width:100vw;margin-left:calc(50% - 50vw);margin-top:-84px;
 background:linear-gradient(135deg,#3D4CA0 0%,#3D4CA0 45%,#3D4CA0 100%);overflow:hidden;
 padding:150px 20px 78px;}
.hm-hero::before,.hm-hero::after{content:"";position:absolute;border-radius:50%;pointer-events:none;}
.hm-hero::before{width:620px;height:620px;top:-220px;right:-160px;
 background:radial-gradient(circle,rgba(249,160,56,.28) 0%,rgba(249,160,56,0) 68%);animation:hmFloat 14s ease-in-out infinite;}
.hm-hero::after{width:520px;height:520px;bottom:-240px;left:-140px;
 background:radial-gradient(circle,rgba(255,255,255,.16) 0%,rgba(255,255,255,0) 70%);animation:hmFloat 18s ease-in-out infinite reverse;}
@keyframes hmFloat{0%,100%{transform:translate(0,0);}50%{transform:translate(-26px,26px);}}
.hm-hero-in{position:relative;z-index:2;max-width:1180px;margin:0 auto;display:grid;
 grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;}
.hm-eyebrow{display:inline-flex;align-items:center;gap:9px;padding:8px 16px;border-radius:100px;
 background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(6px);
 font:600 12.5px/1 Poppins,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#fff;margin-bottom:22px;}
.hm-eyebrow i{width:7px;height:7px;border-radius:50%;background:#F9A038;box-shadow:0 0 0 0 rgba(74,222,128,.7);animation:hmPulse 2.2s infinite;}
@keyframes hmPulse{70%{box-shadow:0 0 0 9px rgba(74,222,128,0);}100%{box-shadow:0 0 0 0 rgba(74,222,128,0);}}
.hm-hero h1{margin:0 0 18px;color:#fff;font:700 50px/1.12 Poppins,sans-serif;letter-spacing:-.5px;}
.hm-hero h1 em{font-style:normal;background:linear-gradient(90deg,#F9A038,#F9A038);-webkit-background-clip:text;background-clip:text;color:transparent;}
.hm-sub{margin:0 0 30px;color:#C6CCE9;font-size:18px;line-height:1.72;max-width:530px;}
.hm-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:30px;}
.hm-btn{display:inline-flex;align-items:center;gap:9px;padding:16px 28px;border-radius:8px;
 font:600 15px/1 Poppins,sans-serif;text-decoration:none;border:2px solid transparent;
 transition:transform .22s cubic-bezier(.16,1,.3,1),box-shadow .22s ease,background-color .22s ease,color .22s ease;}
.hm-btn.p{background:var(--orange);color:#fff !important;border-color:var(--orange);box-shadow:0 10px 26px rgba(249,160,56,.36);}
.hm-btn.p:hover{background:#F9A038;border-color:#F9A038;transform:translateY(-3px);box-shadow:0 16px 34px rgba(249,160,56,.48);}
.hm-btn.s{background:rgba(255,255,255,.10);color:#fff !important;border-color:rgba(255,255,255,.42);backdrop-filter:blur(6px);}
.hm-btn.s:hover{background:#fff;color:var(--blue) !important;border-color:#fff;transform:translateY(-3px);}
.hm-mini{display:flex;flex-wrap:wrap;gap:22px;color:#C6CCE9;font-size:14px;}
.hm-mini span{display:inline-flex;align-items:center;gap:7px;}
.hm-mini svg{width:16px;height:16px;color:var(--orange);}

.hm-shot{position:relative;}
.hm-shot-img{width:100%;height:420px;object-fit:cover;border-radius:20px;display:block;
 box-shadow:0 30px 70px rgba(10,16,40,.42);border:5px solid rgba(255,255,255,.14);}
.hm-badge{position:absolute;background:#fff;border-radius:14px;padding:14px 18px;
 box-shadow:0 16px 40px rgba(10,16,40,.26);animation:hmBob 5s ease-in-out infinite;}
.hm-badge.b1{top:22px;left:-26px;}
.hm-badge.b2{bottom:26px;right:-22px;animation-delay:1.4s;}
@keyframes hmBob{0%,100%{transform:translateY(0);}50%{transform:translateY(-9px);}}
.hm-badge .n{font:700 21px/1 Poppins,sans-serif;color:var(--dark);}
.hm-badge .l{font:500 12px/1.35 Poppins,sans-serif;color:#8A93A6;margin-top:4px;}
.hm-stars{color:#F9A038;font-size:13px;letter-spacing:1px;}
.hm-badge.b2 .n{color:var(--blue);}
@media(max-width:980px){
 .hm-hero{padding:120px 16px 60px;margin-top:-72px;}
 .hm-hero-in{grid-template-columns:1fr;gap:40px;}
 .hm-hero h1{font-size:33px;}
 .hm-sub{font-size:16px;}
 .hm-shot-img{height:280px;}
 .hm-badge.b1{left:8px;} .hm-badge.b2{right:8px;}
}

/* ── TRUST BAR ──────────────────────── */
.hm-trust{width:100vw;margin-left:calc(50% - 50vw);background:var(--dark);padding:0;}
.hm-trust-in{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);}
.hm-trust div{padding:22px 18px;text-align:center;color:#fff;font:600 14.5px/1.45 Poppins,sans-serif;
 border-left:1px solid rgba(255,255,255,.09);display:flex;align-items:center;justify-content:center;gap:9px;}
.hm-trust div:first-child{border-left:0;}
.hm-trust svg{width:18px;height:18px;color:var(--orange);flex:0 0 auto;}
@media(max-width:900px){.hm-trust-in{grid-template-columns:repeat(2,1fr);}
 .hm-trust div:nth-child(3){border-left:0;} .hm-trust div{border-top:1px solid rgba(255,255,255,.09);font-size:13.5px;}}
@media(max-width:520px){.hm-trust-in{grid-template-columns:1fr;} .hm-trust div{border-left:0;}}


/* ── SECTIONS ───────────────────────── */
.hm-sec{width:100vw;margin-left:calc(50% - 50vw);padding:84px 20px;}
.hm-sec.alt{background:#F5F7FB;}
.hm-sec.deep{background:var(--blue);}
.hm-in{max-width:1120px;margin:0 auto;}
.hm-in.narrow{max-width:820px;}
.hm-kick{display:block;text-align:center;font:700 12.5px/1 Poppins,sans-serif;letter-spacing:.11em;
 text-transform:uppercase;color:#F9A038;margin-bottom:13px;}
.hm-h2{text-align:center;margin:0 0 16px;font:700 36px/1.2 Poppins,sans-serif;color:var(--dark);letter-spacing:-.3px;}
.hm-sec.deep .hm-h2{color:#fff;}
.hm-lead{text-align:center;max-width:720px;margin:0 auto 8px;font-size:17px;line-height:1.78;color:var(--ink);}
.hm-sec.deep .hm-lead{color:#C6CCE9;}

/* care cards */
.hm-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px;}
@media(max-width:960px){.hm-grid3{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){.hm-grid3{grid-template-columns:1fr;}}
.hm-card{background:#fff;border:1px solid #E4E8F2;border-radius:16px;padding:28px 26px;
 transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s ease,border-color .3s ease;}
.hm-card:hover{transform:translateY(-7px);border-color:var(--orange);box-shadow:0 20px 44px rgba(61,76,160,.14);}
.hm-ic{width:52px;height:52px;border-radius:14px;background:rgba(61,76,160,.09);display:flex;
 align-items:center;justify-content:center;margin-bottom:16px;transition:background .3s ease,transform .3s ease;}
.hm-card:hover .hm-ic{background:var(--orange);transform:scale(1.06);}
.hm-ic svg{width:25px;height:25px;color:var(--blue);transition:color .3s ease;}
.hm-card:hover .hm-ic svg{color:#fff;}
.hm-card h3{margin:0 0 9px;font:700 18px/1.35 Poppins,sans-serif;color:var(--dark);}
.hm-card p{margin:0;font-size:15px;line-height:1.68;color:var(--ink);}

/* why list */
.hm-why{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:42px;}
@media(max-width:1000px){.hm-why{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.hm-why{grid-template-columns:1fr;}}
.hm-why div{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);border-radius:14px;
 padding:24px 20px;text-align:center;transition:transform .3s cubic-bezier(.16,1,.3,1),background .3s ease,border-color .3s ease;}
.hm-why div:hover{transform:translateY(-6px);background:rgba(255,255,255,.15);border-color:var(--orange);}
.hm-why svg{width:26px;height:26px;color:var(--orange);margin-bottom:12px;}
.hm-why h3{margin:0 0 7px;font:700 15.5px/1.3 Poppins,sans-serif;color:#fff;}
.hm-why p{margin:0;font-size:13.8px;line-height:1.6;color:#C6CCE9;}

/* about split */
.hm-split{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;}
@media(max-width:900px){.hm-split{grid-template-columns:1fr;gap:34px;}}
.hm-split img{width:100%;height:400px;object-fit:cover;border-radius:18px;display:block;
 box-shadow:0 22px 50px rgba(19,26,38,.16);}
.hm-split h2{margin:0 0 16px;font:700 34px/1.2 Poppins,sans-serif;color:var(--dark);}
.hm-split p{margin:0 0 14px;font-size:16.5px;line-height:1.8;color:var(--ink);}

/* visit */
.hm-visit{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:center;margin-top:38px;}
@media(max-width:900px){.hm-visit{grid-template-columns:1fr;}}
.hm-visit iframe{width:100%;height:360px;border:0;border-radius:16px;display:block;box-shadow:0 18px 42px rgba(19,26,38,.16);}
.hm-addr{background:#fff;border:1px solid #E4E8F2;border-radius:16px;padding:30px 28px;}
.hm-addr .r{display:flex;gap:14px;padding:14px 0;border-top:1px solid #EDF0F6;}
.hm-addr .r:first-of-type{border-top:0;padding-top:0;}
.hm-addr svg{width:20px;height:20px;color:var(--blue);flex:0 0 auto;margin-top:2px;}
.hm-addr .k{font:700 11px/1.2 Poppins,sans-serif;letter-spacing:.09em;text-transform:uppercase;color:#8A93A6;margin:0 0 4px;}
.hm-addr .v{margin:0;font:600 16px/1.5 Poppins,sans-serif;color:var(--dark);}
.hm-addr .v a{color:var(--blue);text-decoration:none;}
.hm-addr .v a:hover{color:var(--orange);}
.hm-addr .btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px;}

/* final cta */
.hm-final{width:100vw;margin-left:calc(50% - 50vw);
 background:linear-gradient(135deg,#3D4CA0,#3D4CA0);padding:80px 20px;text-align:center;position:relative;overflow:hidden;}
.hm-final::before{content:"";position:absolute;width:520px;height:520px;top:-200px;left:50%;transform:translateX(-50%);
 background:radial-gradient(circle,rgba(249,160,56,.22),rgba(249,160,56,0) 70%);pointer-events:none;}
.hm-final h2{position:relative;margin:0 0 14px;font:700 36px/1.2 Poppins,sans-serif;color:#fff;}
.hm-final p{position:relative;margin:0 auto 28px;max-width:600px;font-size:17px;line-height:1.75;color:#C6CCE9;}
.hm-final .hm-ctas{position:relative;justify-content:center;margin-bottom:0;}
@media(max-width:768px){.hm-sec{padding:56px 16px;}.hm-h2{font-size:27px;}.hm-split h2{font-size:26px;}
 .hm-final{padding:56px 16px;}.hm-final h2{font-size:27px;}.hm-split img{height:280px;}}


/* --- home fixes --- */
.hm-reviews{margin-top:32px;overflow:hidden;}
.hm-reviews *{max-width:100%;}
.hm-split img{height:360px;}
.hm-split{align-items:stretch;}
.hm-split > div{display:flex;flex-direction:column;justify-content:center;}
.hm-rv{opacity:0;transform:translateY(22px);transition:opacity .62s cubic-bezier(.16,1,.3,1),transform .62s cubic-bezier(.16,1,.3,1);}
.hm-rv.in{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){.hm-rv{opacity:1 !important;transform:none !important;transition:none !important;}}
@media(max-width:900px){.hm-split img{height:300px;}}
@media(max-width:768px){.hm-split img{height:240px;}}

/* --- full-bleed scrollbar fix --- */
/* 100vw counts the scrollbar, so full-bleed sections overhang by its width.
   clip (not hidden) removes the sideways scroll without breaking sticky headers. */
html:has(.hm),body:has(.hm){overflow-x:clip;}
html:has(.ibmg-hero),body:has(.ibmg-hero){overflow-x:clip;}

/* --- interactive fix-the-screen --- */
/* wpautop injects stray <p> into grids — never let them become cells */
.hm-split > p, .hm-fixwrap > p, .hm-in > p:empty{display:none;}
.hm-split > img{grid-column:1;grid-row:1;}
.hm-split > div{grid-column:2;grid-row:1;}
@media(max-width:900px){.hm-split > img{grid-column:1;grid-row:1;}.hm-split > div{grid-column:1;grid-row:2;}}

.hm-fixwrap{display:grid;grid-template-columns:300px 1fr;gap:52px;align-items:center;margin-top:42px;}
@media(max-width:820px){.hm-fixwrap{grid-template-columns:1fr;justify-items:center;gap:32px;text-align:center;}}
.hm-phone{position:relative;width:280px;height:560px;border-radius:40px;background:#131A26;
 padding:11px;box-shadow:0 26px 60px rgba(19,26,38,.34),0 0 0 2px #2A3346 inset;}
.hm-screen{position:relative;width:100%;height:100%;border-radius:30px;overflow:hidden;
 background:linear-gradient(160deg,#3D4CA0 0%,#3D4CA0 40%,#F9A038 140%);}
.hm-screen canvas{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair;touch-action:none;}
.hm-notch{position:absolute;top:11px;left:50%;transform:translateX(-50%);width:96px;height:22px;
 background:#131A26;border-radius:0 0 14px 14px;z-index:3;}
.hm-scr-txt{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
 gap:6px;color:#fff;text-align:center;pointer-events:none;z-index:1;padding:0 22px;}
.hm-scr-txt b{font:700 21px/1.25 Poppins,sans-serif;}
.hm-scr-txt span{font:500 13px/1.5 Poppins,sans-serif;color:rgba(255,255,255,.82);}
.hm-fixmeta h3{margin:0 0 10px;font:700 24px/1.3 Poppins,sans-serif;color:var(--dark);}
.hm-fixmeta p{margin:0 0 18px;font-size:16px;line-height:1.7;color:var(--ink);}
.hm-bar{height:9px;border-radius:99px;background:#E4E8F2;overflow:hidden;margin-bottom:12px;max-width:340px;}
.hm-fixwrap .hm-bar{width:100%;}
.hm-bar i{display:block;height:100%;width:0;border-radius:99px;
 background:linear-gradient(90deg,#F9A038,#F9A038);transition:width .18s linear;}
.hm-stat{font:600 14.5px/1.5 Poppins,sans-serif;color:#3D4CA0;margin-bottom:20px;min-height:22px;}
.hm-stat.done{color:#2E9E4F;}
.hm-fixbtns{display:flex;flex-wrap:wrap;gap:10px;}
.hm-reset{background:transparent;border:2px solid #3D4CA0;color:#3D4CA0;border-radius:8px;
 padding:14px 24px;font:600 14.5px/1 Poppins,sans-serif;cursor:pointer;
 transition:background .2s ease,color .2s ease,transform .2s ease;}
.hm-reset:hover{background:#3D4CA0;color:#fff;transform:translateY(-2px);}

/* --- interactive concepts A/B/C --- */
.opt-tag{display:inline-block;background:#131A26;color:#F9A038;font:700 11px/1 Poppins,sans-serif;
 letter-spacing:.1em;text-transform:uppercase;padding:7px 13px;border-radius:99px;margin-bottom:14px;}

/* shared phone shell */
.rp-phone{position:relative;width:270px;height:540px;border-radius:38px;background:#0E1420;padding:10px;
 box-shadow:0 26px 60px rgba(19,26,38,.34),0 0 0 2px #232C3E inset;flex:0 0 auto;}
.rp-scr{position:relative;width:100%;height:100%;border-radius:29px;overflow:hidden;background:#101828;}
.rp-note{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:88px;height:20px;
 background:#0E1420;border-radius:0 0 12px 12px;z-index:6;}
.rp-wall{position:absolute;inset:0;background:linear-gradient(165deg,#3D4CA0,#3D4CA0 45%,#F9A038 145%);}
.rp-ui{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
 gap:5px;color:#fff;text-align:center;padding:0 20px;}
.rp-ui b{font:700 20px/1.25 Poppins,sans-serif;} .rp-ui span{font:500 12.5px/1.5 Poppins,sans-serif;color:rgba(255,255,255,.85);}

/* ── A: drag-to-reveal ── */
.rpA{display:flex;gap:48px;align-items:center;flex-wrap:wrap;justify-content:center;margin-top:34px;}
.rpA .broken{position:absolute;inset:0;z-index:3;clip-path:inset(0 calc(100% - var(--p,50%)) 0 0);}
.rpA .broken .tint{position:absolute;inset:0;background:rgba(8,11,20,.55);}
.rpA .broken svg{position:absolute;inset:0;width:100%;height:100%;}
.rpA .handle{position:absolute;top:0;bottom:0;left:var(--p,50%);width:2px;background:#F9A038;z-index:5;
 box-shadow:0 0 14px rgba(249,160,56,.85);}
.rpA .grip{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:42px;height:42px;
 border-radius:50%;background:#F9A038;display:flex;align-items:center;justify-content:center;
 box-shadow:0 6px 18px rgba(19,26,38,.4);color:#fff;font:700 15px/1 Poppins,sans-serif;}
.rpA .rp-scr{cursor:ew-resize;touch-action:none;}
.rpA .lbl{position:absolute;bottom:16px;font:700 11px/1 Poppins,sans-serif;letter-spacing:.09em;
 text-transform:uppercase;padding:6px 11px;border-radius:99px;z-index:6;}
.rpA .lbl.l{left:14px;background:rgba(214,69,69,.92);color:#fff;}
.rpA .lbl.r{right:14px;background:rgba(46,158,79,.94);color:#fff;}
.rpA .copy{max-width:420px;}
.rpA .copy h3{margin:0 0 10px;font:700 24px/1.3 Poppins,sans-serif;color:#131A26;}
.rpA .copy p{margin:0 0 18px;font-size:16px;line-height:1.7;color:#3C4658;}

/* ── B: picker ── */
.rpB{max-width:820px;margin:32px auto 0;}
.rpB .step{margin-bottom:22px;}
.rpB .lab{font:700 11.5px/1 Poppins,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#8A93A6;margin-bottom:12px;}
.rpB .chips{display:flex;flex-wrap:wrap;gap:10px;}
.rpB button.chip{background:#fff;border:2px solid #E4E8F2;border-radius:99px;padding:13px 22px;cursor:pointer;
 font:600 14.5px/1 Poppins,sans-serif;color:#131A26;display:inline-flex;align-items:center;gap:9px;
 transition:border-color .2s ease,background .2s ease,color .2s ease,transform .2s ease;}
.rpB button.chip:hover{border-color:#3D4CA0;transform:translateY(-2px);}
.rpB button.chip.on{background:#3D4CA0;border-color:#3D4CA0;color:#fff;}
.rpB button.chip svg{width:18px;height:18px;}
.rpB .step.off{opacity:.4;pointer-events:none;}
.rpB .out{background:#fff;border:1px solid #E4E8F2;border-left:5px solid #2E9E4F;border-radius:14px;
 padding:26px 28px;margin-top:8px;display:none;box-shadow:0 14px 32px rgba(61,76,160,.10);}
.rpB .out.show{display:block;animation:rpUp .4s cubic-bezier(.16,1,.3,1);}
@keyframes rpUp{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:none;}}
.rpB .out h3{margin:0 0 8px;font:700 21px/1.3 Poppins,sans-serif;color:#131A26;}
.rpB .out p{margin:0 0 16px;font-size:15.5px;line-height:1.7;color:#3C4658;}
.rpB .meta{display:flex;flex-wrap:wrap;gap:22px;margin-bottom:18px;}
.rpB .meta div{font:600 14px/1.4 Poppins,sans-serif;color:#3D4CA0;display:flex;align-items:center;gap:7px;}
.rpB .meta svg{width:16px;height:16px;color:#F9A038;}

/* ── C: journey ── */
.rpC{margin-top:38px;display:grid;grid-template-columns:1fr 300px;gap:52px;align-items:center;}
@media(max-width:900px){.rpC{grid-template-columns:1fr;justify-items:center;}}
.rpC ol{list-style:none;margin:0;padding:0;position:relative;}
.rpC ol::before{content:"";position:absolute;left:21px;top:12px;bottom:12px;width:2px;background:#E4E8F2;}
.rpC ol::after{content:"";position:absolute;left:21px;top:12px;width:2px;height:0;background:#F9A038;
 transition:height 1.2s cubic-bezier(.16,1,.3,1);}
.rpC.go ol::after{height:calc(100% - 24px);}
.rpC li{position:relative;padding:0 0 30px 60px;}
.rpC li:last-child{padding-bottom:0;}
.rpC .dot{position:absolute;left:0;top:0;width:44px;height:44px;border-radius:50%;background:#fff;
 border:2px solid #E4E8F2;display:flex;align-items:center;justify-content:center;
 font:700 16px/1 Poppins,sans-serif;color:#8A93A6;transition:all .45s ease;}
.rpC.go li .dot{border-color:#F9A038;background:#F9A038;color:#fff;}
.rpC.go li:nth-child(2) .dot{transition-delay:.3s;} .rpC.go li:nth-child(3) .dot{transition-delay:.6s;}
.rpC.go li:nth-child(4) .dot{transition-delay:.9s;}
.rpC h4{margin:6px 0 6px;font:700 18px/1.3 Poppins,sans-serif;color:#131A26;}
.rpC p{margin:0;font-size:15px;line-height:1.65;color:#3C4658;}
.rpC .crackfade{position:absolute;inset:0;z-index:3;opacity:1;transition:opacity 1.6s ease 1s;}
.rpC.go .crackfade{opacity:0;}
.rpC .crackfade .tint{position:absolute;inset:0;background:rgba(8,11,20,.55);}
.rpC .crackfade svg{position:absolute;inset:0;width:100%;height:100%;}


/* ===== IBMG HEADER SPACING =====
   Elementor makes the header section position:fixed and inserts a sticky spacer,
   but the spacer measures 0 because the logo has no intrinsic size at that moment.
   Result: every page's first 45-75px sat underneath the logo. Reserve it here. */
/* Header overlays the dark hero on every built page, matching ibrokemygadget.co.uk.
   Blog, archives, single posts, search and 404 have no hero, so they keep the
   reserved height and their content is never covered. */
.elementor-location-header{min-height:0;}
body.blog .elementor-location-header,body.archive .elementor-location-header,body.single .elementor-location-header,body.search .elementor-location-header,body.error404 .elementor-location-header{min-height:76px;}
@media(max-width:1024px){body.blog .elementor-location-header,body.archive .elementor-location-header,body.single .elementor-location-header,body.search .elementor-location-header,body.error404 .elementor-location-header{min-height:56px;}}
@media(max-width:767px){body.blog .elementor-location-header,body.archive .elementor-location-header,body.single .elementor-location-header,body.search .elementor-location-header,body.error404 .elementor-location-header{min-height:88px;}}
/* breathing room so header content never touches the screen edge */
@media(max-width:1024px){
 .elementor-location-header .elementor-container{padding-left:16px;padding-right:16px}
}
@media(max-width:479px){
 .elementor-location-header .elementor-container{padding-left:14px;padding-right:14px}
}


/* ===== IBMG GLOBAL OVERFLOW GUARD =====
   Full-bleed sections use 100vw, which counts the scrollbar and overhangs by its width.
   clip (not hidden) removes the sideways scroll without breaking the sticky header. */
html,body{overflow-x:clip}


/* ===== IBMG MOBILE MENU =====
   The panel is relocated to <body> by script because the sticky header
   creates a containing block that clips position:fixed children. */
@media(min-width:1025px){body > nav.elementor-nav-menu--dropdown{display:none!important}}
@media(max-width:1024px){
 .elementor-widget-nav-menu .elementor-menu-toggle{width:46px;height:46px;border-radius:12px;background:rgba(255,255,255,.16);color:#fff;display:flex;align-items:center;justify-content:center;padding:0;margin-left:auto;margin-right:0;transition:background .2s ease} .elementor-widget-nav-menu .elementor-nav-menu-toggle,.elementor-widget-nav-menu .elementor-widget-container{display:flex;justify-content:flex-end;}
 .elementor-widget-nav-menu .elementor-menu-toggle svg{width:24px;height:24px;fill:#fff}
 body > nav.elementor-nav-menu--dropdown{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;max-width:none!important;height:100dvh!important;min-height:100dvh!important;max-height:none!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:linear-gradient(168deg,#3D4CA0 0%,#3D4CA0 62%,#3D4CA0 100%)!important;z-index:99998;display:flex!important;flex-direction:column;justify-content:center;padding:96px 26px 30px;overflow-y:auto;overscroll-behavior:contain;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-10px);transition:opacity .26s ease,transform .26s ease,visibility .26s}
 body > nav.elementor-nav-menu--dropdown.ibmg-open{opacity:1;visibility:visible;pointer-events:auto;transform:none}
 body > nav.elementor-nav-menu--dropdown .elementor-nav-menu{width:100%;max-width:420px;margin:0 auto;display:block}
 body > nav.elementor-nav-menu--dropdown .elementor-nav-menu li{border:0;list-style:none}
 body > nav.elementor-nav-menu--dropdown a.elementor-item{display:block;color:#fff!important;background:transparent!important;font-size:22px;line-height:1.25;font-weight:600;padding:16px 4px!important;border-bottom:1px solid rgba(255,255,255,.14);letter-spacing:-.01em;text-decoration:none}
 body > nav.elementor-nav-menu--dropdown a.elementor-item:hover,
 body > nav.elementor-nav-menu--dropdown a.elementor-item:focus,
 body > nav.elementor-nav-menu--dropdown a.elementor-item-active{color:#F9A038!important}
 .ibmg-menu-close{position:absolute;top:18px;right:18px;width:46px;height:46px;display:flex;align-items:center;justify-content:center;border:0;border-radius:12px;background:rgba(255,255,255,.16);color:#fff;cursor:pointer;padding:0}
 .ibmg-menu-close svg{width:22px;height:22px;display:block}
 .ibmg-menu-close:focus-visible{outline:3px solid #F9A038;outline-offset:2px}
 .ibmg-menu-cta{width:100%;max-width:420px;margin:28px auto 0;display:flex;flex-direction:column;gap:10px}
 .ibmg-menu-cta a{display:flex;align-items:center;justify-content:center;min-height:52px;border-radius:12px;font-size:16px;font-weight:600;text-decoration:none;transition:transform .15s ease}
 .ibmg-menu-cta a:active{transform:scale(.98)}
 .ibmg-menu-cta .b1{background:#F9A038;color:#2A1E04}
 .ibmg-menu-cta .b2{border:1.5px solid rgba(255,255,255,.55);color:#fff}
 body.ibmg-menu-open{overflow:hidden}
}
@media(max-width:360px){
 body > nav.elementor-nav-menu--dropdown{padding:88px 20px 24px}
 body > nav.elementor-nav-menu--dropdown a.elementor-item{font-size:19px;padding:14px 4px!important}
}
@media (prefers-reduced-motion:reduce){body > nav.elementor-nav-menu--dropdown{transition:none}}


/* ===== IBMG HERO PHOTO FRAME =====
   The original frame was a 14% white border and a dark shadow, both of which
   disappear against the navy hero. Same idea, made visible. */
.hm-shot-img{border:6px solid rgba(255,255,255,.72);box-shadow:0 28px 60px rgba(3,7,28,.55),0 8px 20px rgba(3,7,28,.34);}
@media(max-width:767px){.hm-shot-img{border-width:5px;box-shadow:0 18px 38px rgba(3,7,28,.5),0 5px 14px rgba(3,7,28,.3);}}
/* wpautop drops an empty paragraph inside the photo wrapper; never let it take space */
.hm-shot > p:empty{display:none;}


/* ===== IBMG ELEMENTOR IMG RESET FIX =====
   Elementor ships `.elementor img{border:none;border-radius:0;box-shadow:none}`.
   Inside an Elementor page that reset outranks .hm-shot-img and strips the frame,
   so the same markup looked framed on Home (new) and flat on Home Final. */
.elementor .hm-shot-img,.hm-shot-img{border:6px solid rgba(255,255,255,.72);border-radius:20px;box-shadow:0 28px 60px rgba(3,7,28,.55),0 8px 20px rgba(3,7,28,.34);}
@media(max-width:767px){.elementor .hm-shot-img,.hm-shot-img{border-width:5px;box-shadow:0 18px 38px rgba(3,7,28,.5),0 5px 14px rgba(3,7,28,.3);}}


/* ===== IBMG BURGER ALIGNMENT =====
   The nav widget sits in a three column header row and the toggle was centring
   inside its own column, leaving a gap at the right edge. Push it to the edge so
   it mirrors the logo's gutter on the left. */
@media(max-width:1024px){
 .elementor-widget-nav-menu > .elementor-widget-container{display:flex;justify-content:flex-end;}
 .elementor-widget-nav-menu .elementor-menu-toggle{margin-left:auto!important;margin-right:0!important;}
}


/* ===== IBMG FONT STACK =====
   Matches the live site: Inter for body copy, Poppins for headings and buttons.
   Body was previously falling back to the device system font, so paragraphs
   rendered differently on iPhone, Android and Windows. */
body,button,input,select,textarea,.wpcf7 input,.wpcf7 select,.wpcf7 textarea{font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;}
h1,h2,h3,h4,h5,h6{font-family:'Poppins',sans-serif;}


/* ===== IBMG HOME HEADER OVERLAY =====
   Matches ibrokemygadget.co.uk: on the front page the transparent header sits
   directly over the dark hero instead of on a white band above it. Every other
   page keeps the reserved header height so content is never covered. */


/* ===== IBMG HERO TOP MARGIN RESET =====
   These heroes carried a negative top margin from when the header reserved
   space above them. The header now overlays instead, so the negative margin
   dragged the headings up underneath it. */
.ibmg-hero,.ibmg-policy-hero,.hm-hero{margin-top:0!important;}/* End custom CSS */