/* Apple-inspired navy-to-sky palette */
:root{--flos-navy:#022640;--flos-blue:#5786ab;--flos-sky:#9bbbd1;--flos-ice:#dceaf3}
.brand{font-size:1.2rem;font-weight:730;letter-spacing:-.035em}
.packages .section-head h2,.process-sticky h2,.contact-heading h2{background:linear-gradient(90deg,var(--flos-navy),var(--flos-blue));-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.hero h1,.hero h1 span{text-shadow:none}
.hero h1{padding:.03em 0 .09em;line-height:1.04}
.hero h1 span{background:linear-gradient(90deg,#022640 0%,#315f82 25%,#7fa6c2 44%,#dceaf3 52%,#5786ab 66%,#022640 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;filter:none;animation:headline-liquid-shimmer 6.8s linear infinite}
@keyframes headline-liquid-shimmer{to{background-position:200% 50%}}

/* CanvasUI-inspired glass metaball bubble on a clean surface. */
.hero{position:relative;isolation:isolate;background:#fff;touch-action:pan-y}
.hero::after{display:none;background:none}
.ascii-hero{z-index:0;opacity:.16;filter:grayscale(1) contrast(.78) brightness(1.04);mix-blend-mode:multiply}
.hero-bubble{position:absolute;z-index:3;inset:0;width:100%;height:100%;display:block;pointer-events:none;mix-blend-mode:normal;filter:none;mask-image:none;-webkit-mask-image:none}
.hero-bubble-ambient{display:none}
.hero-copy{z-index:4}

/* Give gradient-clipped headings room for descenders such as "j". */
.process-sticky h2{padding:.04em 0 .12em;line-height:1.08;overflow:visible;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.section-head h2{padding-bottom:.1em;line-height:1.07}.package h3{padding-bottom:.08em;line-height:1.08}

/* Ocean pulse based on border-beam pulse-inner */
.package:not(.pulse-beam)::before,.package:not(.pulse-beam)::after{display:none}
.pulse-beam{--bb-strength:.7;--bb-hue:0deg;--bb-bw1:1;--bb-bh1:1;--bb-bw2:1;--bb-bh2:1;--bb-bw3:1;--bb-bh3:1;--bb-bgh:1;--bb-bx1:0px;--bb-by1:0px;--bb-bx2:0px;--bb-by2:0px;--bb-bx3:0px;--bb-by3:0px;--bb-op-tl:1;--bb-op-tr:1;--bb-op-bl:1;--bb-op-br:1;position:relative;overflow:hidden;isolation:isolate}
.pulse-beam>*:not(.pulse-bloom){position:relative;z-index:4}
.pulse-beam::after,.pulse-beam::before,.pulse-beam .pulse-bloom{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;will-change:opacity,filter}
.pulse-beam::after{z-index:2;padding:1px;background:
 radial-gradient(ellipse calc(82px * var(--bb-bw1)) calc(42px * var(--bb-bh1) * var(--bb-bgh)) at calc(28% + var(--bb-bx1)) calc(-5% + var(--bb-by1)),#022640,transparent),
 radial-gradient(ellipse calc(72px * var(--bb-bw2)) calc(38px * var(--bb-bh2) * var(--bb-bgh)) at calc(12% + var(--bb-bx2)) calc(2% + var(--bb-by2)),#5786ab,transparent),
 radial-gradient(ellipse calc(42px * var(--bb-bw3)) calc(78px * var(--bb-bh3) * var(--bb-bgh)) at calc(0% + var(--bb-bx3)) calc(66% + var(--bb-by3)),#7fa6c2,transparent),
 radial-gradient(ellipse calc(32px * var(--bb-bw1)) calc(55px * var(--bb-bh1) * var(--bb-bgh)) at calc(100% + var(--bb-bx1)) calc(30% + var(--bb-by1)),#315f82,transparent),
 radial-gradient(ellipse calc(190px * var(--bb-bw2)) calc(34px * var(--bb-bh2) * var(--bb-bgh)) at calc(73% + var(--bb-bx2)) calc(100% + var(--bb-by2)),#5786ab,transparent),
 radial-gradient(ellipse calc(96px * var(--bb-bw3)) calc(28px * var(--bb-bh3) * var(--bb-bgh)) at calc(50% + var(--bb-bx3)) calc(100% + var(--bb-by3)),#9bbbd1,transparent),
 radial-gradient(ellipse calc(86px * var(--bb-bw1)) calc(34px * var(--bb-bh1) * var(--bb-bgh)) at calc(94% + var(--bb-bx1)) calc(0% + var(--bb-by1)),#dceaf3,transparent);
 -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;opacity:calc(.96 * var(--bb-strength));filter:hue-rotate(var(--bb-hue)) saturate(1.08)}
.pulse-beam::before{z-index:1;background:radial-gradient(ellipse 100px 58px at 8% 0%,rgba(87,134,171,var(--bb-op-tl)),transparent),radial-gradient(ellipse 124px 52px at 89% 0%,rgba(155,187,209,var(--bb-op-tr)),transparent),radial-gradient(ellipse 82px 112px at 0% 86%,rgba(49,95,130,var(--bb-op-bl)),transparent),radial-gradient(ellipse 190px 58px at 74% 100%,rgba(87,134,171,var(--bb-op-br)),transparent);-webkit-mask-image:linear-gradient(#fff,transparent 34px,transparent calc(100% - 34px),#fff),linear-gradient(90deg,#fff,transparent 34px,transparent calc(100% - 34px),#fff);-webkit-mask-composite:source-over;mask-image:linear-gradient(#fff,transparent 34px,transparent calc(100% - 34px),#fff),linear-gradient(90deg,#fff,transparent 34px,transparent calc(100% - 34px),#fff);mask-composite:add;opacity:calc(.24 * var(--bb-strength));filter:hue-rotate(var(--bb-hue))}
.pulse-beam .pulse-bloom{display:block;z-index:3;padding:1px;background:radial-gradient(ellipse 120px 62px at 25% 0%,rgba(2,38,64,.46),transparent),radial-gradient(ellipse 110px 58px at 75% 0%,rgba(155,187,209,.5),transparent),radial-gradient(ellipse 64px 116px at 100% 42%,rgba(49,95,130,.44),transparent),radial-gradient(ellipse 155px 52px at 66% 100%,rgba(87,134,171,.5),transparent),radial-gradient(ellipse 76px 116px at 0% 66%,rgba(127,166,194,.44),transparent);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;opacity:calc(.48 * var(--bb-strength));filter:blur(8px) hue-rotate(var(--bb-hue))}
.package.light-pulse{--bb-strength:.78}.branding-package{--bb-strength:.72}.contact-form.pulse-beam{--bb-strength:.48}
.branding-package,.package.featured.branding-package{border-color:rgba(29,29,31,.08);background:rgba(255,255,255,.9);color:#1d1d1f;box-shadow:0 20px 58px rgba(24,46,62,.07),inset 0 1px 0 #fff}
.branding-package .package-sub,.branding-package .scope{color:#6e6e73}.branding-package .package-details{border-color:rgba(29,29,31,.1)}.branding-package .package-details small{color:#77777d}.branding-package .package-number{border-color:rgba(29,29,31,.18)}.branding-package .scope li::before{color:#1d1d1f}.branding-package .button,.package.featured.branding-package .button{background:#fff;color:#1d1d1f;box-shadow:inset 0 .5px 0 #fff,0 10px 28px rgba(29,29,31,.1)}
.contact-form.pulse-beam::after{opacity:calc(.5 * var(--bb-strength))}.contact-form.pulse-beam::before{opacity:calc(.18 * var(--bb-strength))}.contact-form.pulse-beam .pulse-bloom{opacity:calc(.3 * var(--bb-strength))}

/* Remove green/mint from the metallic button treatment */
.button::before{background:conic-gradient(from var(--metal-angle),#4b5660 0deg,#022640 55deg,#7fa6c2 118deg,#dceaf3 175deg,#5786ab 235deg,#f4f8fb 294deg,#315f82 338deg,#4b5660 360deg)}
.button::after{background:conic-gradient(from var(--metal-angle),transparent 5%,rgba(2,38,64,.36),rgba(87,134,171,.32),rgba(220,234,243,.42),transparent 72%)}

/* Offers 03 and 04 */
.start-bundle{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:clamp(20px,4vw,54px);max-width:980px;margin:18px auto 0;padding:22px 24px;border:1px solid rgba(29,29,31,.09);border-radius:22px;background:rgba(255,255,255,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 18px 54px rgba(29,29,31,.05);backdrop-filter:blur(20px) saturate(120%);-webkit-backdrop-filter:blur(20px) saturate(120%)}
.start-bundle>*,.contact-top>*,.contact-form>*,.package-details>*{min-width:0}
.bundle-copy{display:grid;gap:3px}.bundle-copy small{color:#6e7881;font-size:.68rem;font-weight:720;letter-spacing:.07em;text-transform:uppercase}.bundle-copy strong{font-size:clamp(1.08rem,1.6vw,1.34rem);font-weight:620;letter-spacing:-.018em}.bundle-price{display:grid;gap:1px;text-align:right}.bundle-price strong{font-size:1.28rem;letter-spacing:-.025em}.bundle-price span{color:#737b82;font-size:.72rem}.start-bundle .button{min-height:44px;padding-inline:18px;font-size:.78rem}
.bundle-copy strong,.bundle-price strong,.contact-channel strong{overflow-wrap:anywhere}
.advanced-offer{border-color:rgba(255,255,255,.12);background:linear-gradient(120deg,#061b2a,#174e70);color:#f5f5f7;box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 22px 62px rgba(2,38,64,.15)}.advanced-offer .bundle-copy small,.advanced-offer .bundle-price span{color:rgba(255,255,255,.62)}.advanced-offer .bundle-price strong{background:none;color:#fff;-webkit-text-fill-color:#fff}.advanced-offer .button{background:#fff;color:#022640}

/* Rebuilt contact section */
.contact{padding:clamp(84px,9vw,130px) 0 28px;background:#f5f5f7;color:#1d1d1f;border-radius:0;border-top:1px solid rgba(29,29,31,.08)}
.contact-heading{max-width:900px;margin:0 auto clamp(38px,6vw,68px);text-align:center}.contact-heading .eyebrow{color:#59636b}.contact-heading h2{max-width:880px;margin:15px auto 20px;padding:.03em 0 .1em;font-size:clamp(3rem,6vw,6rem);font-weight:620;line-height:1.06;letter-spacing:-.035em;overflow:visible;-webkit-box-decoration-break:clone;box-decoration-break:clone}.contact-heading p{max-width:580px;margin:0 auto;color:#6e6e73;font-size:1rem}
.contact-top{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:18px;max-width:1080px;margin-inline:auto;align-items:stretch}
.contact-card{display:flex;min-height:100%;flex-direction:column;padding:clamp(25px,4vw,42px);border-radius:26px;background:linear-gradient(145deg,#021f34,#164968);color:#fff;box-shadow:0 28px 80px rgba(2,38,64,.16),inset 0 1px 0 rgba(255,255,255,.16)}
.contact-card small{display:block;color:rgba(255,255,255,.56);font-size:.67rem;font-weight:720;letter-spacing:.075em;text-transform:uppercase}.contact-card h3{margin:8px 0 12px;font-size:clamp(2.1rem,4vw,3.8rem);font-weight:580;line-height:1;letter-spacing:-.04em}.contact-card p{margin:0;color:rgba(255,255,255,.7);font-size:.9rem}.contact-card .button{align-self:flex-start;margin-top:25px;background:#fff;color:#022640}
.contact-channels{display:grid;gap:1px;margin-top:clamp(34px,6vw,62px);border-top:1px solid rgba(255,255,255,.14)}.contact-channel{display:grid;gap:3px;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.14)}.contact-channel strong{font-size:.92rem;font-weight:560}.contact-channel:hover strong{color:#c8deed}
.company-card{margin-top:auto;padding-top:26px}.company-card strong{display:block;margin:7px 0 3px;font-size:.9rem}.company-card address{color:rgba(255,255,255,.64);font-size:.78rem;font-style:normal;line-height:1.5}.company-nip{display:block;margin-top:8px;color:rgba(255,255,255,.64);font-size:.76rem;letter-spacing:.02em}
.contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:17px;padding:clamp(25px,4vw,42px);border:1px solid rgba(29,29,31,.08);border-radius:26px;background:#fff;color:#1d1d1f;box-shadow:0 24px 70px rgba(26,43,55,.07),inset 0 1px 0 #fff;overflow:hidden}.contact-form h3{grid-column:1/-1;margin:0 0 8px;font-size:clamp(1.65rem,3vw,2.35rem);font-weight:600;letter-spacing:-.025em}.contact-form .field:nth-of-type(3),.contact-form .field:nth-of-type(4),.contact-form>input[type="hidden"],.contact-form>.button,.contact-form>.form-status{grid-column:1/-1}.contact-form textarea{min-height:126px}.contact-form>.button{margin-top:2px}
.footer{max-width:1080px;margin:80px auto 0;padding-top:23px;border-color:rgba(29,29,31,.1);color:#77777d}

html[data-theme="dark"] .packages .section-head h2,html[data-theme="dark"] .process-sticky h2,html[data-theme="dark"] .contact-heading h2{background:linear-gradient(90deg,#dceaf3,#7fa6c2);-webkit-background-clip:text;background-clip:text}
html[data-theme="dark"] .hero{background:#08080a}
html[data-theme="dark"] .hero::after{display:none;background:none}
html[data-theme="dark"] .ascii-hero{opacity:.13}
html[data-theme="dark"] .hero-bubble{mix-blend-mode:normal;filter:none}
html[data-theme="dark"] .start-bundle{border-color:rgba(255,255,255,.1);background:#141418;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 20px 60px rgba(0,0,0,.2)}
html[data-theme="dark"] .advanced-offer{border-color:rgba(255,255,255,.12);background:linear-gradient(120deg,#061522,#123f5b)}
html[data-theme="dark"] .bundle-copy small,html[data-theme="dark"] .bundle-price span{color:#9a9aa0}
html[data-theme="dark"] .advanced-offer .bundle-price strong{background:linear-gradient(90deg,#dceaf3,#7fa6c2);-webkit-background-clip:text;background-clip:text}
html[data-theme="dark"] .contact{background:#0b0b0d;color:#f5f5f7;border-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .contact-heading p{color:#a1a1a6}
html[data-theme="dark"] .contact-card{background:linear-gradient(145deg,#071b29,#123f5b);box-shadow:0 28px 80px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.1)}
html[data-theme="dark"] .contact-form{border-color:rgba(255,255,255,.1);background:#151518;color:#f5f5f7;box-shadow:0 26px 76px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.06)}
html[data-theme="dark"] .footer{border-color:rgba(255,255,255,.1);color:#8e8e93}

@media(max-width:820px){.contact-top{grid-template-columns:1fr}.contact-card,.contact-form{border-radius:23px}}
@media(max-width:700px){
 .brand{font-size:1.18rem}
 .hero-bubble{inset:0}
 .ascii-hero{opacity:.17}.hero h1,.hero h1 span{text-shadow:none}
 .start-bundle{grid-template-columns:1fr auto;gap:16px;margin-top:14px;padding:19px;border-radius:19px}.bundle-price{text-align:right}.start-bundle .button{grid-column:1/-1;width:100%}
 .process-sticky h2{padding-bottom:.14em;line-height:1.1}
 .contact{padding-top:74px}.contact-heading{text-align:left;margin-bottom:32px}.contact-heading h2{margin-inline:0;padding-bottom:.12em;font-size:clamp(2.7rem,13vw,4rem);line-height:1.08}.contact-heading p{margin-inline:0}.contact-form{grid-template-columns:1fr}.contact-form .field,.contact-form .field:nth-of-type(3),.contact-form .field:nth-of-type(4){grid-column:1}.contact-card .button{width:100%}.footer{margin-top:58px}
}
@media(max-width:420px){
 .advanced-offer{grid-template-columns:minmax(0,1fr);gap:12px}
 .advanced-offer .bundle-price{text-align:left}
 .advanced-offer .button{margin-top:4px}
 .contact-heading h2{max-width:100%;margin-inline:-.05em;padding-inline:.05em}
 .work-copy h3{white-space:normal;overflow-wrap:anywhere}
}
@media(max-width:360px){
 .start-bundle{grid-template-columns:minmax(0,1fr);gap:11px}
 .bundle-price{text-align:left}
 .contact-heading h2{font-size:clamp(2.35rem,12.3vw,3.2rem);line-height:1.1;letter-spacing:-.026em}
 .work-copy h3{font-size:clamp(1.05rem,5vw,1.2rem)}
}
@media(max-width:580px){.hero-bubble-ambient{display:block}}
@media(prefers-reduced-motion:reduce){.hero h1 span{animation:none;background-position:50% 50%}.hero-bubble{display:none}}
