/* Page /bouillabaisse-marseille/ — Grand Bar des Goudes
   Palette reprise du site : bleu Divi #0C71C3, doré du bouton de réservation, crème. */

.gws-b { --bleu:#0C71C3; --marine:#0b2b45; --or:#C69C6D; --creme:#FAF6F0; --gris:#5b6670;
	font-family:inherit; color:#2c3138; }

body.page-id-5239 #main-content .container { width:100%; max-width:none; padding:0; }
body.page-id-5239 #main-content .container .et_pb_row { width:100%; max-width:none; }
body.page-id-5239 #left-area { width:100%; padding:0 !important; float:none; }
body.page-id-5239 .entry-content { padding:0; }
body.page-id-5239 .et_post_meta_wrapper, body.page-id-5239 .entry-title { display:none; }

.gws-b__wrap { max-width:1120px; margin:0 auto; padding:0 24px; }

/* ---------- Hero ---------- */
.gws-b__hero { position:relative; min-height:640px; display:flex; align-items:flex-end;
	background:#0b2b45 center/cover no-repeat; padding:190px 0 0; }
.gws-b__hero::after { content:""; position:absolute; inset:0;
	background:linear-gradient(180deg,rgba(11,43,69,.45) 0%,rgba(11,43,69,.35) 35%,rgba(11,43,69,.97) 100%); }
.gws-b__hero-inner { position:relative; z-index:2; width:100%; padding-bottom:56px; }
.gws-b__badge { display:inline-flex; align-items:center; gap:10px; background:var(--or); color:#fff;
	font-weight:800; letter-spacing:.12em; text-transform:uppercase; font-size:12px;
	padding:9px 18px; border-radius:999px; margin-bottom:22px; }
.gws-b h1 { color:#fff; font-size:clamp(34px,5.2vw,62px); line-height:1.08; margin:0 0 18px;
	text-shadow:0 2px 24px rgba(0,0,0,.35); font-weight:700; }
.gws-b__lead { color:#eef3f7; text-shadow:0 1px 12px rgba(0,0,0,.5); font-size:clamp(17px,2vw,21px); line-height:1.6; max-width:680px; margin:0 0 30px; }
.gws-b__cta { display:flex; flex-wrap:wrap; gap:14px; margin-bottom:42px; }
.gws-b__btn { display:inline-block; padding:15px 30px; border-radius:4px; font-weight:700;
	text-decoration:none; font-size:15px; letter-spacing:.02em; transition:.2s; }
.gws-b__btn--or { background:var(--or); color:#fff !important; }
.gws-b__btn--or:hover { background:#b08850; }
.gws-b__btn--ghost { border:2px solid rgba(255,255,255,.75); color:#fff !important; }
.gws-b__btn--ghost:hover { background:rgba(255,255,255,.15); }

.gws-b__facts { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(255,255,255,.25);
	border:1px solid rgba(255,255,255,.25); border-radius:6px; overflow:hidden; }
.gws-b__fact { background:rgba(11,43,69,.55); backdrop-filter:blur(3px); padding:20px 22px; }
.gws-b__fact b { display:block; color:#fff; font-size:26px; line-height:1.1; margin-bottom:4px; }
.gws-b__fact span { color:#d8e2ea; font-size:13px; letter-spacing:.06em; text-transform:uppercase; }

/* ---------- Sections ---------- */
.gws-b__section { padding:78px 0; }
.gws-b__section--creme { background:var(--creme); }
.gws-b__section--marine { background:var(--marine); color:#e8eef3; }
.gws-b h2 { font-size:clamp(26px,3.2vw,38px); line-height:1.2; margin:0 0 20px; color:var(--marine); font-weight:700; }
.gws-b__section--marine h2 { color:#fff; }
.gws-b h3 { font-size:20px; margin:0 0 10px; color:var(--marine); font-weight:700; }
.gws-b p { font-size:17px; line-height:1.75; color:var(--gris); margin:0 0 18px; }
.gws-b__section--marine p { color:#c9d6e0; }
.gws-b__kicker { display:block; text-transform:uppercase; letter-spacing:.16em; font-size:12px;
	font-weight:800; color:var(--or); margin-bottom:12px; }

.gws-b__split { display:grid; grid-template-columns:1.05fr .95fr; gap:52px; align-items:center; }
.gws-b__split--reverse .gws-b__media { order:-1; }
.gws-b__media img { width:100%; height:100%; max-height:460px; object-fit:cover; border-radius:6px;
	box-shadow:0 18px 48px rgba(11,43,69,.18); display:block; }

/* ---------- Cartes composition ---------- */
.gws-b__cards { display:grid; grid-template-columns:repeat(4,1fr); gap:22px; margin-top:34px; }
.gws-b__card { background:#fff; border:1px solid #e8e2d8; border-radius:6px; padding:26px 22px;
	border-top:3px solid var(--or); }
.gws-b__card b { display:block; color:var(--marine); font-size:17px; margin-bottom:8px; }
.gws-b__card span { color:var(--gris); font-size:15px; line-height:1.6; }

/* ---------- Bandeau prix ---------- */
.gws-b__price { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between;
	gap:26px; background:#fff; border:1px solid #e8e2d8; border-radius:6px; padding:32px 36px; margin-top:38px; }
.gws-b__price-amount { font-size:46px; font-weight:800; color:var(--marine); line-height:1; }
.gws-b__price-amount small { display:block; font-size:14px; font-weight:600; color:var(--gris);
	letter-spacing:.06em; text-transform:uppercase; margin-top:8px; }
.gws-b__price>div { max-width:660px; }
.gws-b__price h3 { margin-bottom:8px; }
.gws-b__price p { margin:0; }

/* ---------- Spécialités ---------- */
.gws-b__specs { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; margin-top:34px; }
.gws-b__spec { background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14);
	border-radius:6px; padding:28px 26px; }
.gws-b__spec h3 { color:#fff; }
.gws-b__spec p { margin-bottom:12px; font-size:16px; }
.gws-b__spec-price { color:var(--or); font-weight:800; font-size:18px; }

/* ---------- Infos pratiques ---------- */
.gws-b__infos { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; margin-top:34px; }
.gws-b__info { background:#fff; border-radius:6px; padding:28px; border:1px solid #e8e2d8; }
.gws-b__info ul { list-style:none; margin:0; padding:0; }
.gws-b__info li { color:var(--gris); font-size:15.5px; line-height:1.7; padding:5px 0; border-bottom:1px dashed #ece6dc; }
.gws-b__info li:last-child { border-bottom:0; }
.gws-b__info a { color:var(--bleu); font-weight:600; }

/* ---------- FAQ ---------- */
.gws-b__faq { max-width:820px; margin:34px auto 0; }
.gws-b__faq details { background:#fff; border:1px solid #e8e2d8; border-radius:6px; margin-bottom:12px; }
.gws-b__faq summary { cursor:pointer; list-style:none; padding:20px 54px 20px 24px; position:relative;
	font-weight:700; color:var(--marine); font-size:17px; }
.gws-b__faq summary::-webkit-details-marker { display:none; }
.gws-b__faq summary::after { content:"+"; position:absolute; right:24px; top:50%; transform:translateY(-50%);
	color:var(--or); font-size:24px; font-weight:400; line-height:1; }
.gws-b__faq details[open] summary::after { content:"–"; }
.gws-b__faq-body { padding:0 24px 22px; }
.gws-b__faq-body p { margin:0; font-size:16px; }

/* ---------- CTA final ---------- */
.gws-b__final { text-align:center; }
.gws-b__final h2 { margin-bottom:14px; }
.gws-b__final p { max-width:640px; margin:0 auto 26px; }
.gws-b__phones { display:flex; flex-wrap:wrap; gap:14px; justify-content:center; }

/* ---------- Responsive ---------- */
@media (max-width:1100px) {
	.gws-b__cards { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:980px) {
	.gws-b__hero { padding-top:120px; min-height:460px; }
	.gws-b__hero-inner { padding-bottom:40px; }
	.gws-b__split { grid-template-columns:1fr; gap:30px; }
	.gws-b__split--reverse .gws-b__media { order:0; }
	.gws-b__specs, .gws-b__infos { grid-template-columns:1fr; }
	.gws-b__facts { grid-template-columns:1fr; }
	.gws-b__section { padding:52px 0; }
	.gws-b__price { padding:26px; }
}
@media (max-width:600px) {
	.gws-b__cards { grid-template-columns:1fr; }
	.gws-b__wrap { padding:0 18px; }
}
