/* L’Atelier des Smartphones : styles isolés du thème */
.gl17 { --gl17-blue:#0867e9; --gl17-blue-dark:#034cae; --gl17-text:#142035; --gl17-muted:#637084; --gl17-border:#e6ebf3; --gl17-soft:#f5f9ff; color:var(--gl17-text); font-family:inherit; max-width:1280px; margin:22px auto 46px; clear:both; }
.gl17 *, .gl17 *::before, .gl17 *::after { box-sizing:border-box; }
.gl17 a { text-decoration:none; }
.gl17 .gl17-eyebrow { display:block; color:var(--gl17-blue); font-size:12px; font-weight:800; line-height:1.5; letter-spacing:.11em; text-transform:uppercase; margin:0 0 9px; }
.gl17 h2,.gl17 h3,.gl17 h4 { color:var(--gl17-text); text-transform:none; letter-spacing:-.025em; }
.gl17 .gl17-heading { text-align:center; padding:12px 12px 25px; }
.gl17 .gl17-heading h2 { font-size:clamp(27px,3.3vw,44px); font-weight:800; line-height:1.16; margin:0 0 8px; }
.gl17 .gl17-heading h2 span { color:var(--gl17-blue); }
.gl17 .gl17-heading p { color:var(--gl17-muted); font-size:16px; line-height:1.55; margin:0; }
.gl17 .gl17-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; padding:2px; }
.gl17 .gl17-card { display:flex; flex-direction:column; align-items:center; background:#fff; border:1px solid var(--gl17-border); border-radius:14px; box-shadow:0 5px 22px rgba(23,38,64,.055); min-width:0; padding:14px 12px 13px; transition:transform .2s ease,box-shadow .2s ease; }
.gl17 .gl17-card:hover { transform:translateY(-3px); box-shadow:0 12px 30px rgba(9,41,96,.13); }
.gl17 .gl17-card-image { display:flex; align-items:center; justify-content:center; width:100%; height:207px; margin:0 0 4px; overflow:hidden; }
.gl17 .gl17-device { width:auto; max-width:100%; height:auto; max-height:100%; object-fit:contain; display:block; }
.gl17 .gl17-card-image img { height:100%; width:100%; object-fit:contain; }
.gl17 .gl17-card h3 { font-size:19px; font-weight:800; line-height:1.25; text-align:center; margin:2px 0 10px; }
.gl17 .gl17-card h3 a { color:var(--gl17-text); }
.gl17 .gl17-card h3 a:hover { color:var(--gl17-blue); }
.gl17 .gl17-status { display:inline-flex; align-items:center; gap:7px; border-radius:100px; padding:5px 15px; background:#ffeaed; color:#bd263e; font-size:12px; font-weight:800; line-height:1.5; white-space:nowrap; }
.gl17 .gl17-status::before { content:'●'; font-size:9px; }
.gl17 .gl17-button { display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:11px 14px; border:1px solid var(--gl17-blue); border-radius:8px; background:var(--gl17-blue); color:white !important; font-size:14px; line-height:1.35; font-weight:700; text-align:center; box-shadow:0 2px 0 rgba(0,0,0,.035); transition:background .15s ease,transform .15s ease; }
.gl17 .gl17-button:hover,.gl17 .gl17-button:focus { background:var(--gl17-blue-dark); border-color:var(--gl17-blue-dark); color:#fff !important; transform:translateY(-1px); }
.gl17 .gl17-card>.gl17-button { margin-top:12px; align-self:stretch; width:100%; }
.gl17 .gl17-crumbs { font-size:13px; color:var(--gl17-muted); margin:0 0 20px; }
.gl17 .gl17-crumbs a { color:var(--gl17-blue); }
.gl17 .gl17-crumbs span { display:inline-block; padding:0 9px; }
.gl17 .gl17-single-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(220px,.75fr); align-items:center; gap:16px; padding:31px clamp(18px,4vw,55px); border-radius:18px; background:linear-gradient(115deg,#eff6ff 10%,#fff 85%); border:1px solid #e3edfb; }
.gl17 .gl17-single-hero h2 { font-size:clamp(25px,3vw,39px); line-height:1.15; font-weight:800; margin:0 0 12px; }
.gl17 .gl17-single-hero p { color:var(--gl17-muted); font-size:16px; line-height:1.6; margin:0 0 18px; }
.gl17 .gl17-single-hero>.gl17-device { width:100%; max-height:290px; justify-self:center; }
.gl17 .gl17-hero-buttons { display:flex; gap:11px; margin-top:22px; flex-wrap:wrap; }
.gl17 .gl17-outline { display:inline-flex; justify-content:center; align-items:center; border:1px solid #c1d7f5; background:#fff; color:var(--gl17-blue); border-radius:8px; font-weight:700; font-size:14px; padding:11px 15px; }
.gl17 .gl17-outline:hover { border-color:var(--gl17-blue); color:var(--gl17-blue-dark); }
.gl17 .gl17-pricing { margin:36px 0; }
.gl17 .gl17-section-title h2 { font-size:clamp(23px,2.6vw,30px); line-height:1.25; font-weight:800; margin:0 0 7px; }
.gl17 .gl17-section-title p { font-size:15px; color:var(--gl17-muted); margin:0 0 17px; line-height:1.6; }
.gl17 .gl17-tablewrap { overflow-x:auto; border:1px solid var(--gl17-border); border-radius:12px; }
.gl17 .gl17-tablewrap table { border-collapse:collapse; border:0; width:100%; min-width:360px; margin:0; background:#fff; }
.gl17 .gl17-tablewrap tr { border-bottom:1px solid var(--gl17-border); }
.gl17 .gl17-tablewrap tr:last-child { border:0; }
.gl17 .gl17-tablewrap thead { background:#eef5ff; }
.gl17 .gl17-tablewrap th,.gl17 .gl17-tablewrap td { border:0; text-align:left; padding:13px 17px; line-height:1.4; font-size:14px; color:var(--gl17-text); }
.gl17 .gl17-tablewrap thead th { font-size:14px; font-weight:800; }
.gl17 .gl17-tablewrap tbody th { font-weight:550; }
.gl17 .gl17-tablewrap td { font-weight:800; color:#a12b40; width:31%; }
.gl17 .gl17-tablewrap tbody tr:nth-child(even) { background:#fbfcff; }
.gl17 .gl17-note { font-size:12px; line-height:1.5; color:var(--gl17-muted); margin:11px 0 0; }
.gl17.gl17-seo,.gl17 .gl17-seo { margin-top:43px; padding:30px clamp(18px,3vw,42px); background:linear-gradient(145deg,#f5f9ff 0%,#fff 100%); border:1px solid #e9eff8; border-radius:16px; }
.gl17.gl17-seo h2,.gl17 .gl17-seo h2 { font-size:clamp(23px,2.7vw,32px); line-height:1.25; font-weight:800; margin:0 0 15px; }
.gl17.gl17-seo h3,.gl17 .gl17-seo h3 { font-size:clamp(19px,2vw,23px); line-height:1.3; font-weight:750; margin:23px 0 10px; }
.gl17.gl17-seo h4,.gl17 .gl17-seo h4 { font-size:16px; margin:17px 0 5px; font-weight:750; }
.gl17.gl17-seo p,.gl17 .gl17-seo p { margin:0 0 13px; color:#37465a; line-height:1.8; font-size:15px; }
.gl17.gl17-seo a,.gl17 .gl17-seo a:not(.gl17-button) { color:var(--gl17-blue); text-decoration:underline; }
.gl17 .gl17-faq { margin:15px 0 20px; }
.gl17 .gl17-seo-action { margin-top:21px; }
.gl17 .gl17-seo-action a { text-decoration:none; }
.gl17 .gl17-bottom-cta { display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap; border-radius:13px; background:#edf5ff; padding:22px; margin:30px 0; }
.gl17 .gl17-bottom-cta strong { display:block; font-size:20px; line-height:1.3; }
.gl17 .gl17-bottom-cta span { display:block; font-size:14px; color:var(--gl17-muted); margin-top:5px; }
@media (max-width:950px) { .gl17 .gl17-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .gl17 .gl17-card-image { height:195px; } }
@media (max-width:560px) { .gl17 { margin:16px auto 28px; } .gl17 .gl17-grid { grid-template-columns:1fr; gap:13px; } .gl17 .gl17-card { max-width:340px; width:100%; margin:auto; } .gl17 .gl17-card-image { height:215px; } .gl17 .gl17-single-hero { grid-template-columns:1fr; text-align:center; } .gl17 .gl17-single-hero>.gl17-device { max-height:220px; } .gl17 .gl17-hero-buttons { justify-content:center; } .gl17 .gl17-heading h2 { font-size:29px; } .gl17 .gl17-bottom-cta { text-align:center; justify-content:center; } }
@media (prefers-reduced-motion:reduce) { .gl17 .gl17-card,.gl17 .gl17-button { transition:none; } }

/* 1.1 : gabarit image identique pour toutes les fiches, y compris photos personnalisees. */
.gl17 .gl17-card-image { height:210px; width:100%; flex:0 0 auto; }
.gl17 .gl17-card-image .gl17-device, .gl17 .gl17-card-image img { width:100% !important; height:100% !important; max-width:100% !important; max-height:100% !important; object-fit:contain !important; object-position:center !important; }
.gl17 .gl17-single-hero>.gl17-device { display:block; width:100%; height:290px; max-width:360px; max-height:290px; object-fit:contain; object-position:center; }
@media(max-width:950px) { .gl17 .gl17-card-image {height:195px} }
@media(max-width:560px) { .gl17 .gl17-card-image {height:215px} .gl17 .gl17-single-hero>.gl17-device {height:225px;max-height:225px} }

/* 1.3 - cinq vrais appareils sur une seule ligne sur ordinateur. */
@media (min-width: 980px) {
    .gl17 .gl17-grid { grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
    .gl17 .gl17-card { padding:12px 10px 11px; }
    .gl17 .gl17-card-image { height:185px; }
    .gl17 .gl17-card h3 { font-size:clamp(15px,1.42vw,19px); min-height:42px; display:flex; align-items:center; justify-content:center; margin:0 0 6px; }
    .gl17 .gl17-card>.gl17-button { margin-top:10px; font-size:clamp(11px,1vw,13px); padding:10px 5px; gap:5px; white-space:nowrap; }
    .gl17 .gl17-status { font-size:11px; padding:5px 9px; }
}
@media (min-width: 560px) and (max-width: 979px) {
    .gl17 .gl17-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
}
/* Les photos réelles ont toutes la même boîte, sans étirement ni recadrage. */
.gl17 .gl17-card-image { background:#fff; }
.gl17 .gl17-card-image img { object-fit:contain !important; }

/* v1.4 : familles 18 et 17 distinctes, grilles sur cinq colonnes maximum. */
.gl17 .gl17-family {margin-bottom:30px;}
.gl17 .gl17-family-title {font-size:clamp(19px,2.2vw,27px);line-height:1.3;font-weight:750;margin:0 0 14px;padding:0 2px;color:#142035;}
.gl17 .gl17-card h3 {margin:6px 0 8px;min-height:29px;}
.gl17 .gl17-card>.gl17-button {margin-top:auto;}
@media (min-width:980px){ .gl17 .gl17-grid {grid-template-columns:repeat(5,minmax(0,1fr));} }
@media (min-width:560px) and (max-width:979px) {.gl17 .gl17-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:559px){.gl17 .gl17-grid {grid-template-columns:1fr;}}

/* 1.5 - Les images de secours sont incorporées au HTML, les photos WordPress restent prioritaires. */
.gl17 .gl17-card-image img,.gl17 .gl17-single-hero img {font-size:0;}
.gl17 .gl17-card-image {background:transparent;}

/* 1.6 : photos réelles des produits ; visuels Apple officiels ou image importée. */
.gl17 .gl17-card-image {background:#fff; position:relative;}
.gl17 .gl17-card-image img {background:#fff; object-fit:contain !important; object-position:center !important;}

.gl17 .gl17-single-hero img {background:transparent;}
