.ln-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.ln-offerings { background:var(--ln-paper); }
.ln-offering-tools { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:24px; margin:0 0 36px; }
.ln-offering-filters { display:flex; flex-wrap:wrap; gap:8px; }
.ln-offering-filters button { min-height:44px; padding:10px 15px; border:1px solid var(--ln-line); background:#fff; color:var(--ln-grey); border-radius:30px; font-size:12px; font-weight:700; cursor:pointer; }
.ln-offering-filters button.is-active { background:var(--ln-ink); color:#fff; border-color:var(--ln-ink); }
.ln-offering-search { display:flex; align-items:center; gap:12px; background:#fff; padding:12px 18px; border:1px solid var(--ln-line); border-radius:30px; min-width:260px; min-height:44px; }
.ln-offering-search input { width:100%; min-width:0; background:transparent; color:var(--ln-ink); border:0; outline:0; font-size:13px; }
.ln-offering-search:focus-within { outline:2px solid #00855f; outline-offset:3px; }
.ln-offering-filters button:focus-visible, .ln-offering-card a:focus-visible { outline:2px solid #00855f; outline-offset:4px; }
.ln-offering-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.ln-offering-card { min-width:0; background:#fff; border:1px solid var(--ln-line); border-radius:var(--ln-radius); overflow:hidden; display:flex; flex-direction:column; transition:box-shadow .2s,transform .2s; }
.ln-offering-card:hover { transform:translateY(-4px); box-shadow:0 16px 32px rgba(16,18,20,.07); }
.ln-offering-card[hidden], .ln-offering-empty[hidden] { display:none; }
.ln-offering-image { position:relative; display:block; aspect-ratio:3/2; background:#f5f6f2; overflow:hidden; }
.ln-offering-image img { width:100%; height:100%; display:block; object-fit:cover; }
.ln-offering-image > span { position:absolute; left:20px; top:18px; background:rgba(255,255,255,.9); border:1px solid var(--ln-line); border-radius:50%; width:38px; height:38px; display:grid; place-items:center; font-size:11px; font-weight:800; }
.ln-offering-card-body { padding:26px; display:flex; flex-direction:column; flex:1; }
.ln-offering-category { display:flex; gap:9px; align-items:center; color:#007752; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.ln-offering-card h3 { font-size:23px; line-height:1.22; letter-spacing:-.025em; margin:8px 0 15px; overflow-wrap:anywhere; }
.ln-offering-card-body > p:not(.ln-offering-category) { color:var(--ln-grey); font-size:14px; line-height:1.7; margin-bottom:24px; }
.ln-offering-card .ln-text-link { margin-top:auto; font-size:12px; }
.ln-offering-empty { margin:35px 0 0; padding:28px; background:#fff; border-radius:16px; color:var(--ln-grey); }
.ln-offering-more { display:flex; justify-content:center; margin-top:40px; }
.ln-service-guide { background:#fff; }
.ln-service-guide-lead { color:var(--ln-grey); font-size:16px; line-height:1.8; max-width:450px; }
.ln-service-guide-links { display:flex; flex-wrap:wrap; gap:10px; margin:0 35px 28px 40px; }
.ln-service-guide-links a { padding:10px 14px; border:1px solid var(--ln-line); border-radius:20px; font-size:12px; font-weight:700; }
.ln-service-guide summary:focus-visible, .ln-service-guide-links a:focus-visible { outline:2px solid #00855f; outline-offset:4px; }
@media(max-width:760px) { .ln-service-guide-links { margin-left:30px; margin-right:0; } }
#service-catalog, #service-examples { scroll-margin-top:80px; }
.ln-offering-hero { padding:146px 0 70px; background:var(--ln-paper); }
.ln-offering-hero-grid { display:grid; grid-template-columns:1.05fr 1fr; gap:60px; align-items:center; margin-top:40px; }
.ln-offering-hero h1 { font-size:clamp(36px,4.4vw,64px); line-height:1.07; letter-spacing:-.045em; font-weight:800; margin:20px 0 26px; overflow-wrap:anywhere; }
.ln-offering-lead { color:var(--ln-grey); font-size:18px; line-height:1.7; max-width:580px; }
.ln-offering-hero-art { margin:0; position:relative; border:1px solid var(--ln-line); border-radius:24px; overflow:hidden; background:#f5f6f2; }
.ln-offering-hero-art img { width:100%; height:auto; display:block; aspect-ratio:3/2; object-fit:cover; }
.ln-offering-hero-art figcaption { border-top:1px solid var(--ln-line); display:flex; align-items:center; gap:12px; padding:20px 24px; background:#fff; font-size:12px; font-weight:700; }
.ln-offering-hero-art figcaption i { color:#00855f; }
.ln-offering-detail-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:80px; align-items:start; }
.ln-offering-detail-grid h2 { font-size:clamp(25px,3vw,39px); line-height:1.2; letter-spacing:-.03em; }
.ln-offering-description { font-size:17px; line-height:1.8; color:var(--ln-grey); }
.ln-offering-includes { border:1px solid var(--ln-line); border-radius:var(--ln-radius); padding:35px; }
.ln-offering-includes h3 { font-size:22px; }
.ln-offering-includes ul { margin:0; padding:0; list-style:none; }
.ln-offering-includes li { display:flex; gap:15px; padding:19px 0; border-top:1px solid var(--ln-line); font-size:15px; line-height:1.6; }
.ln-offering-includes i { color:#00855f; margin-top:5px; }
.ln-offering-fit { padding-top:0; }
.ln-offering-fit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; padding-top:36px; border-top:1px solid var(--ln-line); }
.ln-offering-fit-grid article { min-width:0; }
.ln-offering-fit-grid .ln-kicker { font-size:10px; margin-bottom:20px; }
.ln-offering-fit-grid h3 { font-size:21px; line-height:1.45; letter-spacing:-.02em; }
.ln-offering-fit-grid article > p:not(.ln-kicker), .ln-offering-fit-grid li { color:var(--ln-grey); font-size:15px; line-height:1.8; }
.ln-offering-fit-grid ul { padding-left:20px; margin:0; }
@media(max-width:760px) { .ln-offering-fit-grid { grid-template-columns:1fr; gap:26px; } }
.ln-offering-examples { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.ln-offering-examples article { background:#fff; border:1px solid var(--ln-line); padding:38px; border-radius:var(--ln-radius); }
.ln-offering-examples article > span { display:block; margin-bottom:28px; font-size:11px; font-weight:800; color:#007752; }
.ln-offering-examples h3 { font-size:25px; letter-spacing:-.02em; }
.ln-offering-examples p { margin-bottom:0; color:var(--ln-grey); font-size:16px; line-height:1.8; }
.ln-offering-outcome { display:flex; gap:24px; align-items:center; background:var(--ln-ink); color:#fff; border-radius:var(--ln-radius); margin-top:24px; padding:32px 38px; }
.ln-offering-outcome > i { font-size:32px; color:var(--ln-green); }
.ln-offering-outcome h3 { font-size:13px; margin-bottom:8px; color:var(--ln-green); }
.ln-offering-outcome p { font-size:19px; line-height:1.5; margin:0; }
.ln-offering-connections { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.ln-offering-connections > a { display:flex; align-items:center; gap:22px; border:1px solid var(--ln-line); padding:26px; border-radius:var(--ln-radius); }
.ln-offering-connections .ln-project-mark { margin:0; flex-shrink:0; }
.ln-offering-connections h3 { font-size:21px; margin-bottom:8px; }
.ln-offering-connections p { color:var(--ln-grey); font-size:13px; line-height:1.6; margin:0; }
.ln-offering-connections > a > span:last-child { margin-left:auto; }
.ln-offering-related { margin-top:40px; padding-top:30px; border-top:1px solid var(--ln-line); display:flex; flex-wrap:wrap; align-items:center; gap:14px; }
.ln-offering-related > span { color:var(--ln-grey); font-size:12px; margin-right:10px; }
.ln-offering-related a { padding:10px 16px; border:1px solid var(--ln-line); border-radius:30px; font-size:12px; }
@media(max-width:1100px) { .ln-offering-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .ln-offering-hero-grid { gap:35px; } .ln-offering-detail-grid { gap:35px; } }
@media(max-width:760px) { .ln-offering-hero { padding:112px 0 48px; } .ln-offering-hero-grid,.ln-offering-detail-grid,.ln-offering-examples,.ln-offering-connections { grid-template-columns:1fr; } .ln-offering-hero-grid { margin-top:28px; gap:32px; } .ln-offering-hero h1 { font-size:38px; } .ln-offering-hero .ln-actions { flex-wrap:wrap; gap:20px; } .ln-offering-grid { gap:16px; } .ln-offering-card-body { padding:22px; } .ln-offering-card h3 { font-size:21px; } .ln-offering-tools { flex-direction:column; align-items:stretch; } .ln-offering-search { width:100%; } .ln-offering-includes,.ln-offering-examples article { padding:26px; } .ln-offering-outcome { padding:26px; align-items:flex-start; } }
@media(max-width:520px) { .ln-offering-grid { grid-template-columns:1fr; } .ln-offering-hero h1 { font-size:34px; } .ln-offering-connections > a { padding:22px; gap:16px; } }
@media(prefers-reduced-motion:reduce) { .ln-offering-card { transition:none; } .ln-offering-card:hover { transform:none; } }
