.hp-proposal{--hp-ink:#333333;--hp-muted:#60686b;--hp-paper:#f2f7fa;--hp-line:#dce5eb;--hp-accent:#006bc9;color:var(--hp-ink);background:#fff}.hp-proposal *{box-sizing:border-box}.hp-proposal h1,.hp-proposal h2,.hp-proposal h3,.hp-proposal p{margin-top:0}.hp-proposal a{color:inherit}.hp-hero{padding-top:72px;background:linear-gradient(180deg,#fff 0%,#f2f7fa 100%)}.hp-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px;padding-bottom:70px}.hp-eyebrow{font-size:11px;letter-spacing:.13em;font-weight:700;margin:0 0 24px;color:var(--hp-muted)}.hp-eyebrow>span{display:inline-block;width:7px;height:7px;background:var(--hp-accent);border-radius:50%;margin-right:9px;vertical-align:middle}.hp-hero h1{font-size:clamp(44px,4.8vw,72px);line-height:1.03;letter-spacing:-.045em;font-weight:700;margin-bottom:27px}.hp-hero h1 em{font-style:normal;color:var(--hp-ink)}.hp-intro{font-size:19px;line-height:1.55;max-width:460px;color:var(--hp-muted)}.hp-actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px;margin:31px 0}.hp-button{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:14px 24px;min-height:49px;border-radius:999px;font-size:15px;font-weight:700;text-decoration:none;border:1px solid transparent;transition:background .15s,transform .15s}.hp-proposal .hp-button-primary{background:var(--hp-accent);color:white}.hp-proposal .hp-button-primary:hover{background:#0056a3;transform:translateY(-2px)}.hp-proposal .hp-button-dark{background:#333333;color:#fff}.hp-proposal .hp-button-dark:hover{background:#494943}.hp-text-link{font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:5px}.hp-hero-note{font-size:12px;color:var(--hp-muted);display:flex;align-items:center;gap:10px}.hp-hero-note>span{font-size:21px}.hp-hero-art{position:relative;min-width:0;border:1px solid var(--hp-line);background:#ffffff;border-radius:9px;padding:22px 23px;box-shadow:0 25px 65px #2b282709;transform:rotate(2deg)}.hp-art-top,.hp-art-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:10px;letter-spacing:.08em;font-weight:600;color:var(--hp-muted)}.hp-art-top{padding-bottom:28px}.hp-art-top>span:last-child{color:var(--hp-accent);font-size:17px;letter-spacing:7px;white-space:nowrap}.hp-hero-art>img{display:block;width:100%;height:auto;margin:12px 0 28px}.hp-art-bottom{border-top:1px solid #eee;padding-top:19px;letter-spacing:0;font-size:12px}.hp-art-label{border:1px solid #deded9;padding:5px 10px;border-radius:20px;white-space:nowrap}.hp-tool-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--hp-line);padding-block:24px}.hp-tool-strip>a{display:flex;flex-direction:column;gap:3px;text-decoration:none;padding-left:30px;border-left:1px solid var(--hp-line)}.hp-tool-strip>a:first-child{padding-left:0;border-left:0}.hp-tool-strip span{font-size:21px;font-weight:700}.hp-tool-strip small{font-size:12px;color:var(--hp-muted)}.hp-tool-strip>a:hover span{color:var(--hp-accent)}.hp-products{padding-block:85px}.hp-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:38px}.hp-section-heading .hp-eyebrow{margin-bottom:14px}.hp-proposal h2{font-size:clamp(31px,3.2vw,46px);line-height:1.1;letter-spacing:-.025em;font-weight:700;margin-bottom:0}.hp-filter{display:flex;padding:4px;border:1px solid var(--hp-line);border-radius:30px;gap:4px;flex-shrink:0}.hp-filter button{background:none;border:0;border-radius:24px;padding:9px 18px;font:600 13px 'Sofia Sans',Arial,sans-serif;color:var(--hp-muted)}.hp-filter button[aria-pressed=true]{background:#333333;color:#fff}.hp-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.hp-product{border:1px solid var(--hp-line);border-radius:10px;overflow:hidden;min-width:0;background:#ffffff;display:flex;flex-direction:column}.hp-product[hidden]{display:none}.hp-product-info{padding:32px}.hp-product-top{display:flex;align-items:center;gap:12px;margin-bottom:25px}.hp-category{font-size:10px;letter-spacing:.09em;font-weight:700;color:var(--hp-muted)}.hp-product-number{margin-left:auto;color:#a4a49e;font-size:11px}.hp-product h3{font-size:36px;line-height:1;letter-spacing:-.03em;font-weight:700;margin-bottom:18px}.hp-product h3>span{color:var(--hp-accent)}.hp-product p{max-width:460px;font-size:16px;line-height:1.5;color:var(--hp-muted);margin-bottom:23px}.hp-product-links{display:flex;align-items:center;flex-wrap:wrap;gap:22px}.hp-product-phi,.hp-product-theme{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;align-items:center}.hp-product-phi{background:#f4efff}.hp-product-phi .hp-product-info{padding:38px}.hp-phi-visual{padding:25px 25px 25px 0;min-width:0}.hp-phi-visual>img{width:100%;height:280px;object-fit:cover;display:block;border-radius:6px}.hp-url{background:white;border:1px solid #e5e5df;border-radius:6px;margin:-24px 16px 0;padding:13px 15px;position:relative;display:flex;gap:10px;align-items:center;font-size:12px;box-shadow:0 7px 16px #00000005}.hp-url code{color:#555;overflow-wrap:anywhere}.hp-suit{display:flex;width:34px;height:38px;align-items:center;color:#9b303b;font-size:36px}.hp-code-preview{margin:0 24px 24px;background:#292b2b;color:#e7e7de;border-radius:7px;overflow:hidden;flex:1}.hp-code-preview>div{display:flex;align-items:center;justify-content:space-between;font-size:10px;background:#323534;padding:12px 17px;color:#a2aaa2}.hp-code-preview>div>span:first-child{letter-spacing:4px;color:#747f74}.hp-code-preview pre{margin:0;padding:20px;font-size:12px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.hp-code-caption{display:block;padding:0 20px 18px;font-size:10px;color:#a2aaa2}.hp-doc-preview{display:grid;grid-template-columns:38% 62%;border:1px solid #dce5eb;background:#f8fbfd;border-radius:7px;margin:0 24px 24px;min-height:204px;font-size:10px;overflow:hidden;flex:1}.hp-doc-sidebar{display:flex;flex-direction:column;gap:11px;padding:17px 10px;background:#edf3f8;overflow:hidden}.hp-doc-brand{font-size:15px;font-weight:700;color:#006bc9;margin-bottom:7px}.hp-doc-sidebar strong{font-size:9px;color:#006bc9}.hp-doc-body{padding:20px 16px}.hp-doc-body h4{font-size:14px;margin:9px 0 15px}.hp-doc-body p{font-family:monospace;font-size:10px;margin-bottom:10px}.hp-doc-tag{font-size:8px;color:#52718a;letter-spacing:.06em}.hp-doc-line{height:4px;background:#dce5eb;border-radius:2px;margin-bottom:8px}.hp-doc-line-short{width:65%;margin-bottom:19px}.hp-product-theme{background:#fff4e9}.hp-theme-visual{margin:28px;padding:25px;background:#ffffff;border:1px solid #e4e1d9;border-radius:8px}.hp-swatches{display:flex;height:55px;border-radius:5px;overflow:hidden;margin-bottom:25px}.hp-swatches>span{flex:1;background:#006bc9}.hp-swatches>span:nth-child(2){background:#ff6600}.hp-swatches>span:nth-child(3){background:#7e3ce9}.hp-swatches>span:nth-child(4){background:#e4eef5}.hp-swatches>span:nth-child(5){background:#333333}.hp-theme-component{display:flex;align-items:center;gap:14px}.hp-theme-avatar{background:#f5f0e8;color:#a34500;font-size:25px;font-weight:700;border-radius:7px;padding:10px}.hp-theme-component strong{font-size:16px}.hp-theme-component p{font-size:12px;margin:4px 0 0}.hp-theme-buttons{display:flex;gap:10px;margin-top:23px;font-size:11px}.hp-theme-buttons span{padding:8px 16px;background:#006bc9;color:#fff;border-radius:20px}.hp-theme-buttons span:nth-child(2){border:1px solid #006bc9;color:#006bc9;background:#ffffff}.hp-theme-buttons span:last-child{margin-left:auto;background:#f4f0e7;color:#333333}.hp-workflow{padding-block:72px;background:var(--hp-paper);border-block:1px solid var(--hp-line)}.hp-section-intro{max-width:330px;color:var(--hp-muted);font-size:16px;line-height:1.5;margin-bottom:0}.hp-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;list-style:none;padding:30px 0 0;margin:0;border-top:1px solid var(--hp-line)}.hp-steps li>span{font-size:10px;color:var(--hp-muted);letter-spacing:.06em}.hp-steps h3{font-size:22px;font-weight:700;margin:18px 0 12px}.hp-steps p{font-size:14px;line-height:1.5;color:var(--hp-muted);max-width:240px;margin-bottom:19px}.hp-steps a{font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:4px}.hp-final{padding-block:80px;display:flex;justify-content:space-between;align-items:center;gap:30px}.hp-final .hp-eyebrow{margin-bottom:17px}.hp-footer{border-top:1px solid var(--hp-line);padding:26px 0}.hp-footer>.site-container{display:flex;align-items:center;gap:30px;font-size:12px}.hp-footer img{height:auto}.hp-footer span{margin-right:auto;color:var(--hp-muted)}.hp-footer a{text-decoration:none;font-weight:600}.hp-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.hp-proposal a:focus-visible,.hp-proposal button:focus-visible{outline:3px solid #006bc9;outline-offset:5px}@media(max-width:1000px){.hp-hero{padding-top:48px}.hp-hero-grid{gap:28px}.hp-hero h1{font-size:54px}.hp-hero-art{padding:17px;transform:none}.hp-art-top{font-size:8px;gap:6px}.hp-art-top>span:last-child{font-size:13px;letter-spacing:3px}.hp-art-bottom{font-size:10px;align-items:flex-start;flex-direction:column}.hp-actions{gap:18px}.hp-product-info{padding:25px}.hp-product-phi .hp-product-info{padding:28px}.hp-section-heading{align-items:flex-start}.hp-steps{gap:18px}.hp-steps h3{font-size:19px}.hp-doc-preview{grid-template-columns:40% 60%}}@media(max-width:700px){.hp-hero-grid{grid-template-columns:1fr;padding-bottom:35px;gap:36px}.hp-hero h1{font-size:clamp(44px,10vw,62px)}.hp-intro{font-size:17px}.hp-hero-art{max-width:540px;width:100%;margin:auto}.hp-art-top{font-size:10px}.hp-art-bottom{flex-direction:row}.hp-tool-strip{grid-template-columns:repeat(2,1fr);gap:22px}.hp-tool-strip>a:nth-child(3){padding-left:0;border-left:0}.hp-tool-strip span{font-size:19px}.hp-products{padding-block:48px}.hp-section-heading{flex-direction:column;gap:25px;margin-bottom:28px}.hp-product-grid{grid-template-columns:1fr}.hp-product-phi,.hp-product-theme{grid-column:auto;grid-template-columns:1fr}.hp-phi-visual{padding:0 22px 24px}.hp-phi-visual>img{height:240px}.hp-theme-visual{margin:0 24px 24px}.hp-steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:35px}.hp-workflow{padding-block:48px}.hp-final{padding-block:48px;align-items:flex-start;flex-direction:column}.hp-footer>.site-container{flex-wrap:wrap;gap:20px}.hp-footer span{flex-basis:calc(100% - 180px);font-size:11px}.hp-product-top{margin-bottom:20px}}@media(prefers-reduced-motion:reduce){.hp-button{transition:none}.hp-button:hover{transform:none}}

/* Hafooo proposal only: palette sampled from the supplied brand artwork. */
.hafooo-homepage{--hafooo-blue:#006bc9;--hafooo-orange:#ff6600;--hafooo-green:#7e3ce9}
.hafooo-homepage .hp-hero h1 em{color:var(--hafooo-blue)}
.hafooo-homepage .hp-eyebrow>span{background:var(--hafooo-orange)}
.hafooo-homepage .hp-hero h1{font-size:clamp(48px,5.1vw,78px)}
.hafooo-art{transform:none;box-shadow:0 22px 65px #006bc90b;padding:25px 28px;background:#fff}
.hafooo-art .hp-art-top{padding-bottom:12px}
.hafooo-art-dot{display:block;width:9px;height:9px;background:#7e3ce9;border-radius:50%}
.hafooo-puzzle-crop{width:240px;aspect-ratio:198/185;overflow:hidden;margin:24px auto 30px}
.hafooo-puzzle-crop>img{display:block;width:465.657%;max-width:none;height:auto}
.hafooo-art-caption{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:0 0 25px}
.hafooo-art-caption span{font-size:11px;padding:6px 10px;border-radius:20px;background:#edf5fd;color:#006bc9}
.hafooo-art-caption span:nth-child(2){background:#f4efff;color:#6532a8}
.hafooo-art-caption span:nth-child(3){background:#fff0e4;color:#a34500}
.hafooo-art-caption span:nth-child(4){background:#f3f3f3;color:#555}
.hafooo-mini-pieces{display:inline-flex;gap:3px;align-items:center}
.hafooo-mini-pieces i{display:block;width:8px;height:8px;background:#006bc9;border-radius:2px}
.hafooo-mini-pieces i:nth-child(2){background:#ff6600;transform:translateY(-3px) rotate(10deg)}
.hafooo-mini-pieces i:nth-child(3){background:#7e3ce9}
.hafooo-product-mark{display:flex;align-items:center;justify-content:center;width:34px;height:38px;border-radius:7px;background:#7e3ce9;color:#fff;font-size:23px;font-weight:700}
.hafooo-mark-nano{background:#006bc9}.hafooo-mark-docs{background:#333}.hafooo-mark-theme{background:#ff6600}
.hafooo-homepage .hp-product-phi h3>span{color:#7e3ce9}.hafooo-homepage .hp-product-theme h3>span{color:#bd5000}
.hafooo-header .navbar-brand img{width:175px;height:auto}
.hafooo-header .nav-link:hover{color:#006bc9}
@media(max-width:700px){.hafooo-homepage .hp-hero h1{font-size:clamp(46px,10vw,64px)}.hafooo-art{padding:22px}.hafooo-puzzle-crop{width:210px}.hafooo-homepage .hp-footer span{flex-basis:calc(100% - 180px)}}
