/* Template Backlinks Locaux Département — Achat Backlinks */
:root {
    --ab-bld-bg: #07111f;
    --ab-bld-bg-soft: #0d1b2f;
    --ab-bld-surface: #ffffff;
    --ab-bld-surface-soft: #f5f7fb;
    --ab-bld-text: #111827;
    --ab-bld-text-soft: #5b6475;
    --ab-bld-border: rgba(15, 23, 42, .11);
    --ab-bld-brand: #17c79a;
    --ab-bld-brand-dark: #0f8c72;
    --ab-bld-accent: #f6b443;
    --ab-bld-radius-sm: 14px;
    --ab-bld-radius: 24px;
    --ab-bld-radius-lg: 34px;
    --ab-bld-shadow: 0 22px 60px rgba(15, 23, 42, .14);
    --ab-bld-shadow-soft: 0 14px 34px rgba(15, 23, 42, .09);
    --ab-bld-max: 1180px;
}
body.ab-template-backlinks-locaux-departement .site-main,
body.ab-template-backlinks-locaux-departement .content-area,
body.ab-template-backlinks-locaux-departement .woocommerce { overflow: visible; }
.ab-bld-product { color: var(--ab-bld-text); background: #fff; line-height: 1.6; }
.ab-bld-container { width: min(var(--ab-bld-max), calc(100% - 40px)); margin-inline: auto; }
.ab-bld-hero { position: relative; padding: 42px 0 58px; color: #fff; background: radial-gradient(circle at 8% 10%, rgba(23,199,154,.26), transparent 34%), radial-gradient(circle at 88% 18%, rgba(246,180,67,.18), transparent 30%), linear-gradient(135deg, var(--ab-bld-bg), var(--ab-bld-bg-soft)); isolation: isolate; }
.ab-bld-hero::after { content:""; position:absolute; inset:auto 0 -1px 0; height:90px; background:linear-gradient(to bottom, rgba(255,255,255,0), #fff); pointer-events:none; z-index:-1; }
.ab-bld-hero__grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(340px,420px); gap:clamp(28px,4vw,64px); align-items:start; }
.ab-bld-breadcrumb { margin-bottom:20px; color:rgba(255,255,255,.66); font-size:.88rem; }
.ab-bld-breadcrumb a, .ab-bld-breadcrumb .woocommerce-breadcrumb { color:rgba(255,255,255,.76); }
.ab-bld-breadcrumb span { display:inline-block; margin:0 8px; opacity:.48; }
.ab-bld-eyebrow { display:inline-flex; align-items:center; gap:8px; margin:0 0 14px; color:var(--ab-bld-brand); font-size:.78rem; font-weight:850; letter-spacing:.11em; text-transform:uppercase; }
.ab-bld-eyebrow::before { content:""; width:8px; height:8px; border-radius:999px; background:currentColor; box-shadow:0 0 0 6px rgba(23,199,154,.13); }
.ab-bld-hero h1 { max-width:820px; margin:0; font-size:clamp(2.35rem,6vw,4.7rem); line-height:.96; letter-spacing:-.058em; color:#fff; }
.ab-bld-hero__lead { max-width:720px; margin:24px 0 0; color:rgba(255,255,255,.82); font-size:clamp(1.04rem,1.8vw,1.26rem); }
.ab-bld-hero__benefit { display:flex; gap:12px; align-items:flex-start; max-width:780px; margin:26px 0 0; padding:18px 20px; border:1px solid rgba(255,255,255,.14); border-radius:var(--ab-bld-radius); background:rgba(255,255,255,.07); box-shadow:inset 0 1px 0 rgba(255,255,255,.08); backdrop-filter:blur(10px); }
.ab-bld-hero__benefit span { color:var(--ab-bld-accent); }
.ab-bld-proof-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 18px; margin:28px 0 0; padding:0; list-style:none; }
.ab-bld-proof-list li { position:relative; padding-left:28px; color:rgba(255,255,255,.82); font-weight:650; }
.ab-bld-proof-list li::before { content:"✓"; position:absolute; left:0; top:0; display:grid; place-items:center; width:20px; height:20px; color:#092018; font-size:.76rem; font-weight:900; border-radius:999px; background:var(--ab-bld-brand); }
.ab-bld-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.ab-bld-btn, .ab-bld-product .button, .ab-bld-product button.button, .ab-bld-product input.button, .ab-bld-product .single_add_to_cart_button { display:inline-flex !important; align-items:center; justify-content:center; min-height:48px; padding:13px 22px; border:1px solid transparent; border-radius:999px; font-weight:850; line-height:1; text-align:center; text-decoration:none!important; cursor:pointer; transition:transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease; }
.ab-bld-btn:hover, .ab-bld-product .button:hover, .ab-bld-product button.button:hover, .ab-bld-product input.button:hover, .ab-bld-product .single_add_to_cart_button:hover { transform:translateY(-1px); }
.ab-bld-btn--primary, .ab-bld-product .single_add_to_cart_button, .ab-bld-product button.single_add_to_cart_button { color:#07111f!important; background:var(--ab-bld-brand)!important; box-shadow:0 14px 32px rgba(23,199,154,.25); opacity:1!important; visibility:visible!important; }
.ab-bld-btn--primary:hover, .ab-bld-product .single_add_to_cart_button:hover { background:#22d6a7!important; box-shadow:0 18px 42px rgba(23,199,154,.34); }
.ab-bld-btn--secondary { color:#fff!important; border-color:rgba(255,255,255,.18); background:rgba(255,255,255,.08); }
.ab-bld-btn--ghost { width:100%; color:var(--ab-bld-text)!important; border-color:var(--ab-bld-border); background:#fff!important; }
.ab-bld-btn--ghost:hover { border-color:rgba(23,199,154,.5); box-shadow:var(--ab-bld-shadow-soft); }
.ab-bld-query-strip, .ab-bld-tags, .ab-bld-link-pills { display:flex; flex-wrap:wrap; gap:10px; }
.ab-bld-query-strip { margin-top:28px; }
.ab-bld-query-strip span, .ab-bld-tags span, .ab-bld-link-pills a { display:inline-flex; align-items:center; min-height:34px; padding:7px 12px; border-radius:999px; font-size:.87rem; font-weight:750; text-decoration:none!important; }
.ab-bld-query-strip span { color:rgba(255,255,255,.82); border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.06); }
.ab-bld-order-card { position:sticky; top:24px; overflow:hidden; border:1px solid rgba(255,255,255,.16); border-radius:var(--ab-bld-radius-lg); background:#fff; box-shadow:0 30px 80px rgba(0,0,0,.24); }
.ab-bld-order-card__media { position:relative; min-height:230px; background:#e8edf4; }
.ab-bld-hero__image, .ab-bld-order-card__media img { display:block; width:100%; height:100%; min-height:230px; object-fit:cover; }
.ab-bld-order-card__badge { position:absolute; left:18px; bottom:18px; max-width:calc(100% - 36px); padding:9px 13px; color:#fff; border-radius:999px; background:rgba(7,17,31,.78); font-size:.86rem; font-weight:850; backdrop-filter:blur(8px); }
.ab-bld-order-card__body { color:var(--ab-bld-text); padding:22px; }
.ab-bld-price-row { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; padding-bottom:18px; margin-bottom:18px; border-bottom:1px solid var(--ab-bld-border); }
.ab-bld-price-row span { color:var(--ab-bld-text-soft); font-size:.88rem; font-weight:750; }
.ab-bld-price-row strong, .ab-bld-price-row .price { color:var(--ab-bld-text); font-size:1.25rem; font-weight:900; text-align:right; }
.ab-bld-order-process { display:grid; gap:8px; margin:0 0 16px; padding:14px; border:1px solid var(--ab-bld-border); border-radius:18px; background:var(--ab-bld-surface-soft); }
.ab-bld-order-process span { color:var(--ab-bld-text-soft); font-size:.86rem; line-height:1.45; }
.ab-bld-order-process strong { color:var(--ab-bld-text); }
.ab-bld-product-form form.cart, .ab-bld-product-form .variations_form { display:block; margin:0; }
.ab-bld-product-form table.variations { width:100%; margin:0 0 14px; border:0; }
.ab-bld-product-form table.variations th, .ab-bld-product-form table.variations td { display:block; padding:0 0 10px; border:0; text-align:left; }
.ab-bld-product-form table.variations label { display:block; margin-bottom:7px; color:var(--ab-bld-text); font-weight:850; }
.ab-bld-product-form select, .ab-bld-product-form input.qty { width:100%; min-height:48px; padding:10px 13px; border:1px solid var(--ab-bld-border); border-radius:var(--ab-bld-radius-sm); background:#fff; color:var(--ab-bld-text); }
.ab-bld-product-form .quantity { width:100%; margin:0 0 12px!important; }
.ab-bld-product-form .single_add_to_cart_button, .ab-bld-product-form button.single_add_to_cart_button { display:inline-flex!important; width:100%; min-height:54px; opacity:1!important; visibility:visible!important; }
.ab-bld-product-form .single_variation_wrap { display:block!important; }
.ab-bld-product-form .woocommerce-variation { margin:0 0 14px; padding:14px 16px; border:1px solid var(--ab-bld-border); border-radius:var(--ab-bld-radius-sm); background:var(--ab-bld-surface-soft); }
.ab-bld-product-form .woocommerce-variation-price .price { display:block; color:var(--ab-bld-text); font-size:1.1rem; font-weight:900; }
.ab-bld-product-form .woocommerce-variation-description { margin-top:8px; }
.ab-bld-product-form .woocommerce-variation-description p { margin:0; color:var(--ab-bld-text-soft); font-size:.91rem; line-height:1.55; }
.ab-bld-product-form .variations_button, .ab-bld-product-form .woocommerce-variation-add-to-cart { display:grid!important; grid-template-columns:92px minmax(0,1fr); gap:12px; align-items:stretch; margin-top:12px; }
.ab-bld-product-form .variations_button .quantity, .ab-bld-product-form .woocommerce-variation-add-to-cart .quantity { margin:0!important; }
.ab-bld-product-form .variations_button .single_add_to_cart_button, .ab-bld-product-form .woocommerce-variation-add-to-cart .single_add_to_cart_button { margin:0!important; }
.ab-bld-product-form .woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button, .ab-bld-product-form .variations_button.woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button { opacity:.62!important; cursor:not-allowed; box-shadow:none; }
.ab-bld-order-card__hint { margin:14px 0 0; color:var(--ab-bld-text-soft); font-size:.88rem; line-height:1.55; }
.ab-bld-order-card__hint strong { color:var(--ab-bld-text); }
.ab-bld-product-form .reset_variations { display:inline-block; margin-top:6px; color:var(--ab-bld-text-soft); font-size:.86rem; }
.ab-bld-mini-reassurance { display:grid; gap:8px; margin:16px 0 0; padding:16px 0 0; border-top:1px solid var(--ab-bld-border); list-style:none; }
.ab-bld-mini-reassurance li { position:relative; padding-left:24px; color:var(--ab-bld-text-soft); font-size:.91rem; font-weight:650; }
.ab-bld-mini-reassurance li::before { content:"✓"; position:absolute; left:0; color:var(--ab-bld-brand-dark); font-weight:950; }
.ab-bld-sticky-nav { position:sticky; top:0; z-index:20; background:rgba(255,255,255,.86); border-bottom:1px solid var(--ab-bld-border); backdrop-filter:blur(14px); }
.ab-bld-sticky-nav__inner { display:flex; gap:10px; align-items:center; min-height:58px; overflow-x:auto; }
.ab-bld-sticky-nav a { flex:0 0 auto; color:var(--ab-bld-text-soft); padding:8px 12px; border-radius:999px; font-size:.9rem; font-weight:800; text-decoration:none!important; }
.ab-bld-sticky-nav a:hover, .ab-bld-sticky-nav a.is-active { color:var(--ab-bld-text); background:var(--ab-bld-surface-soft); }
.ab-bld-section { padding:clamp(58px,8vw,96px) 0; }
.ab-bld-section--muted { background:var(--ab-bld-surface-soft); }
.ab-bld-section h2 { margin:0; max-width:860px; color:var(--ab-bld-text); font-size:clamp(2rem,4vw,3.25rem); line-height:1.04; letter-spacing:-.045em; }
.ab-bld-section h3 { margin:0 0 10px; color:var(--ab-bld-text); font-size:1.2rem; line-height:1.18; letter-spacing:-.02em; }
.ab-bld-section p { color:var(--ab-bld-text-soft); }
.ab-bld-two-cols { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(300px,.72fr); gap:clamp(28px,5vw,72px); align-items:start; }
.ab-bld-section__copy { max-width:760px; }
.ab-bld-richtext { margin-top:24px; font-size:1.04rem; }
.ab-bld-richtext p { margin:0 0 16px; }
.ab-bld-richtext strong { color:var(--ab-bld-text); }
.ab-bld-card, .ab-bld-context-card, .ab-bld-pack-card, .ab-bld-steps article, .ab-bld-metrics-grid article, .ab-bld-deliverables-grid article { border:1px solid var(--ab-bld-border); border-radius:var(--ab-bld-radius); background:#fff; box-shadow:var(--ab-bld-shadow-soft); }
.ab-bld-card { padding:clamp(24px,3vw,34px); }
.ab-bld-card--dark { color:#fff; background:radial-gradient(circle at top left, rgba(23,199,154,.22), transparent 35%), linear-gradient(145deg,#07111f,#0f223a); border-color:rgba(255,255,255,.1); }
.ab-bld-card--dark h3, .ab-bld-card--dark p, .ab-bld-card--dark code { color:#fff; }
.ab-bld-card--dark p { color:rgba(255,255,255,.74); }
.ab-bld-card__kicker { display:block; margin-bottom:12px; color:var(--ab-bld-brand); font-weight:850; text-transform:uppercase; font-size:.78rem; letter-spacing:.1em; }
.ab-bld-tags { margin:18px 0 22px; }
.ab-bld-tags span { color:#fff; border:1px solid rgba(255,255,255,.15); background:rgba(255,255,255,.08); }
.ab-bld-section-heading { max-width:850px; margin-bottom:clamp(28px,5vw,48px); }
.ab-bld-section-heading > p:not(.ab-bld-eyebrow) { max-width:760px; margin-top:16px; font-size:1.06rem; }
.ab-bld-section-heading--split { max-width:none; display:flex; justify-content:space-between; gap:24px; align-items:end; }
.ab-bld-section-heading--split .ab-bld-btn--secondary { color:var(--ab-bld-text)!important; border-color:var(--ab-bld-border); background:#fff; }
.ab-bld-steps, .ab-bld-deliverables-grid, .ab-bld-metrics-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.ab-bld-metrics-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ab-bld-steps article, .ab-bld-deliverables-grid article, .ab-bld-metrics-grid article { padding:24px; }
.ab-bld-steps span, .ab-bld-deliverables-grid span, .ab-bld-metrics-grid span { display:inline-grid; place-items:center; width:42px; height:42px; margin-bottom:18px; color:#07111f; border-radius:999px; background:var(--ab-bld-brand); font-weight:950; }
.ab-bld-metrics-grid span, .ab-bld-deliverables-grid span { background:rgba(23,199,154,.16); }
.ab-bld-pack-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; align-items:stretch; }
.ab-bld-pack-card { position:relative; display:flex; flex-direction:column; gap:16px; padding:26px; transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.ab-bld-pack-card:hover, .ab-bld-pack-card.is-selected { transform:translateY(-4px); border-color:rgba(23,199,154,.45); box-shadow:var(--ab-bld-shadow); }
.ab-bld-pack-card.is-featured { border-color:rgba(23,199,154,.5); box-shadow:0 22px 60px rgba(23,199,154,.16); }
.ab-bld-pack-card__badge { align-self:flex-start; padding:7px 10px; color:#07111f; border-radius:999px; background:var(--ab-bld-accent); font-size:.75rem; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.ab-bld-pack-card h3 { font-size:1.5rem; }
.ab-bld-pack-card__price { color:var(--ab-bld-text); font-size:1.35rem; font-weight:950; }
.ab-bld-pack-card__details { flex:1; padding-top:4px; color:var(--ab-bld-text-soft); font-size:.94rem; }
.ab-bld-pack-card__details strong { color:var(--ab-bld-text); }
.ab-bld-pack-card__details ul { display:grid; gap:8px; margin:12px 0 0; padding:0; list-style:none; }
.ab-bld-pack-card__details li { position:relative; padding-left:22px; }
.ab-bld-pack-card__details li::before { content:"•"; position:absolute; left:3px; color:var(--ab-bld-brand-dark); font-weight:950; }
.ab-bld-context-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.ab-bld-context-card { padding:24px; }
.ab-bld-context-card span { display:inline-flex; margin-bottom:14px; color:var(--ab-bld-brand-dark); font-size:.78rem; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.ab-bld-context-card ul { display:grid; gap:8px; margin:0; padding-left:18px; color:var(--ab-bld-text-soft); }
.ab-bld-link-pills { margin-top:22px; }
.ab-bld-link-pills a { color:var(--ab-bld-text); border:1px solid var(--ab-bld-border); background:var(--ab-bld-surface-soft); }
.ab-bld-related-list { display:grid; gap:10px; margin:18px 0 0; padding:0; list-style:none; }
.ab-bld-related-list a { display:flex; justify-content:space-between; gap:16px; padding:14px 0; color:var(--ab-bld-text); border-bottom:1px solid var(--ab-bld-border); text-decoration:none!important; }
.ab-bld-related-list li:last-child a { border-bottom:0; }
.ab-bld-related-list span { font-weight:800; }
.ab-bld-related-list strong { white-space:nowrap; }
.ab-bld-section--faq { background:linear-gradient(180deg,#fff,var(--ab-bld-surface-soft)); }
.ab-bld-faq-list { display:grid; gap:12px; }
.ab-bld-faq-list details { border:1px solid var(--ab-bld-border); border-radius:var(--ab-bld-radius); background:#fff; box-shadow:var(--ab-bld-shadow-soft); overflow:hidden; }
.ab-bld-faq-list summary { position:relative; padding:20px 56px 20px 22px; color:var(--ab-bld-text); font-weight:900; cursor:pointer; list-style:none; }
.ab-bld-faq-list summary::-webkit-details-marker { display:none; }
.ab-bld-faq-list summary::after { content:"+"; position:absolute; right:22px; top:50%; translate:0 -50%; color:var(--ab-bld-brand-dark); font-size:1.5rem; font-weight:800; }
.ab-bld-faq-list details[open] summary::after { content:"–"; }
.ab-bld-faq-list details > div { padding:0 22px 22px; color:var(--ab-bld-text-soft); }
.ab-bld-final-cta { padding:54px 0 78px; background:var(--ab-bld-surface-soft); }
.ab-bld-final-cta__inner { display:flex; justify-content:space-between; gap:28px; align-items:center; padding:clamp(26px,5vw,46px); color:#fff; border-radius:var(--ab-bld-radius-lg); background:radial-gradient(circle at 10% 10%, rgba(23,199,154,.24), transparent 32%), linear-gradient(135deg,#07111f,#10253e); box-shadow:var(--ab-bld-shadow); }
.ab-bld-final-cta h2 { max-width:780px; margin:0; color:#fff; font-size:clamp(2rem,4vw,3.15rem); line-height:1.02; letter-spacing:-.045em; }
.ab-bld-final-cta p:not(.ab-bld-eyebrow) { max-width:760px; margin:16px 0 0; color:rgba(255,255,255,.75); }
.ab-bld-product .woocommerce-notices-wrapper { width:min(var(--ab-bld-max), calc(100% - 40px)); margin:0 auto; }
@media (max-width:1050px) {
    .ab-bld-hero__grid, .ab-bld-two-cols { grid-template-columns:1fr; }
    .ab-bld-order-card { position:relative; top:auto; max-width:620px; }
    .ab-bld-steps, .ab-bld-context-grid, .ab-bld-deliverables-grid, .ab-bld-metrics-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ab-bld-pack-grid { grid-template-columns:1fr; }
}
@media (max-width:720px) {
    .ab-bld-container { width:min(100% - 28px, var(--ab-bld-max)); }
    .ab-bld-hero { padding-top:28px; }
    .ab-bld-proof-list, .ab-bld-steps, .ab-bld-context-grid, .ab-bld-deliverables-grid, .ab-bld-metrics-grid { grid-template-columns:1fr; }
    .ab-bld-section-heading--split, .ab-bld-final-cta__inner { align-items:stretch; flex-direction:column; }
    .ab-bld-actions .ab-bld-btn, .ab-bld-final-cta .ab-bld-btn { width:100%; }
    .ab-bld-sticky-nav { top:0; }
    .ab-bld-sticky-nav__inner { width:100%; padding-bottom:2px; }
    .ab-bld-product-form .variations_button, .ab-bld-product-form .woocommerce-variation-add-to-cart { grid-template-columns:1fr; }
}
