.bf-preview-notice{background:#292234;color:#fff;text-align:center;padding:10px 20px;font-size:13px;letter-spacing:.04em}.build-flow{max-width:1200px!important;margin:64px auto!important;padding:56px 40px 0!important;background:#f0e9fa!important;border-radius:32px;color:#282230;scroll-margin-top:90px}.build-flow *{box-sizing:border-box}.build-flow [hidden]{display:none!important}.bf-intro{text-align:center;max-width:800px;margin:0 auto 40px}.bf-intro h2{font-size:clamp(36px,4vw,56px);line-height:1.1;margin:12px 0 16px}.bf-intro>p:not(.eyebrow){font-size:19px}.bf-path{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;margin-top:28px;font-size:13px;font-weight:700;color:#7146be}.bf-step{padding:30px 0;border-top:1px solid #d5c7e6}.bf-step-heading{display:flex;gap:16px;align-items:flex-start;margin-bottom:26px}.bf-number{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:50%;background:#6932df;color:#fff;font-weight:700;font-size:14px}.bf-step-heading h3{font-size:25px;line-height:1.25;margin:2px 0 8px}.bf-step-heading p{margin:0;font-size:15px;line-height:1.5;color:#62596c}.bf-packages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.bf-package{font:inherit;text-align:left;background:#fffaf3;color:#282230;border:2px solid transparent;border-radius:20px;padding:24px;cursor:pointer;display:flex;flex-direction:column;gap:12px;box-shadow:0 3px 12px #38214906;min-width:0}.bf-package:hover{border-color:#a380de}.bf-package:focus-visible,.build-flow button:focus-visible,.build-flow a:focus-visible{outline:3px solid #5630ab;outline-offset:4px}.bf-package[aria-pressed=true]{border-color:#6932df;background:#fffdf8;box-shadow:0 0 0 3px #6932df13}.bf-card-top{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:12px;font-weight:700;color:#73509e}.bf-check{display:grid;place-items:center;border:1px solid #c5b5d6;border-radius:50%;width:24px;height:24px;color:transparent;flex-shrink:0}.bf-package[aria-pressed=true] .bf-check{background:#6932df;color:#fff;border-color:#6932df}.bf-package>strong{font-size:29px;line-height:1.2}.bf-duration{font-size:15px}.bf-price{font-size:34px;font-weight:800;line-height:1.3}.bf-price small{font-size:13px}.bf-inclusion{font-size:13px;line-height:1.8;margin-bottom:8px}.bf-card-action{margin-top:auto;padding-top:15px;border-top:1px solid #e4d8ed;color:#6932df;font-size:14px;font-weight:700}.bf-essentials{font-size:14px;line-height:1.6;margin:22px 0 14px;color:#62596c}.bf-help{font:inherit;border:0;background:none;color:#6932df;text-decoration:underline;text-underline-offset:4px;font-size:14px;padding:6px 0;cursor:pointer}#bf-unsure-note{max-width:700px;font-size:15px}.bf-workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:38px;align-items:start}.build-flow form{display:block;max-width:none;background:none;padding:0;border:0;margin:0}.bf-summary{position:sticky;top:105px;background:#292234;color:#fff;border-radius:22px;padding:26px;margin-top:30px}.bf-summary .eyebrow{color:#d9ff80;font-size:11px}.bf-summary h3{font-size:28px;margin:16px 0 6px}.bf-summary>p{font-size:13px;line-height:1.7;color:#e3dbea;margin:10px 0 18px}.bf-summary-lines{border-top:1px solid #544760;padding-top:15px;font-size:13px;line-height:1.6}.bf-summary-lines p{display:flex;justify-content:space-between;gap:12px;margin:0 0 12px;font-size:13px}.bf-total{border-top:1px solid #544760;margin-top:16px;padding-top:20px;display:flex;flex-direction:column;gap:6px}.bf-total>span{font-size:12px;color:#d2c6df}.bf-total strong{font-size:32px;color:#d9ff80}.bf-summary-next{font-size:13px;font-weight:700;color:#e3cdff;display:block;margin:20px 0}.bf-summary small{display:block;color:#c6b8d1;font-size:11px;line-height:1.6}.bf-extra{display:grid!important;grid-template-columns:22px minmax(0,1fr) auto!important;align-items:start!important;gap:12px!important;padding:20px!important;background:#fffaf3;border:1px solid #d8c9e7;border-radius:14px;margin:0 0 12px!important;cursor:pointer;font-size:14px!important}.bf-extra input{width:20px!important;height:20px!important;margin:2px 0 0!important;accent-color:#6932df}.bf-extra strong{display:block;font-size:15px;line-height:1.45}.bf-extra small{display:block;font-size:12px;line-height:1.65;color:#75677f;margin-top:6px}.bf-extra b{font-size:14px;white-space:nowrap;color:#6932df;line-height:1.8}.bf-extra:has(input:checked){border-color:#6932df;box-shadow:0 0 0 1px #6932df}.bf-extra:has(input:disabled){opacity:.6;cursor:default}.bf-effects{margin-bottom:12px;background:#fffaf3;border-radius:14px;border:1px solid #d8c9e7}.bf-effects .bf-extra{border:0;margin:0!important;background:transparent}.bf-effects:has(input:checked){border-color:#6932df}.bf-effects .bf-extra:has(input:checked){box-shadow:none}.bf-sample{display:flex;gap:10px;align-items:center;margin:0 20px 18px 54px;font-size:12px;color:#6932df;font-weight:600}.bf-sample button{width:32px;height:32px;flex:0 0 32px;border-radius:50%;border:0;background:#6932df;color:white;cursor:pointer}.bf-note{font-size:12px!important;color:#75677f;line-height:1.7;margin:14px 0!important}.bf-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.bf-wide{grid-column:1/-1}.bf-fields label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;min-width:0}.bf-fields label>span{display:contents;font-weight:400}.bf-fields input,.bf-fields select,.bf-fields textarea{width:100%;min-width:0;max-width:100%;border:1px solid #cbbbdc;border-radius:10px;background:#fffdf9;color:#282230;padding:13px 14px;font:inherit;font-size:15px;line-height:1.5;margin:0;box-shadow:none}.bf-fields input:focus,.bf-fields select:focus,.bf-fields textarea:focus{outline:2px solid #9b73e6;outline-offset:1px}.bf-contact{border:0;padding:0;margin:22px 0;display:flex;gap:12px;flex-wrap:wrap}.bf-contact legend{font-size:14px;font-weight:600;margin-bottom:10px}.bf-contact label{display:flex;gap:10px;align-items:center;background:#fffaf3;border:1px solid #cbbbdc;border-radius:10px;padding:12px 18px;font-size:14px;cursor:pointer}.bf-contact input{width:18px;height:18px;margin:0;accent-color:#6932df}.bf-review{padding:20px 0;border-top:1px solid #d5c7e6;margin-top:24px}.bf-review>span{font-size:11px;font-weight:700;letter-spacing:.1em;color:#6932df}.bf-review p{font-size:15px;line-height:1.8;margin:8px 0 0}.bf-send{margin:4px 0 8px!important}.bf-reassurance{display:flex;gap:20px;justify-content:space-between;border-top:1px solid #d5c7e6;padding:24px 0;font-size:12px;color:#62596c}.build-flow #bf-result:not(:empty){padding:18px;border-radius:12px;background:#dfff95;color:#282230;font-size:14px;line-height:1.6}.build-flow #enquire{background:none!important;padding:30px 0!important;margin:0!important;border-radius:0!important;scroll-margin-top:100px}
@media(max-width:900px){.build-flow{margin:32px 20px!important;padding:32px 24px 0!important}.bf-workspace{grid-template-columns:minmax(0,1fr) 260px;gap:24px}.bf-package{padding:18px}.bf-card-top{min-height:32px}.bf-reassurance{flex-wrap:wrap}}
@media(max-width:700px){.bf-workspace{display:block}.bf-summary{display:none}.bf-packages{grid-template-columns:1fr}.bf-package{display:grid;grid-template-columns:1fr auto;gap:9px 16px;padding:20px}.bf-card-top{grid-column:1/-1;min-height:0}.bf-package>strong{font-size:26px}.bf-duration{grid-column:1;grid-row:3}.bf-price{grid-column:2;grid-row:2/4;align-self:center;font-size:29px}.bf-inclusion,.bf-card-action{grid-column:1/-1}.bf-intro{text-align:left;margin-bottom:25px}.bf-path{gap:10px 18px;justify-content:flex-start}.bf-step-heading h3{font-size:22px}.bf-step-heading{gap:12px}.bf-number{width:32px;height:32px;flex-basis:32px;font-size:12px}.bf-extra{padding:16px!important;gap:10px!important}.bf-extra strong{font-size:14px}.bf-extra b{font-size:12px}.bf-fields{grid-template-columns:1fr}.bf-reassurance{display:grid;gap:12px}.bf-send{width:100%;text-align:center}.bf-sample{margin-left:48px}.build-flow{padding:28px 18px 0!important;margin:28px 14px!important;border-radius:22px}}
/* A short celebration confined to the heading; the form stays calm. */
.bf-intro{position:relative;isolation:isolate;overflow:hidden;padding:28px 20px 30px;margin-top:-20px;border-radius:26px;max-width:100%}
.bf-intro>h2,.bf-intro>p,.bf-intro>.bf-path{position:relative;z-index:1}
.bf-intro h2{color:#5730aa;text-shadow:0 2px 0 #fff8}
.bf-intro::before{content:"";position:absolute;inset:8% 12%;z-index:-1;background:radial-gradient(ellipse,#dfff9a66 0%,#e6d4ff55 45%,transparent 72%);pointer-events:none}
.bf-confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;opacity:.35}
.bf-confetti-piece{position:absolute;left:var(--x);top:12%;width:8px;height:14px;background:#8c53e9;transform:translateY(35px) rotate(25deg);opacity:0}
.bf-confetti-piece:nth-child(3n){top:63%}.bf-confetti-piece:nth-child(4n){top:30%}.bf-confetti-piece.colour-1{background:#cfef58}.bf-confetti-piece.colour-2{background:#ee88b7}.bf-confetti-piece.colour-3{background:#a78ae8}
.bf-confetti-piece.shape-1{width:10px;height:10px;border-radius:50%}.bf-confetti-piece.shape-2{width:14px;height:6px;border-radius:4px}.bf-confetti-piece.shape-3{width:13px;height:13px;clip-path:polygon(50% 0,61% 35%,100% 50%,62% 61%,50% 100%,38% 62%,0 50%,35% 38%)}
.bf-celebrating .bf-confetti{opacity:.8}.bf-celebrating .bf-confetti-piece{animation:bf-confetti-float var(--duration) var(--delay) linear infinite}
.bf-celebrating h2{animation:bf-title-arrive .75s ease-out both}
@keyframes bf-confetti-float{0%{transform:translate(0,-45px) rotate(0);opacity:0}15%{opacity:.8}80%{opacity:.65}100%{transform:translate(var(--drift),210px) rotate(var(--turn));opacity:0}}
@keyframes bf-title-arrive{from{transform:translateY(8px) scale(.98);opacity:.5}to{transform:none;opacity:1}}
@media(prefers-reduced-motion:reduce){.bf-confetti-piece{animation:none!important;opacity:.5;transform:rotate(25deg)}.bf-intro h2{animation:none!important}}
@media(max-width:700px){.bf-intro{padding:22px 8px 20px}.bf-confetti-piece{width:6px;height:10px}.bf-confetti{opacity:.25}.bf-celebrating .bf-confetti{opacity:.5}}
/* Keep all builder steps inside the same panel, overriding the former full-bleed sections. */
.visual-concept .build-flow #enquire,.visual-concept .build-flow #pricing{background:transparent!important;box-shadow:none!important;clip-path:none!important}
