.business-page { --business-ink:#152013; --business-green:#87e64b; --business-muted:#526047; background:#fffaf4; color:var(--business-ink); }
.business-page * { box-sizing:border-box; }
.business-page h1,.business-page h2,.business-page h3,.business-page h4 { color:inherit; letter-spacing:-.05em; }
.business-page h1 { font-size:clamp(48px,6.8vw,100px); line-height:1.02; font-weight:600; margin:0 0 32px; }
.business-page h1 em,.business-page h2 em { color:#426831; font-family:'Cormorant Garamond',Georgia,serif; font-weight:600; }
.business-page h2 { font-size:clamp(34px,4vw,60px); line-height:1.08; font-weight:600; margin:0 0 26px; }
.business-page h3 { font-size:23px; line-height:1.2; font-weight:600; }
.business-page p { line-height:1.75; }
.business-hero { padding:calc(var(--header-height,82px) + 65px) 0 75px; background:#edf0e5; }
.business-hero .co-kicker { color:#426831; }
.business-hero-bottom { display:flex; justify-content:space-between; align-items:end; gap:40px; }
.business-hero-bottom .co-lead { max-width:55ch; margin:0; }
.business-page .co-button { display:inline-flex; justify-content:space-between; align-items:center; gap:24px; min-height:52px; padding:14px 21px; background:#87e64b; border:1px solid #6bbd36; border-radius:8px; color:#14200d; text-decoration:none; font-size:13px; font-weight:650; line-height:1.4; cursor:pointer; }
.business-page .co-button > span { flex:none; font-size:22px; }
.business-page .co-button:hover { background:#a2ef71; }
.business-page .co-button:focus-visible,.business-page input:focus-visible,.business-page select:focus-visible,.business-page textarea:focus-visible { outline:3px solid #426831; outline-offset:4px; }
.business-page .site-menu > a { white-space:nowrap; }
.contact-opening { background:linear-gradient(110deg,#edf0e5 0 48%,#fff5ed 48%); }
.contact-layout { display:grid; grid-template-columns:1fr 1fr; gap:8%; align-items:start; }
.contact-intro { padding-top:20px; }
.contact-intro h1 { font-size:clamp(48px,5.5vw,80px); }
.contact-intro .co-lead { font-size:17px; }
.contact-direct { margin:38px 0 22px; }
.contact-direct > a { position:relative; display:flex; flex-direction:column; gap:8px; border-top:1px solid #15201326; padding:19px 30px 19px 0; color:inherit; text-decoration:none; }
.contact-direct > a:last-child { border-bottom:1px solid #15201326; }
.contact-direct span { font-size:11px; color:#526047; }
.contact-direct strong { font-size:clamp(17px,1.8vw,25px); font-weight:500; letter-spacing:-.025em; overflow-wrap:anywhere; }
.contact-direct i { position:absolute; right:0; top:40%; font-size:22px; font-style:normal; }
.contact-hours { margin:0 0 28px; font-size:12px; color:#526047; }
.contact-form-panel { padding:clamp(24px,3vw,44px); border:1px solid #15201320; border-radius:20px; background:#fff; box-shadow:0 16px 60px #15201308; }
.contact-form-panel h2 { font-size:36px; margin-bottom:15px; }
.contact-form-panel .co-kicker { margin-bottom:18px; }
.contact-form-panel > p:not(.co-kicker) { font-size:14px; color:#526047; margin-bottom:27px; }
.contact-fields { display:grid; grid-template-columns:1fr 1fr; gap:19px 16px; }
.contact-fields > div { min-width:0; }
.field-full { grid-column:1/-1; }
.business-page label { display:block; margin-bottom:9px; font-size:12px; font-weight:600; line-height:1.5; }
.business-page input,.business-page select,.business-page textarea { display:block; width:100%; min-width:0; min-height:48px; border:1px solid #15201340; border-radius:7px; background:#fffaf5; padding:12px; color:#152013; font:400 14px/1.5 'Instrument Sans',Arial,sans-serif; }
.business-page select { padding-right:24px; }
.business-page textarea { resize:vertical; min-height:140px; }
.business-page .form-honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.form-privacy { color:#526047; font-size:11px; margin:20px 0; }
.contact-form-panel .co-button { width:100%; }
.contact-form-status { margin:18px 0 0; font-size:14px; color:#355922; }
.contact-form-status[data-error] { color:#94251a; }
.contact-form-panel button:disabled { cursor:wait; opacity:.7; }
.contact-page .lm-footer-stage { display:grid; }
.contact-page .lm-footer-directory { border-top:1px solid #15201320; }
.directory-heading { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:35px; }
.directory-heading h2 { margin:0; }
.directory-heading p { max-width:37ch; color:#526047; font-size:14px; margin:0; }
.integration-filters { display:grid; grid-template-columns:1.6fr 1fr auto; align-items:end; gap:20px; padding:26px; background:#e7eedc; border:1px solid #15201320; border-radius:14px; }
.integration-filters[hidden] { display:none; }
.integration-filters button,.integration-empty button { min-height:48px; border:1px solid #152013; border-radius:7px; padding:12px 18px; background:transparent; color:#152013; font:600 12px/1.5 'Instrument Sans',Arial,sans-serif; cursor:pointer; }
.integration-count { margin:20px 0 35px; font-size:13px; color:#526047; }
.integration-group { margin:0 0 46px; }
.integration-group > h3 { font-size:24px; margin:0 0 21px; }
.integration-catalogue-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; padding:0; margin:0; list-style:none; }
.integration-catalogue-grid li { min-width:0; padding:22px; border:1px solid #15201320; border-radius:12px; background:#fff; }
.integration-catalogue-grid h4 { margin:0 0 10px; font-size:17px; font-weight:600; line-height:1.35; }
.integration-catalogue-grid p { color:#526047; font-size:13px; margin:0; }
.integration-catalogue-grid [hidden],.integration-group[hidden],.integration-empty[hidden] { display:none; }
.integration-request { display:flex; justify-content:space-between; align-items:center; gap:40px; padding:42px; background:#e7eedc; border-radius:16px; }
.integration-request p:not(.co-kicker) { max-width:60ch; color:#526047; }
.integration-request .co-button { flex:none; }
.integration-empty { padding:35px 0 55px; }
.pricing-currency { font-size:12px; color:#526047; margin:30px 0 0; }
.pricing-nav { padding:22px 0; background:#fff; border-bottom:1px solid #15201320; }
.pricing-nav > div { display:flex; flex-wrap:wrap; gap:12px 30px; }
.pricing-nav a { display:inline-flex; align-items:center; min-height:44px; font-size:13px; text-decoration:none; border-bottom:1px solid #15201340; }
.pricing-section { padding:90px 0; scroll-margin-top:110px; }
.pricing-split { display:grid; grid-template-columns:.8fr 1.2fr; gap:8%; align-items:start; }
.pricing-split > div { min-width:0; }
.pricing-split > div:first-child > p:not(.co-kicker) { font-size:16px; color:#526047; }
.rate-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.rate-grid article { display:flex; flex-direction:column; padding:26px; background:#e7eedc; border:1px solid #15201320; border-radius:14px; }
.rate-grid h3 { margin:0 0 30px; font-size:20px; }
.rate-grid strong { display:flex; align-items:baseline; gap:7px; flex-wrap:wrap; font-size:40px; letter-spacing:-.06em; font-weight:600; }
.rate-grid strong small,.seo-retainer strong small,.campaign-plan strong small { font-size:12px; font-weight:400; letter-spacing:0; }
.rate-grid p { font-size:13px; color:#526047; margin:18px 0 0; }
.price-example { padding:24px 0; margin-bottom:15px; }
.price-example summary,.pricing-faq summary { cursor:pointer; font-size:16px; font-weight:600; line-height:1.5; }
.price-example summary span { float:right; }
.price-example p { font-size:13px; color:#526047; }
.price-example dl { margin:20px 0; }
.price-example dl > div { display:flex; justify-content:space-between; gap:16px; padding:13px 0; border-bottom:1px solid #15201320; font-size:14px; }
.price-example dd { margin:0; white-space:nowrap; font-weight:600; }
.price-example .price-total { font-size:17px; color:#355922; }
.pricing-section--sage { background:#e7eedc; }
.pricing-section-heading { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-bottom:38px; }
.pricing-section-heading h2 { margin:0; }
.pricing-section-heading > p { max-width:47ch; color:#526047; margin:0; }
.pricing-table-wrap { width:100%; overflow:auto; border:1px solid #15201320; border-radius:12px; margin-bottom:30px; background:#fff; }
.pricing-table { width:100%; border-collapse:collapse; text-align:left; font-size:14px; }
.pricing-table caption { padding:20px; text-align:left; font-size:12px; color:#526047; }
.pricing-table th,.pricing-table td { padding:22px; border-bottom:1px solid #15201320; line-height:1.6; }
.pricing-table th { font-weight:600; }
.pricing-table thead { background:#152013; color:#fff5ed; }
.pricing-table td:nth-child(2),.pricing-table td:nth-child(3) { white-space:nowrap; font-size:21px; letter-spacing:-.04em; }
.audit-list article { display:flex; align-items:start; justify-content:space-between; gap:30px; padding:25px 0; border-top:1px solid #15201326; }
.audit-list h3 { font-size:22px; margin:0 0 13px; }
.audit-list p { font-size:14px; color:#526047; margin:0; }
.audit-list article > strong { flex:none; font-size:26px; letter-spacing:-.05em; }
.audit-list .audit-bundle { padding:27px; margin:18px 0 30px; border-radius:14px; background:#e7eedc; border:1px solid #15201320; }
.audit-bundle .co-kicker { font-size:9px; margin-bottom:15px; }
.audit-bundle p + p { margin-top:14px; font-size:12px; }
.seo-retainer { padding:0 0 28px; }
.seo-retainer strong { display:block; margin:15px 0; font-size:28px; letter-spacing:-.04em; }
.pricing-section--dark { background:#102016; color:#fffaf4; }
.pricing-section--dark .co-kicker { color:#b4f187; }
.pricing-section--dark .pricing-section-heading > p { color:#c0cfb9; }
.campaign-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.campaign-plan { display:flex; flex-direction:column; padding:30px; border:1px solid #ffffff35; border-radius:16px; background:#ffffff06; }
.campaign-plan h3 { font-size:25px; margin-bottom:30px; }
.campaign-plan > strong { font-size:clamp(32px,3vw,46px); line-height:1.2; letter-spacing:-.06em; display:flex; gap:7px; align-items:baseline; flex-wrap:wrap; }
.campaign-plan .campaign-spend { font-size:12px; color:#c0cfb9; padding-bottom:23px; border-bottom:1px solid #ffffff30; }
.campaign-plan ul { padding-left:19px; margin:0 0 26px; color:#e0e9dc; font-size:13px; line-height:2; }
.campaign-plan .co-button { margin-top:auto; font-size:12px; }
.campaign-custom { display:flex; align-items:center; justify-content:space-between; gap:35px; margin-top:38px; padding-top:32px; border-top:1px solid #ffffff30; }
.campaign-custom h3 { margin:0 0 10px; }
.campaign-custom p { color:#c0cfb9; max-width:60ch; margin:0; }
.campaign-channels { display:flex; flex-wrap:wrap; gap:10px; margin-top:30px; }
.campaign-channels span { border:1px solid #ffffff30; border-radius:30px; padding:9px 15px; font-size:11px; color:#c0cfb9; }
.pricing-faq details { border-top:1px solid #15201330; padding:23px 0; }
.pricing-faq p { font-size:14px; color:#526047; margin:17px 0 0; }
.pricing-terms { padding:0 0 60px; }
.pricing-terms p { font-size:12px; color:#526047; max-width:100ch; }
@media(max-width:1100px) {
 .contact-layout { gap:5%; }
 .contact-fields { grid-template-columns:1fr; }
 .integration-catalogue-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .campaign-plan { padding:24px; }
 .pricing-split { gap:5%; }
 .rate-grid { grid-template-columns:1fr; }
}
@media(max-width:800px) {
 .business-hero { padding-top:calc(var(--header-height,82px) + 40px); }
 .contact-layout,.pricing-split { grid-template-columns:1fr; gap:45px; }
 .contact-opening { background:#edf0e5; }
 .contact-fields { grid-template-columns:1fr 1fr; }
 .business-hero-bottom,.directory-heading,.pricing-section-heading,.campaign-custom,.integration-request { flex-direction:column; align-items:flex-start; gap:25px; }
 .integration-filters { grid-template-columns:1fr 1fr; }
 .integration-filters > div:first-child { grid-column:1/-1; }
 .integration-catalogue-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .campaign-grid { grid-template-columns:1fr; }
 .campaign-plan > strong { font-size:42px; }
 .rate-grid { grid-template-columns:1fr 1fr; }
 .pricing-table { min-width:650px; }
 .pricing-section { padding:65px 0; }
 .integration-request { padding:28px; }
}
@media(max-width:480px) {
 .business-page h1 { font-size:clamp(44px,12vw,62px); }
 .contact-fields,.rate-grid,.integration-filters,.integration-catalogue-grid { grid-template-columns:1fr; }
 .contact-form-panel { padding:24px 20px; }
 .business-page .co-button { max-width:100%; }
 .integration-filters { padding:20px; }
 .integration-catalogue-grid li { padding:20px; }
 .audit-list article { flex-direction:column; gap:12px; }
 .pricing-nav > div { gap:8px 20px; }
 .pricing-nav a { font-size:12px; }
 .contact-intro .co-button { width:100%; }
}
