/* Public website. Shared components keep their editable content and interactions. */
.yollabi-website {
    font-family:'Poppins',sans-serif;
    --line:#e6ebef;
    --shadow:0 20px 60px -30px #223b642e;
    background:#fff;
}
.yollabi-website :is(h1,h2,h3) { font-weight:500; letter-spacing:-.045em; }
.yollabi-website p { line-height:1.85; }
.yollabi-website .container { width:min(1200px,calc(100% - 80px)); }
.yollabi-website .site-header { background:#ffffffed; border-bottom:1px solid #edf0f3; }
.yollabi-website .header-inner { display:flex; height:68px; gap:32px; width:min(1200px,calc(100% - 64px)); }
.yollabi-website .header-inner>.brand { flex:none; }
.yollabi-website .site-navigation { display:flex; flex:1; align-items:center; justify-content:space-between; gap:22px; }
.yollabi-website .header-links { gap:3px; }
.yollabi-website .brand { gap:8px; font-size:24px; font-weight:600; letter-spacing:-1.1px; }
.yollabi-website .brand .website-brand-image { min-width:32px; max-height:38px; }
.yollabi-website .application-wordmark { color:#203844; }
.yollabi-website .header-links>a { font-size:12px; font-weight:400; padding:8px 10px; min-height:38px; gap:6px; }
.yollabi-website .header-links>a .icon { width:15px; height:15px; }
.yollabi-website .header-actions { gap:16px; }
.yollabi-website .panel-link { font-size:11px; font-weight:400; }
.yollabi-website .button { font-weight:500; border-radius:10px; padding:15px 22px; font-size:12px; box-shadow:0 5px 12px #2465e815; }
.yollabi-website .button-small { padding:10px 14px; font-size:11px; min-height:38px; }
.yollabi-website .header-actions .button-small { font-size:12px; gap:9px; }
.yollabi-website .header-actions .button-small .icon { width:18px; height:18px; stroke-width:1.8; }
.yollabi-website .text-link { font-weight:500; font-size:12px; }
.yollabi-website .eyebrow { font-weight:500; font-size:10px; letter-spacing:.13em; }
.website-content>.home-hero { padding:18px 0 54px; background:#fff; }
.home-hero .hero-composition {
    width:min(1200px,calc(100% - 48px));
    grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr);
    gap:45px; padding:38px 48px; border-radius:22px;
    background:radial-gradient(ellipse at 90% 0,#22575c 0,transparent 55%),#122e38;
    color:#fff; position:relative; overflow:hidden;
}
.home-hero .hero-content { position:relative; z-index:2; }
.home-hero .eyebrow { color:#add5c9; margin-bottom:23px; }
.home-hero .hero-content>.eyebrow { display:inline-flex; background:#ffffff09; border:1px solid #ffffff21; border-radius:30px; padding:8px 13px; letter-spacing:.11em; font-size:9px; }
.home-hero .eyebrow>span { background:#b4e9c8; box-shadow:0 0 0 4px #b4e9c813; }
.home-hero h1 { font-size:clamp(34px,3.5vw,46px); line-height:1.16; font-weight:500; letter-spacing:-1.7px; max-width:640px; }
.home-hero h1 em { color:#c7efac; }
.home-hero .hero-copy { font-size:13px; color:#bbccce; line-height:1.8; margin-top:19px; }
.home-hero .button-row { gap:25px; margin-top:24px; }
.home-hero .hero-content .button { background:#c7efac; color:#203e36; border-color:#c7efac; box-shadow:none; }
.home-hero .hero-content .button:hover { background:#d6f7c2; }
.home-hero .hero-content .text-link { color:#fff; font-size:12px; }
.hero-benefits { display:flex; flex-wrap:wrap; gap:19px; margin-top:20px; font-size:10px; color:#a9c2c2; }
.hero-benefits>span { display:flex; align-items:center; gap:7px; }
.hero-benefits .icon { width:15px; height:15px; color:#b9dca8; }
.home-hero .hero-visual { max-width:350px; position:relative; justify-self:end; overflow:visible; border:0; border-radius:0; box-shadow:none; padding:12px 0 12px 12px; }
.hero-photo-frame { border-radius:130px 20px 20px 20px; overflow:hidden; border:1px solid #ffffff30; position:relative; }
.home-hero .hero-photo-frame img { aspect-ratio:1.15; object-fit:cover; object-position:50% 25%; }
.hero-floating-status { position:absolute; left:-18px; bottom:42px; right:24px; display:flex; align-items:center; gap:11px; padding:18px; border:1px solid #f5faf4; background:#fff; border-radius:13px; box-shadow:0 15px 45px #0b20282b; color:#243f45; }
.hero-floating-status strong { display:block; font-weight:500; font-size:12px; }
.hero-floating-status div>span { display:block; font-size:9px; color:#7b8d8f; margin-top:3px; }
.hero-check { width:33px; height:33px; border-radius:50%; background:#eef8e9; color:#488f5a; display:grid; place-items:center; flex:none; }
.hero-check .icon { width:17px; }
.hero-example { font-size:8px; color:#8b9b9f; margin-left:auto; }
.hero-orbit-label { position:absolute; top:-2px; right:20px; display:flex; gap:8px; align-items:center; padding:9px 13px; background:#2b5156; border:1px solid #ffffff26; border-radius:7px; font-size:9px; color:#d4e6df; }
.home-capabilities { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px; padding:28px 0; border-bottom:1px solid #e7eeeb; }
.home-capabilities>span { display:flex; align-items:center; gap:10px; font-size:11px; color:#687d80; }
.home-capabilities .icon { color:#4d7d74; width:18px; height:18px; }
.home-hero .hero-preview { padding-top:38px; }
.preview-heading { display:flex; justify-content:space-between; align-items:end; gap:35px; margin-bottom:27px; }
.preview-heading .eyebrow { color:#688c7b; margin-bottom:12px; }
.preview-heading h2 { font-size:32px; color:#203b44; }
.preview-heading p { font-size:11px; }
.yollabi-website .product-window { border-radius:16px; border-color:#dfe7e6; box-shadow:0 18px 55px -32px #30544a50; }
.yollabi-website .window-title { padding:22px 26px 16px; background:#fbfcfc; }
.yollabi-website .window-title h2 { font-size:17px; }
.yollabi-website .demo-toolbar { padding-top:7px; }
.yollabi-website .demo-tabs button { font-family:inherit; font-size:10px; }
.yollabi-website .demo-table { font-size:11px; }
.yollabi-website .demo-table th { font-weight:400; font-size:10px; }
.yollabi-website .demo-table td strong { font-weight:500; }
.yollabi-website .demo-table td { padding-block:20px; }
.yollabi-website .demo-table small { font-size:9px; }
.yollabi-website .window-foot { background:#fbfcfc; font-size:9px; }
.yollabi-website .section { padding-block:56px; }
.yollabi-website h2 { font-size:clamp(27px,3vw,38px); line-height:1.22; }
.yollabi-website .section-heading { align-items:end; margin-bottom:26px; }
.yollabi-website .section-heading p, .yollabi-website .story-copy>p, .yollabi-website .report-section>div>p { font-size:13px; line-height:1.9; }
.yollabi-website .section-heading .eyebrow, .yollabi-website .story-copy .eyebrow { color:#5c8e79; }
.yollabi-website .story-grid { gap:45px; }
.yollabi-website .story-grid>div>p { font-size:13px; margin-top:20px; }
.yollabi-website .revision-channel-grid { gap:16px; margin-top:32px; }
.yollabi-website .revision-channel-grid article { position:relative; padding:27px; border-radius:13px; border-color:#e5ebea; }
.yollabi-website .revision-channel-grid article::before { content:''; width:24px; height:3px; background:#badcc7; display:block; margin-bottom:23px; border-radius:3px; }
.yollabi-website .revision-channel-grid h3 { font-size:15px; letter-spacing:-.4px; }
.yollabi-website .revision-channel-grid p { font-size:11px; line-height:1.9; margin-top:13px; }
.yollabi-website .feature-grid { gap:22px; }
.yollabi-website .feature-card { border-radius:17px; border:1px solid #e2e9e7; padding:25px; transition:transform .2s,box-shadow .2s; }
.yollabi-website .feature-card:hover { transform:translateY(-5px); box-shadow:0 20px 45px -25px #1b49452e; }
.yollabi-website .feature-title { margin-bottom:25px; }
.yollabi-website .feature-title h3 { font-size:16px; }
.yollabi-website .feature-title>.icon { color:#518674; }
.yollabi-website .mini-scene { background:#f7faf8; border:1px solid #e9efec; border-radius:11px; }
.yollabi-website .feature-card>p { font-size:11px; line-height:1.85; margin-top:22px; }
.yollabi-website .mini-scene strong { font-weight:500; }
.yollabi-website .mini-scene .money { font-weight:500; }
.yollabi-website .courier-preview { border-radius:22px; background:#fff; box-shadow:0 24px 65px -35px #25455755; border:1px solid #e3ebe7; transform:rotate(-1deg); }
.yollabi-website .benefit-list>li { margin-block:24px; }
.yollabi-website .benefit-list h3 { font-size:14px; }
.yollabi-website .benefit-list p { font-size:11px; margin-top:6px; }
.yollabi-website .icon-box { border-radius:12px; }
.yollabi-website .report-preview { border-radius:18px; box-shadow:0 22px 65px -35px #2545573b; padding:30px; }
.yollabi-website .report-preview strong { font-weight:500; }
.yollabi-website .steps { border:0; box-shadow:none; padding:30px 0 0; background:transparent; gap:45px; }
.yollabi-website .step { display:block; border-top:1px solid #dfe8e5; padding-top:25px; }
.yollabi-website .step>span { background:#eff6ed; color:#5a8765; font-size:12px; border-radius:50%; margin-bottom:19px; display:grid; }
.yollabi-website .step h3 { font-size:16px; }
.yollabi-website .step p { font-size:12px; margin-top:12px; }
.yollabi-website .faq-section { grid-template-columns:.8fr 1.2fr; gap:80px; }
.yollabi-website .faq-list { border-radius:14px; padding:4px 26px; box-shadow:none; }
.yollabi-website .faq-list summary { font-size:13px; padding-block:23px; font-weight:400; }
.yollabi-website .faq-list p { font-size:12px; }
.yollabi-website .closing { padding-block:40px; }
.yollabi-website .closing-panel { padding:54px 58px; border-radius:23px; background:radial-gradient(ellipse at right,#2a5659,transparent),#132f39; color:#fff; border:0; gap:30px; }
.yollabi-website .closing-panel h2 { color:#fff; font-size:34px; max-width:650px; }
.yollabi-website .closing-panel p { color:#b9cfcc; font-size:12px; margin-top:17px; }
.yollabi-website .closing-panel .button { background:#c7efac; border-color:#c7efac; color:#254438; white-space:nowrap; }
.yollabi-website .site-footer { background:#fafcfb; padding-top:55px; }
.yollabi-website .footer-grid { padding-bottom:40px; }
.yollabi-website .footer-grid h2 { font-size:12px; font-weight:500; letter-spacing:0; }
.yollabi-website .footer-grid p, .yollabi-website .footer-grid a:not(.brand) { font-size:11px; }
.yollabi-website .footer-bottom { font-size:9px; }
.yollabi-website .page-intro { padding-top:65px; padding-bottom:65px; }
.yollabi-website .page-hero h1 { font-size:clamp(32px,3.6vw,48px); font-weight:500; }
.yollabi-website .page-hero-copy>p { font-size:14px; }
.yollabi-website .page-hero .hero-visual--photo { border-radius:70px 16px 16px 16px; }
.yollabi-website .solution-card { border-radius:17px; padding:35px; }
.yollabi-website .solution-card h2 { font-size:30px; }
.yollabi-website .solution-card>p, .yollabi-website .onboarding p { font-size:13px; }
.yollabi-website .contact-form-wrap { border-radius:17px; }
.yollabi-website .contact-form h2 { font-size:24px; }
.yollabi-website .field label { font-size:11px; }
.yollabi-website .field :is(input,select,textarea) { font-size:12px; }
@media(min-width:1201px) { .yollabi-website .header-actions { margin-left:auto; } }
@media(max-width:1200px) {
    .yollabi-website .header-inner { height:68px; }
    .yollabi-website .site-navigation { display:none; top:68px; }
    .yollabi-website .site-navigation { align-items:stretch; justify-content:flex-start; gap:16px; padding:18px 24px 24px; border-radius:0 0 18px 18px; box-shadow:0 18px 30px #15323d12; }
    .yollabi-website .site-navigation .header-links { width:100%; align-items:stretch; gap:5px; }
    .yollabi-website .site-navigation .header-links>a { width:100%; justify-content:flex-start; min-height:46px; border-radius:9px; gap:12px; }
    .yollabi-website .site-navigation .header-links>a .icon { width:19px; height:19px; }
    .yollabi-website .site-navigation .header-actions { width:100%; margin:0; padding-top:17px; border-top:1px solid #e8eeee; }
    .yollabi-website .site-navigation .header-actions .button { width:100%; min-height:44px; font-size:12px; }
    .yollabi-website .site-navigation.is-open { display:flex; }
    .home-hero .hero-composition { gap:32px; padding:35px; }
    .home-hero h1 { font-size:40px; }
    .yollabi-website .site-navigation .header-links>a { font-size:13px; padding:12px; }
}
@media(max-width:960px) {
    .yollabi-website .container { width:calc(100% - 48px); }
    .home-hero .hero-composition { gap:30px; padding:38px 32px; }
    .home-hero h1 { font-size:36px; letter-spacing:-1.4px; }
    .home-hero .hero-copy { font-size:12px; }
    .home-hero .button-row { gap:14px; }
    .hero-benefits { gap:12px; font-size:9px; }
    .home-hero .hero-visual { padding-left:0; }
    .hero-floating-status { left:-10px; right:10px; padding:12px; gap:8px; }
    .hero-floating-status strong { font-size:10px; }
    .hero-floating-status div>span { font-size:8px; }
    .hero-orbit-label { font-size:8px; right:0; }
    .home-capabilities { gap:18px; justify-content:center; }
    .yollabi-website .section { padding-block:40px; }
    .yollabi-website .story-grid { gap:35px; }
    .yollabi-website .feature-card { padding:20px; }
    .yollabi-website .faq-section { gap:35px; }
    .yollabi-website .closing-panel { padding:40px; }
    .yollabi-website .closing-panel h2 { font-size:28px; }
}
@media(max-width:700px) {
    .yollabi-website .container { width:calc(100% - 36px); }
    .yollabi-website .header-inner { width:calc(100% - 36px); height:64px; }
    .yollabi-website .site-navigation { top:64px; }
    .yollabi-website .brand { font-size:24px; }
    .yollabi-website .menu-toggle { font-size:11px; padding:7px 10px; }
    .website-content>.home-hero { padding-top:12px; padding-bottom:45px; }
    .home-hero .hero-composition { width:calc(100% - 24px); grid-template-columns:1fr; gap:36px; border-radius:19px; padding:34px 24px 30px; }
    .home-hero h1 { font-size:38px; letter-spacing:-1.6px; line-height:1.16; }
    .home-hero .hero-copy { font-size:12px; margin-top:20px; }
    .home-hero .hero-content>.eyebrow { font-size:8px; margin-bottom:22px; }
    .home-hero .button-row { gap:18px; margin-top:25px; }
    .home-hero .hero-content .button { font-size:11px; padding:13px 16px; }
    .home-hero .hero-content .text-link { font-size:10px; }
    .hero-benefits { margin-top:23px; }
    .home-hero .hero-visual { max-width:380px; justify-self:center; width:100%; padding:12px 0 0; }
    .hero-photo-frame { border-radius:65px 15px 15px 15px; }
    .home-hero .hero-photo-frame img { aspect-ratio:1.35; object-position:center 34%; }
    .hero-floating-status { left:-7px; bottom:16px; right:15px; }
    .hero-floating-status strong { font-size:11px; }
    .hero-floating-status div>span { font-size:8px; }
    .hero-orbit-label { top:0; right:12px; }
    .home-capabilities { padding:24px 0; gap:17px 22px; justify-content:flex-start; }
    .home-capabilities>span { font-size:10px; gap:7px; }
    .home-capabilities .icon { width:16px; }
    .home-hero .hero-preview { padding-top:36px; }
    .preview-heading { display:block; margin-bottom:20px; }
    .preview-heading h2 { font-size:26px; }
    .preview-heading p { margin-top:14px; font-size:11px; }
    .yollabi-website .window-title { padding:17px 15px; }
    .yollabi-website .window-title h2 { font-size:15px; }
    .yollabi-website .demo-toolbar { padding-top:0; }
    .yollabi-website .section { padding-block:40px; }
    .yollabi-website .section-heading { margin-bottom:26px; }
    .yollabi-website .section-heading p { font-size:12px; }
    .yollabi-website .story-grid { gap:28px; }
    .yollabi-website .revision-channel-grid { gap:12px; }
    .yollabi-website .revision-channel-grid article { padding:24px; }
    .yollabi-website .courier-preview { transform:none; }
    .yollabi-website .report-preview { padding:22px; }
    .yollabi-website .steps { gap:28px; padding-top:10px; }
    .yollabi-website .step { padding-top:22px; }
    .yollabi-website .faq-section { grid-template-columns:1fr; gap:24px; }
    .yollabi-website .faq-list { padding:0 18px; }
    .yollabi-website .faq-list summary { font-size:12px; padding-block:21px; }
    .yollabi-website .closing { padding-block:38px; }
    .yollabi-website .closing-panel { padding:29px 25px; border-radius:17px; }
    .yollabi-website .closing-panel h2 { font-size:26px; }
    .yollabi-website .closing-panel h2 br { display:none; }
    .yollabi-website .closing-panel p { font-size:11px; }
    .yollabi-website .footer-grid { gap:30px 18px; }
    .yollabi-website .page-intro { padding-top:35px; padding-bottom:35px; }
}

.website-home .story-grid+h2 { margin-top:34px!important; }
.website-home .revision-channel-grid article { padding:21px; }
.website-home .revision-channel-grid article::before { margin-bottom:14px; }
.website-home .revision-channel-grid p { margin-top:9px; }
