/*
Theme Name: Falla Copy Pro
Theme URI: https://fallacopyservice.com
Author: Falla Copy Service + ChatGPT
Author URI: https://fallacopyservice.com
Description: Thème WordPress professionnel pour Falla Copy Service : vitrine, catalogue, tarifs, agences, formulaire de commande, contact et intégration WooCommerce.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 8.0
License: GPL v2 or later
Text Domain: falla-copy-pro
Tags: business, ecommerce, printing, custom-homepage, responsive
*/

:root {
  --falla-dark: #0f172a;
  --falla-blue: #0b63f6;
  --falla-blue-dark: #0849b8;
  --falla-red: #ef3340;
  --falla-orange: #f97316;
  --falla-green: #16a34a;
  --falla-gold: #fbbf24;
  --falla-bg: #f8fafc;
  --falla-card: #ffffff;
  --falla-muted: #64748b;
  --falla-border: #e2e8f0;
  --falla-radius: 24px;
  --falla-shadow: 0 20px 50px rgba(15, 23, 42, .10);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--falla-dark);
  background: var(--falla-bg);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.65;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }

.falla-container {
  width: min(1180px, calc(100% - 34px));
  margin-inline: auto;
}
.falla-topbar {
  background: #071024;
  color: #e5eefc;
  font-size: 13px;
}
.falla-topbar__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding: 8px 0;
  flex-wrap: wrap;
}
.falla-topbar strong { color: #fff; }
.falla-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255,255,255,.95);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--falla-border);
}
.falla-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  padding: 14px 0;
}
.falla-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: 900;
  letter-spacing: -.03em;
  min-width: max-content;
}
.falla-logo-mark {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 14px;
  background: linear-gradient(135deg, var(--falla-blue), var(--falla-red));
  color: #fff;
  box-shadow: 0 12px 24px rgba(11, 99, 246, .25);
}
.falla-logo-mark span { font-weight: 1000; font-size: 21px; }
.falla-brand small { display:block; color: var(--falla-muted); letter-spacing:0; font-weight:700; margin-top:-5px; }
.falla-nav { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; justify-content: center; }
.falla-nav ul { display:flex; gap:4px; align-items:center; padding:0; margin:0; list-style:none; flex-wrap:wrap; }
.falla-nav a { display:block; padding: 10px 12px; border-radius: 14px; color: #334155; font-weight: 750; font-size: 14px; }
.falla-nav a:hover, .falla-nav .current-menu-item > a { background:#eef5ff; color:var(--falla-blue); }
.falla-header-actions { display:flex; gap:10px; align-items:center; }
.falla-btn {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap: 9px;
  border: 0;
  border-radius: 999px;
  padding: 13px 20px;
  font-weight: 850;
  cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
  white-space: nowrap;
}
.falla-btn:hover { transform: translateY(-2px); }
.falla-btn--primary { background: linear-gradient(135deg, var(--falla-blue), #4f46e5); color:#fff; box-shadow: 0 15px 32px rgba(11,99,246,.27); }
.falla-btn--dark { background: var(--falla-dark); color:#fff; }
.falla-btn--light { background:#fff; color: var(--falla-dark); border: 1px solid var(--falla-border); }
.falla-btn--orange { background: linear-gradient(135deg, var(--falla-orange), var(--falla-red)); color:#fff; }

.falla-hero {
  position: relative;
  overflow: hidden;
  color: #fff;
  background: radial-gradient(circle at 15% 10%, rgba(251,191,36,.35), transparent 30%), radial-gradient(circle at 88% 10%, rgba(239,51,64,.35), transparent 34%), linear-gradient(135deg, #071024 0%, #0b2b72 48%, #0b63f6 100%);
}
.falla-hero:after {
  content: "";
  position:absolute;
  inset:0;
  background-image: linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.8), transparent);
}
.falla-hero__inner {
  position: relative;
  z-index: 1;
  min-height: 660px;
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  align-items: center;
  gap: 44px;
  padding: 72px 0;
}
.falla-eyebrow {
  display:inline-flex;
  align-items:center;
  gap:8px;
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.12);
  border-radius: 999px;
  padding: 8px 13px;
  font-size: 13px;
  font-weight: 800;
  color:#fff;
}
.falla-hero h1 {
  font-size: clamp(38px, 6vw, 72px);
  line-height: .98;
  letter-spacing: -.06em;
  margin: 18px 0;
}
.falla-hero p { color:#d9e8ff; font-size: 19px; max-width: 680px; }
.falla-hero__actions { display:flex; gap: 12px; flex-wrap:wrap; margin-top: 28px; }
.falla-hero__stats { display:grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 34px; max-width: 720px; }
.falla-stat {
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.10);
  border-radius: 22px;
  padding: 16px;
}
.falla-stat strong { display:block; font-size: 26px; color:#fff; line-height:1; }
.falla-stat span { font-size: 13px; color:#cbdcf8; }
.falla-hero-card {
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 34px;
  box-shadow: 0 30px 80px rgba(0,0,0,.28);
  padding: 22px;
  backdrop-filter: blur(16px);
}
.falla-hero-card__screen {
  background: #fff;
  border-radius: 24px;
  padding: 22px;
  color: var(--falla-dark);
}
.falla-job-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  padding: 13px;
  border-radius: 18px;
  background: #f8fafc;
  border: 1px solid var(--falla-border);
  margin-top: 10px;
}
.falla-job-row span { color: var(--falla-muted); font-size: 13px; }
.falla-pill { border-radius:999px; padding:6px 10px; font-weight:850; font-size:12px; }
.falla-pill--green { background:#dcfce7; color:#166534; }
.falla-pill--orange { background:#ffedd5; color:#9a3412; }
.falla-pill--blue { background:#dbeafe; color:#1d4ed8; }

.falla-section { padding: 80px 0; }
.falla-section--white { background:#fff; }
.falla-section__head { display:flex; justify-content:space-between; gap: 24px; align-items:end; margin-bottom: 34px; }
.falla-section__head h2, .falla-page-title h1 { font-size: clamp(30px, 4vw, 48px); line-height:1.05; letter-spacing:-.045em; margin:0 0 12px; }
.falla-section__head p, .falla-page-title p { color: var(--falla-muted); max-width: 700px; margin: 0; }
.falla-grid { display:grid; gap: 20px; }
.falla-grid--2 { grid-template-columns: repeat(2, 1fr); }
.falla-grid--3 { grid-template-columns: repeat(3, 1fr); }
.falla-grid--4 { grid-template-columns: repeat(4, 1fr); }
.falla-card {
  background: var(--falla-card);
  border: 1px solid var(--falla-border);
  border-radius: var(--falla-radius);
  padding: 24px;
  box-shadow: 0 12px 34px rgba(15,23,42,.05);
}
.falla-card:hover { box-shadow: var(--falla-shadow); }
.falla-icon {
  width: 52px;
  height: 52px;
  border-radius: 18px;
  display:grid;
  place-items:center;
  background: #eef5ff;
  color: var(--falla-blue);
  font-weight: 1000;
  margin-bottom: 16px;
}
.falla-card h3 { margin: 0 0 8px; font-size: 20px; letter-spacing:-.02em; }
.falla-card p { color: var(--falla-muted); margin: 0 0 16px; }
.falla-price { font-size: 23px; font-weight: 1000; color: var(--falla-blue); }
.falla-muted { color: var(--falla-muted); }
.falla-list { padding:0; margin: 14px 0 0; list-style:none; }
.falla-list li { display:flex; gap:10px; margin: 9px 0; color:#334155; }
.falla-list li:before { content:"✓"; color:var(--falla-green); font-weight:1000; }

.falla-pricing-table { width:100%; border-collapse: collapse; overflow:hidden; border-radius: 22px; background:#fff; box-shadow: var(--falla-shadow); }
.falla-pricing-table th, .falla-pricing-table td { text-align:left; padding: 16px 18px; border-bottom: 1px solid var(--falla-border); }
.falla-pricing-table th { background:#071024; color:#fff; }
.falla-pricing-table tr:last-child td { border-bottom:0; }
.falla-pricing-table td:last-child { font-weight: 950; color: var(--falla-blue); white-space: nowrap; }

.falla-band {
  background: linear-gradient(135deg, var(--falla-blue), #0f172a);
  color: #fff;
  border-radius: 34px;
  padding: 42px;
  display:grid;
  grid-template-columns: 1.2fr .8fr;
  align-items:center;
  gap: 20px;
  overflow:hidden;
}
.falla-band h2 { font-size: clamp(28px, 4vw, 46px); line-height:1.05; letter-spacing:-.045em; margin:0 0 12px; }
.falla-band p { color:#d9e8ff; margin:0; }

.falla-page-title { padding: 70px 0 36px; background:#fff; border-bottom:1px solid var(--falla-border); }
.falla-form {
  display:grid;
  gap: 16px;
}
.falla-form label { display:grid; gap: 7px; font-weight: 850; color:#1e293b; }
.falla-form input, .falla-form select, .falla-form textarea {
  width:100%;
  border: 1px solid #cbd5e1;
  background:#fff;
  border-radius: 16px;
  padding: 13px 14px;
  font: inherit;
  color: var(--falla-dark);
}
.falla-form input:focus, .falla-form select:focus, .falla-form textarea:focus { outline: 3px solid rgba(11,99,246,.15); border-color: var(--falla-blue); }
.falla-form textarea { min-height: 140px; resize: vertical; }
.falla-form__row { display:grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.falla-alert { border-radius: 18px; padding: 16px 18px; margin: 18px 0; border: 1px solid; }
.falla-alert--success { background:#ecfdf5; border-color:#bbf7d0; color:#166534; }
.falla-alert--error { background:#fff1f2; border-color:#fecdd3; color:#9f1239; }

.falla-footer { background:#071024; color:#cbdcf8; padding: 56px 0 28px; }
.falla-footer h3, .falla-footer h4 { color:#fff; margin-top:0; }
.falla-footer a { color:#e5eefc; }
.falla-footer__bottom { margin-top:34px; padding-top:20px; border-top:1px solid rgba(255,255,255,.12); display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; color:#93a4c0; font-size:14px; }

.woocommerce .button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button { border-radius: 999px !important; background: var(--falla-blue) !important; color:#fff !important; font-weight:850 !important; }
.woocommerce div.product .product_title { font-weight:1000; letter-spacing:-.03em; }

@media (max-width: 960px) {
  .falla-hero__inner, .falla-band { grid-template-columns: 1fr; }
  .falla-grid--3, .falla-grid--4 { grid-template-columns: repeat(2, 1fr); }
  .falla-header__inner { align-items:flex-start; flex-direction: column; }
  .falla-nav { justify-content:flex-start; }
  .falla-section__head { align-items:flex-start; flex-direction:column; }
}
@media (max-width: 650px) {
  .falla-grid--2, .falla-grid--3, .falla-grid--4, .falla-form__row, .falla-hero__stats { grid-template-columns: 1fr; }
  .falla-hero__inner { padding: 46px 0; min-height: auto; }
  .falla-topbar__inner, .falla-header-actions { align-items:flex-start; }
  .falla-card, .falla-band { padding: 20px; border-radius: 22px; }
  .falla-nav a { padding: 8px 9px; }
}
/* V2 Falla OS */
.falla-hero--photo{position:relative;background-image:url('assets/images/agence-rond-point-ferraille.jpg');background-size:cover;background-position:center;min-height:680px;display:flex;align-items:center;color:#fff}.falla-hero__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,12,32,.94),rgba(3,33,74,.76) 55%,rgba(2,12,32,.42))}.falla-hero__content{position:relative;z-index:1;display:grid;grid-template-columns:1.4fr .6fr;gap:60px;align-items:center}.falla-hero h1{font-size:clamp(44px,6vw,80px);line-height:.98;max-width:850px;margin:16px 0 24px}.falla-hero p{font-size:20px;max-width:720px}.falla-eyebrow,.falla-kicker{text-transform:uppercase;letter-spacing:.13em;font-weight:800;color:#ff7a00;font-size:13px}.falla-hero__brand{background:rgba(255,255,255,.94);color:#07172d;border-radius:28px;padding:22px;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,.28)}.falla-hero__brand img{width:190px;height:190px;border-radius:50%;object-fit:cover;margin:auto}.falla-hero__brand strong,.falla-hero__brand small{display:block;margin-top:10px}.falla-trust{display:flex;flex-wrap:wrap;gap:18px;margin-top:25px;font-weight:700}.falla-btn--light{background:#fff;color:#07172d}.falla-feature{border-radius:28px;padding:34px;display:flex;flex-direction:column;gap:10px;min-height:290px}.falla-feature--blue{background:linear-gradient(135deg,#07172d,#064a8b);color:#fff}.falla-feature--orange{background:linear-gradient(135deg,#ff6a00,#ff9a2f);color:#07172d}.falla-feature a{margin-top:auto;color:inherit;font-weight:800}.falla-section--dark{background:#07172d;color:#fff}.falla-split{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:center}.falla-cta-card{padding:36px;border-radius:28px;background:#fff;color:#07172d}.falla-steps{display:grid;gap:14px;padding-left:24px}.falla-portfolio{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.falla-portfolio figure{margin:0;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 12px 35px rgba(7,23,45,.12)}.falla-portfolio img{width:100%;aspect-ratio:4/5;object-fit:cover}.falla-portfolio figcaption{padding:16px;font-weight:800}.falla-pill--green{background:#dcfce7;color:#166534}.falla-alert--info{background:#e8f4ff;border-left:5px solid #0670c8;color:#073b69}.falla-card h2{margin-top:0}.falla-card--narrow{max-width:700px;margin:auto}.falla-table td small{display:block;color:#64748b;margin-top:6px}.falla-warning{padding:14px;border-radius:12px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412}.falla-form fieldset{border:1px solid #dbe4ee;border-radius:14px;padding:15px}.falla-form fieldset label{display:inline-flex;flex-direction:row;align-items:center;margin-right:22px}.falla-form fieldset input{width:auto}.falla-tracking-result{margin-top:25px;padding:24px;border-radius:18px;background:#f0fdf4}.falla-faq{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px;margin-bottom:12px}.falla-faq summary{cursor:pointer;font-weight:800}.falla-note{font-size:14px;color:#64748b}.falla-actions{display:flex;gap:12px;flex-wrap:wrap}
@media(max-width:900px){.falla-hero__content,.falla-split{grid-template-columns:1fr}.falla-hero__brand{display:none}.falla-portfolio{grid-template-columns:repeat(2,1fr)}.falla-hero--photo{min-height:600px}}
@media(max-width:560px){.falla-portfolio{grid-template-columns:1fr}.falla-hero h1{font-size:45px}.falla-hero p{font-size:17px}}
