.eyebrow { text-transform:uppercase; }
.public-header .alt-site-nav { gap:13px; }
.public-header .alt-site-nav .public-access { display:flex; gap:18px; align-items:center; background:var(--accent); color:#fff; padding:11px 18px; margin-left:18px; }
.public-hero,.public-section,.public-split,.public-cta,.capability-strip,.public-page-intro,.pricing-grid,.public-note,.faq-list,.contact-grid,.account-preview,.checkout-grid,.legal-layout,.commercial-footer { width:min(1200px,calc(100% - 64px)); margin-inline:auto; }
.public-hero { display:grid; grid-template-columns:1.15fr 1fr; align-items:center; gap:72px; padding:76px 0 58px; }
.public-hero .eyebrow { display:flex; align-items:center; gap:9px; letter-spacing:1.25px; }
.public-hero h1 { font-size:clamp(38px,4.4vw,59px); line-height:1.12; font-weight:650; letter-spacing:-2.4px; margin:22px 0; }
.public-hero h1 span,.public-page-intro h1 span { color:#4c896c; }
.public-hero-copy>p:not(.eyebrow):not(.hero-caption) { font-size:16px; line-height:1.85; color:#6b7b70; max-width:550px; margin-bottom:26px; }
.public-actions { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.public-primary,.public-secondary { display:inline-flex; align-items:center; justify-content:center; gap:14px; min-height:44px; border-radius:8px; font-size:13px; padding:12px 18px; font-weight:600; text-decoration:none; }
.public-primary { background:var(--accent); border:1px solid var(--accent); color:#fff; }
.public-primary:hover { background:var(--accent-strong); }
.public-secondary { color:var(--ink); border:1px solid #dce4db; background:#fff; }
.public-secondary:hover { background:#edf4ec; }
.hero-caption { font-size:11px; color:#7a887e; margin-top:16px; }
.product-visual { border:1px solid #d7e3d8; border-radius:16px; padding:17px; background:#fff; box-shadow:0 20px 55px #3652390c; transform:rotate(-2deg); }
.visual-bar { display:flex; align-items:center; gap:7px; font-size:11px; color:#66816d; padding:0 3px 14px; }
.visual-bar>span:last-child { margin-left:auto; font-family:Consolas,monospace; color:#92a391; }
.visual-dot { width:6px; height:6px; border-radius:50%; background:#8ab486; }
.product-visual>img { width:100%; height:auto; background:#eef5ed; border-radius:9px; display:block; }
.visual-row { display:flex; align-items:center; gap:12px; margin-top:12px; padding:13px 11px; border:1px solid #e4ebe1; border-radius:8px; }
.visual-row strong,.visual-row small { display:block; }
.visual-row strong { font-size:12px; font-weight:600; }
.visual-row small { font-size:10px; color:#798c7c; margin-top:3px; }
.visual-row>.ui-icon,.visual-row>.file-tag { margin-left:auto; }
.visual-symbol { width:29px; height:29px; border-radius:7px; background:#eff5ea; display:grid; place-items:center; font-size:18px; color:#6c9672; flex-shrink:0; }
.file-tag { font:9px Consolas,monospace; color:#5c7862; white-space:nowrap; }
.capability-strip { display:flex; justify-content:space-between; gap:20px; padding:23px 26px; border-block:1px solid var(--line); color:#718074; font-size:12px; }
.capability-strip span::before { content:"↗"; display:inline-block; margin-right:12px; color:#719877; }
.public-section { padding:65px 0; }
.public-section-heading { display:flex; justify-content:space-between; align-items:end; gap:45px; margin-bottom:28px; }
.public-section h2,.public-split h2,.public-cta h2 { font-size:34px; font-weight:600; line-height:1.25; letter-spacing:-1.1px; margin:10px 0 0; }
.public-section-heading>p { max-width:370px; color:var(--muted); line-height:1.9; font-size:14px; margin:0; }
.feature-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.feature-grid article { padding:28px; border:1px solid #e0e7dc; background:#fff; border-radius:12px; }
.feature-number { display:grid; place-items:center; width:37px; height:37px; font:12px Consolas,monospace; color:#5d8665; background:#edf4e7; border:1px solid #dce8d4; border-radius:9px; }
.feature-grid h3 { font-size:17px; font-weight:600; letter-spacing:-.4px; margin:23px 0 10px; }
.feature-grid p { font-size:13px; color:var(--muted); line-height:1.85; margin:0; }
.public-split { display:grid; grid-template-columns:1fr 1fr; gap:70px; padding:44px; background:#edf4e9; border:1px solid #dfe9d8; border-radius:15px; align-items:center; }
.public-split>div>p:not(.eyebrow) { font-size:14px; color:#69816c; line-height:1.9; margin:18px 0; }
.public-split a { display:inline-flex; align-items:center; gap:15px; font-size:13px; font-weight:600; text-decoration:none; }
.check-stack { display:grid; gap:12px; }
.check-stack>div { display:grid; grid-template-columns:30px 1fr; gap:3px 12px; padding:19px; background:#ffffffba; border:1px solid #dce6d6; border-radius:9px; }
.check-stack span { grid-row:span 2; align-self:center; color:#749078; font:11px Consolas,monospace; }
.check-stack strong { font-size:13px; font-weight:600; }
.check-stack small { color:#819081; font-size:11px; }
.suppliers-section { text-align:center; }
.suppliers-section>p:not(.eyebrow) { max-width:630px; font-size:14px; line-height:1.85; color:var(--muted); margin:17px auto 30px; }
.supplier-names { display:grid; grid-template-columns:repeat(4,1fr); padding:12px 0; }
.supplier-names>span { font-size:23px; font-weight:650; color:#506d5b; letter-spacing:-.7px; border-right:1px solid var(--line); }
.supplier-names>span:last-child { border:0; }
.supplier-names small { display:block; color:#8b968a; font-size:10px; font-weight:400; letter-spacing:0; margin-top:7px; }
.public-cta { display:flex; align-items:center; justify-content:space-between; gap:35px; background:#214e3c; padding:42px; border-radius:15px; margin-bottom:55px; }
.public-cta .eyebrow { color:#aac5a5; }
.public-cta h2 { color:#f2f7e9; }
.public-cta .public-primary { color:#244c36; background:#ddedb4; border-color:#ddedb4; }
.cta-text-link { display:block; margin-top:12px; font-size:11px; color:#b4c7ab; text-align:center; }
.commercial-footer { padding:35px 0 20px; border-top:1px solid var(--line); }
.footer-top { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:32px; }
.footer-top>div>strong { display:block; font-size:12px; font-weight:650; margin-bottom:15px; }
.footer-top>div>a:not(.alt-brand) { display:block; font-size:12px; color:#748372; text-decoration:none; margin:9px 0; }
.footer-top>div>a:hover { color:var(--accent); }
.footer-top>div>p { font-size:12px; line-height:1.8; color:#7a887a; }
.footer-bottom { display:flex; justify-content:space-between; gap:16px; margin-top:30px; padding-top:18px; border-top:1px solid var(--line); color:#849180; font-size:10px; }
.public-page-intro { padding:58px 0 20px; max-width:900px; text-align:center; }
.public-page-intro h1 { font-size:46px; letter-spacing:-1.8px; line-height:1.17; font-weight:650; margin:17px 0; }
.public-page-intro>p:last-child { max-width:650px; margin:0 auto; color:var(--muted); font-size:15px; line-height:1.9; }
.launch-note { width:min(900px,calc(100% - 64px)); margin:20px auto 32px; padding:12px 16px; border:1px solid #dfe8d9; background:#edf3e8; color:#6c8167; border-radius:8px; text-align:center; font-size:12px; }
.pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; align-items:stretch; margin-top:24px; }
.price-card { display:flex; flex-direction:column; position:relative; padding:30px; border:1px solid #dfe7db; border-radius:14px; background:white; }
.price-card h2 { font-size:23px; letter-spacing:-.6px; font-weight:650; margin:8px 0 12px; }
.price-card>p:not(.eyebrow) { color:var(--muted); font-size:13px; line-height:1.8; min-height:72px; }
.price-placeholder { padding:22px 0; font-size:19px; font-weight:600; letter-spacing:-.4px; border-bottom:1px solid var(--line); }
.price-card ul { padding:0; list-style:none; color:#74816c; line-height:1.8; font-size:12px; margin:22px 0 28px; }
.price-card li { margin:9px 0; }
.price-card li::before { content:"✓"; margin-right:8px; color:#71976b; }
.price-card>a { margin-top:auto; }
.featured-price { border:1px solid #78a17b; background:#f9fcf5; }
.plan-ribbon { position:absolute; top:-12px; left:24px; border-radius:5px; background:#315f43; color:#eef6e4; padding:4px 12px; font-size:10px; }
.public-note { padding:30px; background:#fff; border:1px solid var(--line); border-radius:12px; margin-block:32px 55px; }
.public-note h2 { font-size:19px; letter-spacing:-.4px; font-weight:600; }
.public-note p { color:var(--muted); font-size:13px; line-height:1.85; }
.public-note>a { display:inline-flex; align-items:center; gap:10px; font-size:12px; font-weight:600; }
.faq-list { max-width:800px; margin-block:25px 40px; }
.faq-list details { border-bottom:1px solid var(--line); padding:22px 0; }
.faq-list summary { font-size:16px; font-weight:550; color:#33533c; padding-right:15px; }
.faq-list p { color:var(--muted); font-size:14px; line-height:1.9; margin:18px 0 0; }
.contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.contact-grid .public-note { width:100%; }
.account-preview { display:grid; grid-template-columns:1.3fr 1fr; gap:40px; padding:34px; max-width:860px; margin-block:20px 55px; border:1px solid var(--line); background:#fff; border-radius:14px; }
.account-preview h2 { font-size:22px; }
.account-preview p { color:var(--muted); font-size:13px; line-height:1.8; }
.account-preview aside { padding:25px; background:#edf4e8; border-radius:10px; align-self:start; }
.account-preview aside h3 { margin-top:0; font-size:17px; }
.preview-field { padding:13px 15px; border:1px dashed #dce5d7; border-radius:7px; margin-top:12px; color:#9aa692; background:#fafcf7; font-size:13px; }
.account-preview .preview-caption { font-size:10px; }
.checkout-grid { display:grid; grid-template-columns:1.6fr 1fr; gap:24px; margin-block:25px 55px; }
.checkout-steps { display:grid; gap:14px; }
.checkout-steps article { display:flex; gap:18px; align-items:start; background:#fff; border:1px solid var(--line); padding:25px; border-radius:12px; }
.checkout-steps h2 { font-size:18px; margin:0; }
.checkout-steps p,.checkout-steps a { color:var(--muted); font-size:13px; line-height:1.8; }
.checkout-summary { padding:28px; border:1px solid #d8e3d2; background:#eff4e9; border-radius:12px; align-self:start; }
.checkout-summary h2 { font-size:22px; margin-top:0; }
.checkout-summary>div { display:flex; justify-content:space-between; gap:12px; padding:14px 0; border-bottom:1px solid #dbe5d3; font-size:12px; }
.checkout-summary>div strong { font-weight:550; }
.checkout-summary button { margin-top:25px; width:100%; opacity:.6; cursor:not-allowed; }
.checkout-summary>p:last-child { color:#7a8d72; font-size:11px; line-height:1.8; }
.legal-layout { display:grid; grid-template-columns:260px 1fr; gap:35px; margin-block:30px 55px; }
.legal-layout>nav { padding:24px; border:1px solid var(--line); border-radius:10px; background:#fff; align-self:start; }
.legal-layout>nav a { display:block; text-decoration:none; font-size:12px; margin:12px 0; }
.legal-document { padding:30px; background:#fff; border:1px solid var(--line); border-radius:10px; }
.legal-document .launch-note { width:100%; margin:0 0 25px; }
.legal-document section { padding:20px 0; border-bottom:1px solid var(--line); }
.legal-document section:last-child { border:0; }
.legal-document h2 { font-size:18px; font-weight:600; }
.legal-document p { font-size:13px; line-height:1.9; color:var(--muted); }
@media(max-width:1000px) {
  .public-hero { gap:30px; padding-top:50px; }
  .public-hero h1 { font-size:43px; }
  .public-header .alt-site-nav { gap:4px; }
  .public-header .alt-site-nav .public-access { margin-left:5px; }
  .public-split { gap:30px; padding:30px; }
  .public-section h2,.public-split h2,.public-cta h2 { font-size:29px; }
  .price-card { padding:24px; }
  .price-placeholder { font-size:17px; }
  .price-card .public-primary,.price-card .public-secondary { font-size:11px; padding-inline:10px; }
}
@media(max-width:750px) {
  .public-hero,.public-section,.public-split,.public-cta,.capability-strip,.public-page-intro,.pricing-grid,.public-note,.faq-list,.contact-grid,.account-preview,.checkout-grid,.legal-layout,.commercial-footer { width:calc(100% - 36px); }
  .public-header .alt-site-nav { gap:1px; justify-content:space-between; }
  .public-header .alt-site-nav a { font-size:11px; padding-inline:8px; }
  .public-header .alt-site-nav .public-access { gap:7px; padding:8px 10px; }
  .public-header .alt-site-nav .public-access .ui-icon { width:14px; }
  .public-hero { grid-template-columns:1fr; gap:32px; padding:36px 0; }
  .public-hero h1 { font-size:42px; letter-spacing:-1.8px; }
  .public-hero .eyebrow { font-size:9px; }
  .public-hero-copy>p:not(.eyebrow):not(.hero-caption) { font-size:14px; }
  .public-actions { align-items:stretch; }
  .public-actions>a { font-size:12px; flex:1 1 auto; }
  .product-visual { margin:0 8px; padding:13px; }
  .capability-strip { font-size:10px; padding:18px 0; gap:15px; }
  .capability-strip span::before { display:none; }
  .public-section { padding-block:40px; }
  .public-section-heading { display:block; }
  .public-section-heading>p { margin-top:20px; font-size:13px; }
  .feature-grid,.public-split,.pricing-grid,.contact-grid,.account-preview,.checkout-grid,.legal-layout { grid-template-columns:1fr; }
  .feature-grid article { padding:24px; }
  .feature-grid h3 { margin-top:17px; }
  .public-split { padding:25px; }
  .public-split h2 { font-size:31px; }
  .supplier-names { grid-template-columns:1fr 1fr; row-gap:28px; }
  .supplier-names>span:nth-child(2) { border:0; }
  .public-cta { padding:30px 25px; flex-direction:column; align-items:flex-start; margin-bottom:40px; gap:24px; }
  .footer-top { grid-template-columns:1fr 1fr; gap:25px; }
  .footer-top>div:first-child { grid-column:1/-1; }
  .footer-bottom { flex-direction:column; gap:8px; font-size:10px; }
  .public-page-intro { padding-top:35px; }
  .public-page-intro h1 { font-size:34px; letter-spacing:-1px; }
  .public-page-intro>p:last-child { font-size:13px; }
  .launch-note { width:calc(100% - 36px); font-size:11px; }
  .pricing-grid { gap:26px; }
  .price-card>p:not(.eyebrow) { min-height:0; }
  .price-card .public-primary,.price-card .public-secondary { font-size:13px; }
  .public-note { padding:24px; margin-block:22px 35px; }
  .contact-grid { gap:0; }
  .faq-list summary { font-size:14px; }
  .faq-list p { font-size:13px; }
  .account-preview,.legal-document { padding:23px; }
  .checkout-steps article { padding:22px; gap:12px; }
  .legal-layout { gap:18px; }
}
