/* Web & Commerce native blocks extend the shared service foundation. */
.ll-web .ll-web-icon-box{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:var(--space-5);background:var(--ll-tint);border-radius:var(--radius-md);color:var(--ll-blue)}
.ll-web .ll-web-badge{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);font-size:14px;font-weight:700;color:var(--ll-blue)}
.ll-web .ll-web-badge-label{color:inherit;font-size:14px;font-weight:700}
.ll-web .ll-web-service-card{display:flex;flex-direction:column;gap:var(--space-3)}
.ll-web .ll-web-service-card .ll-web-badge{margin-bottom:var(--space-2)}
.ll-web .ll-web-service-card .ll-link{margin-top:auto;padding-top:var(--space-4)}
.ll-web .ll-web-featured-service{padding:var(--space-8);border:var(--border-subtle);border-radius:var(--radius-lg);margin-bottom:var(--space-6);background:var(--ll-white)}
.ll-web .ll-web-featured-service h3{font-size:28px;margin-bottom:var(--space-4)}
.ll-web .ll-web-feature-links{display:grid;gap:var(--space-3)}
.ll-web .ll-web-feature-link{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4);border:var(--border-subtle);border-radius:var(--radius-md)}
.ll-web .ll-web-feature-link h3{font-size:16px;margin:0;flex:1}
.ll-web .ll-web-feature-link a{color:var(--ll-ink);text-decoration:none;display:flex;align-items:center;min-height:44px}
.ll-web .ll-web-feature-link a:hover{text-decoration:underline}
.ll-web .ll-web-wide-link{display:flex;align-items:center;gap:var(--space-6);padding:var(--space-6);margin-top:var(--space-6);border:var(--border-subtle);border-radius:var(--radius-lg);background:var(--ll-white)}
.ll-web .ll-web-wide-link>.ll-panel-icon{color:var(--ll-blue);flex-shrink:0}
.ll-web .ll-web-wide-link>.ll-stack{flex:1}.ll-web .ll-web-wide-link .ll-link{margin:0}
.ll-web .ll-web-split{align-items:center;gap:var(--space-12)}
.ll-web .ll-web-split .ll-lead{margin-top:var(--space-5);font-size:16px}
.ll-web .ll-web-split .ll-note{margin-top:var(--space-5)}
.ll-web .ll-web-number-row{display:flex;align-items:start;gap:var(--space-4);padding-block:var(--space-6);border-bottom:var(--border-subtle)}
.ll-web .ll-web-number-row:first-child{padding-top:0}.ll-web .ll-web-number-row>.ll-number{flex-shrink:0;margin:0;background:transparent;justify-content:start;width:28px}
.ll-web .ll-web-number-row h3{font-size:19px}.ll-web .ll-web-number-row p{font-size:14px}
.ll-web .ll-web-editorial-panel,.ll-web .ll-web-deliverables{background:var(--ll-white);border:var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-8)}
.ll-web .ll-web-panel-label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ll-blue);margin-bottom:var(--space-6)}
.ll-web .ll-web-editorial-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);margin-bottom:var(--space-3);border:var(--border-subtle);border-radius:var(--radius-md)}
.ll-web .ll-web-editorial-row>.ll-panel-icon{color:var(--ll-blue);flex-shrink:0}.ll-web .ll-web-editorial-row p{font-size:14px;font-weight:600;line-height:1.5}
.ll-web .ll-web-editorial-row--accent{background:var(--ll-tint)}.ll-web .ll-web-editorial-row .ll-web-row-label{font-size:12px;margin-left:auto;font-weight:400}
.ll-web .ll-web-deliverables>h3{margin-bottom:var(--space-6)}
.ll-web .ll-web-deliverable{display:flex;align-items:start;gap:var(--space-4);border-top:var(--border-subtle);padding-block:var(--space-5)}
.ll-web .ll-web-deliverable>.ll-panel-icon{color:var(--ll-blue);flex-shrink:0}.ll-web .ll-web-deliverable h3{font-size:17px}.ll-web .ll-web-deliverable p{font-size:14px}
.ll-web .ll-web-dark-panel{background:var(--ll-dark);padding:var(--space-8);border-radius:var(--radius-lg)}
.ll-web .ll-web-dark-panel :is(h3,p){color:var(--text-on-dark)}.ll-web .ll-web-dark-panel .ll-eyebrow{color:var(--action-on-dark)}.ll-web .ll-web-dark-panel>p:not(.ll-eyebrow){margin-top:var(--space-5);color:var(--text-secondary-on-dark)}
.ll-web .ll-comparison{align-self:start}.ll-web .ll-comparison .ll-stack+.ll-stack{margin-top:var(--space-5)}
.ll-web .ll-web-tech-strip{align-items:center}.ll-web .ll-web-tech-strip h2{font-size:26px}.ll-web .ll-web-tech-strip .ll-pills{margin:0;justify-content:end}.ll-web .ll-web-tech-strip .ll-pill{font-size:13px;padding:var(--space-2) var(--space-3)}
.ll-web .ll-web-doc-links{font-size:13px;margin-top:var(--space-6)}
.ll-web .ll-web-project-grid .ll-project-showcase__card--featured{grid-template-columns:1fr}
.ll-web .ll-web-project-grid .ll-project-showcase__card--featured .ll-project-showcase__visual{min-height:230px;aspect-ratio:1.8}
.ll-web .ll-web-project-grid .ll-project-showcase__copy{padding:var(--space-6)}
.ll-web .ll-web-metrics{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);margin-top:var(--space-6);padding:var(--space-6);border:var(--border-subtle);border-radius:var(--radius-lg);background:var(--ll-tint)}
.ll-web .ll-web-metric-value{font-size:clamp(27px,3vw,40px);font-weight:750;letter-spacing:-.04em;line-height:1.2;color:var(--ll-blue)}
.ll-web .ll-web-metric .ll-small{margin-top:var(--space-2)}.ll-web .ll-web-metrics>.ll-note{grid-column:1/-1}
/* Example structures use editable blocks; they represent no live shop or customer data. */
.ll-web .ll-web-visual .ll-web-badge{color:var(--text-on-dark)}
.ll-web .ll-web-visual .ll-web-badge-label{color:inherit}
.ll-web .ll-web-visual .ll-pill{color:var(--text-secondary-on-dark);background:var(--surface-dark-raised);border-color:var(--border-on-dark)}
.ll-web .ll-web-window{color:var(--ll-ink);background:var(--ll-soft);border:var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}
.ll-web .ll-web-window-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:var(--border-subtle);background:var(--ll-white)}
.ll-web .ll-web-window-bar p{font-size:11px;color:var(--ll-body)}.ll-web .ll-web-window-bar .ll-web-window-dots{letter-spacing:3px;color:var(--border-control)}
.ll-web .ll-web-window-body{padding:var(--space-6)}
.ll-web .ll-web-visual .ll-web-mini-eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ll-body);margin-bottom:var(--space-2)}
.ll-web .ll-web-window .ll-web-mini-title{font-size:27px;line-height:1.15;letter-spacing:-.04em;font-weight:750;color:var(--ll-ink)}
.ll-web .ll-web-window .ll-web-mini-title em{color:var(--ll-blue)}
.ll-web .ll-web-mini-copy{font-size:12px;line-height:1.7}.ll-web .ll-web-window .ll-web-mini-copy{color:var(--ll-body);margin-top:var(--space-3)}
.ll-web .ll-web-mini-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-5)}
.ll-web .ll-web-mini-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-2);border:var(--border-subtle);border-radius:var(--radius-sm);background:var(--ll-white);color:var(--ll-blue)}
.ll-web .ll-web-mini-tile p{font-size:12px;color:var(--ll-body)}
.ll-web .ll-web-visual>.ll-web-mini-tiles .ll-web-mini-tile{background:var(--surface-dark-raised);border-color:var(--border-on-dark);color:var(--action-on-dark)}
.ll-web .ll-web-visual>.ll-web-mini-tiles .ll-web-mini-tile p{color:var(--text-on-dark)}
.ll-web .ll-web-connector{display:flex;align-items:center;justify-content:center;height:36px;color:var(--action-on-dark)}.ll-web .ll-web-connector .ll-panel-icon{transform:rotate(90deg)}
.ll-web .ll-web-visual>.ll-pills{justify-content:center;margin:0}
.ll-web .ll-web-tabs>.ll-buttons{display:flex;flex-wrap:nowrap;margin:0 0 var(--space-5);gap:var(--space-2);padding:var(--space-2);background:var(--surface-dark);border:1px solid var(--border-on-dark);border-radius:var(--radius-md)}
.ll-web .ll-web-tab-button{flex:1}.ll-web .ll-web-tab-button a{display:flex;justify-content:center;align-items:center;min-height:44px;font-size:13px;padding:var(--space-2);color:var(--text-secondary-on-dark);background:transparent;border-radius:var(--radius-sm);text-decoration:none}
.ll-web .ll-web-tab-button a[aria-selected=true]{color:var(--text-on-dark);background:var(--brand-primary)}.ll-web .ll-web-tab-button a:hover{background:var(--surface-dark-raised)}
.ll-web .ll-web-tab-panel+.ll-web-tab-panel{margin-top:var(--space-4)}.ll-web .ll-web-tabs.is-enhanced .ll-web-tab-panel{margin:0}.ll-web .ll-web-tab-panel[hidden]{display:none!important}
.ll-web .ll-web-editor{display:grid;grid-template-columns:100px 1fr;min-height:230px}
.ll-web .ll-web-editor-sidebar{padding:var(--space-4) var(--space-3);background:var(--ll-tint);border-right:var(--border-subtle)}
.ll-web .ll-web-editor-sidebar p{font-size:11px;line-height:1.5;color:var(--ll-body);padding:var(--space-2);margin-bottom:var(--space-2);background:var(--ll-white);border:var(--border-subtle);border-radius:var(--radius-sm)}
.ll-web .ll-web-editor-sidebar p:first-child{background:transparent;border:0;padding:0;font-weight:700;margin-bottom:var(--space-4)}
.ll-web .ll-web-editor-content{padding:var(--space-5)}.ll-web .ll-web-editor-content .ll-web-mini-title{font-size:26px}
.ll-web .ll-web-text-lines{margin-top:var(--space-4)}.ll-web .ll-web-text-lines p{font-size:11px;color:var(--ll-body)}
.ll-web .ll-web-block-outline{border:1px dashed var(--brand-secondary);border-radius:var(--radius-sm);padding:var(--space-3);margin-top:var(--space-4)}
.ll-web .ll-web-block-outline p{color:var(--ll-blue);font-size:12px}.ll-web .ll-web-block-outline .ll-web-mini-copy{margin-top:var(--space-1)}
.ll-web .ll-web-node-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}
.ll-web .ll-web-node{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-on-dark);border-radius:var(--radius-md);background:var(--surface-dark-raised);color:var(--action-on-dark)}
.ll-web .ll-web-node .ll-panel-icon{flex-shrink:0}.ll-web .ll-web-node-title{font-size:14px;font-weight:650;line-height:1.4;color:var(--text-on-dark)}.ll-web .ll-web-node .ll-stack>*+*{margin-top:var(--space-1)}
.ll-web .ll-web-plugin-center{padding:var(--space-6);border:1px solid var(--brand-secondary);border-radius:var(--radius-md);background:var(--surface-dark-raised);text-align:center;color:var(--action-on-dark)}
.ll-web .ll-web-plugin-center>.ll-panel-icon{margin-bottom:var(--space-3)}.ll-web .ll-web-plugin-center .ll-small{margin-top:var(--space-3)}
.ll-web .ll-web-maintenance-flow{display:grid;gap:var(--space-3)}
.ll-web .ll-web-maintenance-step{display:flex;align-items:center;gap:var(--space-3);position:relative}
.ll-web .ll-web-maintenance-step+.ll-web-maintenance-step:before{content:'';position:absolute;left:14px;top:-13px;width:1px;height:13px;background:var(--border-on-dark)}
.ll-web .ll-web-maintenance-step>.ll-web-node{flex:1;min-width:0}.ll-web .ll-web-step-number{font-size:11px;min-width:28px;color:var(--action-on-dark);font-weight:700;text-align:center}
.ll-web .ll-web-maintenance-step>.ll-web-step-number{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-on-dark);border-radius:50%}
.ll-web .ll-web-commerce-flow{display:grid;gap:var(--space-3)}
.ll-web .ll-web-commerce-step{display:flex;align-items:center;gap:var(--space-3);border-bottom:1px solid var(--border-on-dark);padding-bottom:var(--space-3)}
.ll-web .ll-web-commerce-step:last-child{border:0;padding-bottom:0}.ll-web .ll-web-commerce-step .ll-web-node{flex:1;background:transparent;border:0;padding:var(--space-2) 0;min-width:0}
.ll-web .ll-web-product{display:grid;grid-template-columns:.9fr 1.1fr;gap:var(--space-4);align-items:center;padding:var(--space-5)}
.ll-web .ll-web-product-shape{display:flex;align-items:center;justify-content:center;min-height:152px;border-radius:var(--radius-md);background:var(--brand-selected);color:var(--ll-blue)}
.ll-web .ll-web-product-shape>.ll-panel-icon{transform:rotate(-12deg)}
.ll-web .ll-web-product-title{font-size:20px!important;font-weight:700;line-height:1.3;color:var(--ll-ink)!important;letter-spacing:-.03em}
.ll-web .ll-web-product-info .ll-pills{margin-top:var(--space-3);gap:var(--space-1)}
.ll-web .ll-web-product-info .ll-pill{background:var(--ll-white);border-color:var(--ll-line);color:var(--ll-body);font-size:11px}
.ll-web .ll-web-example-action{font-size:11px;font-weight:650;line-height:1.5;padding:var(--space-2);background:var(--ll-blue);color:var(--text-on-primary)!important;border-radius:var(--radius-sm);text-align:center;margin-top:var(--space-3)}
.ll-web .ll-web-commerce-lanes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-4)}
.ll-web .ll-web-commerce-lane{padding:var(--space-3);border:1px solid var(--border-on-dark);border-radius:var(--radius-md);background:var(--surface-dark-raised);color:var(--action-on-dark)}
.ll-web .ll-web-commerce-lane .ll-web-mini-eyebrow{color:var(--action-on-dark);font-size:10px;margin-bottom:var(--space-3)}
.ll-web .ll-web-commerce-lane>p:last-child{font-size:12px;font-weight:650;color:var(--text-on-dark);margin-top:var(--space-2)}
.ll-web .ll-web-app-title{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:var(--border-subtle);background:var(--ll-white)}
.ll-web .ll-web-app-title p{font-size:13px;color:var(--ll-ink);font-weight:650}.ll-web .ll-web-app-title .ll-web-mini-copy{margin:0;font-size:10px;font-weight:400}
.ll-web .ll-web-kanban{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);padding:var(--space-4)}
.ll-web .ll-web-kanban .ll-web-mini-eyebrow{font-size:10px;letter-spacing:0;text-transform:none}
.ll-web .ll-web-kanban-card{border:var(--border-subtle);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-2);margin-top:var(--space-2);background:var(--ll-white)}
.ll-web .ll-web-kanban-card>p{font-size:12px;color:var(--ll-ink)}.ll-web .ll-web-kanban-card .ll-web-mini-copy{font-size:10px;color:var(--ll-body);margin-top:var(--space-2)}
.ll-web .ll-web-kanban-card--active{border-color:var(--brand-primary);background:var(--ll-tint)}
.ll-web--shopify-case .ll-wrap>h2{margin:0 0 var(--space-5)}
.ll-web--shopify-case .ll-board .ll-board-title{font-size:38px;letter-spacing:-.04em}
.ll-web--shopify-case .ll-board-title+.ll-small{margin-top:var(--space-2)}
.ll-web--shopify-case .ll-small+.ll-board-title{margin-top:var(--space-6)}
@media(max-width:1000px){.ll-web .ll-web-split{gap:var(--space-8)}.ll-web .ll-web-node{padding:var(--space-3)}.ll-web .ll-web-editor{grid-template-columns:88px 1fr}.ll-web .ll-web-editor-content{padding:var(--space-4)}.ll-web .ll-web-product{padding:var(--space-4);gap:var(--space-3)}}
@media(max-width:781px){.ll-web .ll-web-wide-link{flex-wrap:wrap;gap:var(--space-4)}.ll-web .ll-web-wide-link>.ll-stack{flex-basis:calc(100% - 56px)}.ll-web .ll-web-wide-link .ll-link{flex-basis:100%;border-top:var(--border-subtle);padding-top:var(--space-3)}.ll-web .ll-web-featured-service{padding:var(--space-6)}.ll-web .ll-web-tech-strip .ll-pills{justify-content:start}.ll-web .ll-web-project-grid{grid-template-columns:1fr}.ll-web .ll-web-editorial-panel,.ll-web .ll-web-deliverables{padding:var(--space-6)}.ll-web .ll-web-visual{width:100%}.ll-web .ll-web-dark-panel{padding:var(--space-6)}}
@media(max-width:540px){.ll-web .ll-web-node-pair{gap:var(--space-2)}.ll-web .ll-web-node-pair .ll-web-node{flex-direction:column;align-items:start}.ll-web .ll-web-node-title{font-size:13px}.ll-web .ll-web-editor{grid-template-columns:76px 1fr}.ll-web .ll-web-editor-sidebar{padding:var(--space-3) var(--space-2)}.ll-web .ll-web-editor-content{padding:var(--space-4) var(--space-3)}.ll-web .ll-web-editor-content .ll-web-mini-title{font-size:23px}.ll-web .ll-web-product{gap:var(--space-3);padding:var(--space-4)}.ll-web .ll-web-product-shape{min-height:132px}.ll-web .ll-web-product-title{font-size:18px!important}.ll-web .ll-web-commerce-lane{padding:var(--space-2)}.ll-web .ll-web-commerce-lane>p:last-child{font-size:11px}.ll-web .ll-web-kanban{padding:var(--space-3);gap:var(--space-2)}.ll-web .ll-web-kanban-card>p{font-size:11px}.ll-web .ll-web-editorial-row{flex-wrap:wrap}.ll-web .ll-web-editorial-row .ll-web-row-label{flex-basis:100%;margin-left:40px}.ll-web .ll-web-metrics{gap:var(--space-4);padding:var(--space-5)}.ll-web .ll-web-metric-value{font-size:29px}}
@media print{.ll-web .ll-web-tab-panel[hidden]{display:block!important}.ll-web .ll-web-visual{display:none}.ll-web .ll-web-dark-panel{background:var(--ll-soft)}.ll-web .ll-web-dark-panel :is(p,h3){color:var(--ll-ink)}}
