.ad-platforms span { display:inline-flex; align-items:center; gap:9px; min-height:38px; white-space:nowrap; font-size:10px; }
.ad-platforms img { width:19px; height:19px; object-fit:contain; flex:none; }
.footer-bottom { flex-wrap:wrap; align-items:center; }
.footer-legal { display:flex; flex-wrap:wrap; align-items:center; gap:8px 16px; }
.footer-legal a:hover,.footer-legal button:hover { color:#fff; text-decoration:underline; }
.footer-legal button { border:0; background:none; padding:0; color:inherit; cursor:pointer; text-transform:inherit; letter-spacing:inherit; font-size:inherit; }
.enquiry-privacy { grid-column:1/-1; font-size:11px; line-height:1.55; color:#5d5859; margin:0; }
.enquiry-privacy a { color:var(--orange-deep); text-decoration:underline; text-underline-offset:2px; }
.contact-form .form-note { grid-column:1/-1; margin:0; }
.legal-main { background:var(--cream); padding:clamp(60px,8vw,110px) var(--pad) 100px; }
.legal-wrap { max-width:900px; margin:auto; }
.legal-eyebrow { font-weight:900; color:var(--orange-deep); font-size:12px; text-transform:uppercase; letter-spacing:.18em; }
.legal-main h1 { font-size:clamp(44px,7vw,88px); line-height:.96; letter-spacing:-.065em; margin:20px 0 24px; }
.legal-date { font-size:13px; color:#6d6867; margin-bottom:50px; }
.legal-content { padding-top:25px; border-top:1px solid var(--line); font-size:16px; line-height:1.8; color:#3d3b3d; }
.legal-content h2 { font-size:clamp(24px,3vw,32px); letter-spacing:-.045em; line-height:1.15; color:var(--ink); margin:50px 0 16px; }
.legal-content h3 { color:var(--ink); font-size:19px; margin:30px 0 12px; }
.legal-content p { margin:14px 0; }
.legal-content ul { margin:12px 0 24px; padding-left:23px; }
.legal-content li { padding-left:6px; margin:4px 0; }
.legal-content a { color:var(--orange-deep); text-decoration:underline; }
.cookie-banner { position:fixed; left:22px; right:22px; bottom:20px; z-index:1001; max-width:1120px; margin:auto; background:#211f20; color:#fff; padding:22px 26px; border-radius:18px; box-shadow:0 12px 45px rgba(0,0,0,.3); display:flex; gap:25px; align-items:center; justify-content:space-between; font-size:13px; line-height:1.5; }
.cookie-banner strong { font-size:17px; }
.cookie-banner p { margin:4px 0 0; color:#ddd; max-width:610px; }
.cookie-banner a,.cookie-links a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.cookie-actions { display:flex; align-items:center; flex-wrap:wrap; gap:9px; flex:none; }
.cookie-actions button { font-weight:800; cursor:pointer; border-radius:40px; border:1px solid #a5a2a2; background:transparent; color:#fff; padding:11px 15px; font-size:12px; }
.cookie-actions button:first-child { border-color:var(--orange); background:var(--orange); color:#fff; }
.cookie-actions button:hover,.cookie-actions button:focus-visible { outline:2px solid #fff; outline-offset:2px; }
.cookie-preferences { position:fixed; inset:0; z-index:1002; background:rgba(0,0,0,.55); display:grid; place-items:center; padding:18px; }
.cookie-dialog { width:min(100%,460px); max-height:90vh; overflow:auto; position:relative; background:var(--cream); border-radius:18px; padding:30px; box-shadow:0 15px 60px rgba(0,0,0,.3); color:var(--ink); }
.cookie-dialog h2 { font-size:32px; margin:0 0 10px; letter-spacing:-.04em; }
.cookie-dialog p { font-size:13px; line-height:1.6; }
.cookie-dialog .cookie-kicker { text-transform:uppercase; letter-spacing:.15em; color:var(--orange-deep); font-weight:900; font-size:10px; }
/* The heading and close control share a stable row at every viewport width. */
.cookie-dialog-head { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:38px; }
.cookie-dialog-head .cookie-kicker { margin:0; }
.cookie-close { position:static; flex:none; display:grid; place-items:center; width:36px; height:36px; padding:0; border:1px solid rgba(23,23,25,.15); border-radius:50%; background:transparent; color:var(--ink); font-size:24px; line-height:1; cursor:pointer; }
.cookie-close:hover,.cookie-close:focus-visible { background:#fff; border-color:var(--orange); outline:2px solid var(--orange); outline-offset:2px; }
.cookie-dialog label { display:flex; justify-content:space-between; align-items:center; gap:15px; padding:18px 0; border-top:1px solid var(--line); }
.cookie-dialog label span { display:flex; flex-direction:column; gap:4px; }
.cookie-dialog label small { font-size:11px; color:#6d6867; }
.cookie-dialog input { width:20px; height:20px; accent-color:var(--orange); flex:none; }
.cookie-dialog .cookie-actions { margin-top:15px; }
.cookie-dialog .cookie-actions button:not(:first-child) { color:var(--ink); border-color:#aaa; }
.cookie-links { color:#545050; }
@media(max-width:780px) { .cookie-banner { bottom:12px; left:12px; right:12px; display:block; padding:18px; } .cookie-banner .cookie-actions { margin-top:15px; } .cookie-banner .cookie-actions button { font-size:11px; padding:9px 11px; } .legal-main { padding-bottom:70px; } .legal-content { font-size:15px; } .footer-bottom { gap:16px; } }

/* Real platform marks, keeping each platform's own colors. */
.platform-chip .platform-icon { width:34px; height:34px; display:grid; place-items:center; flex:none; border-radius:50%; background:#fff; }
.platform-chip .platform-icon img { width:31px; height:31px; display:block; object-fit:contain; }
.platform-grid b { width:66px; height:66px; background:transparent; }
.platform-grid b img { width:62px; height:62px; display:block; object-fit:contain; }
.work-platform-band span { display:inline-flex; align-items:center; gap:8px; min-height:36px; }
.work-platform-band span img { display:block; width:18px; height:18px; object-fit:contain; }
.footer-grid .footer-social-link { display:inline-flex; align-items:center; gap:8px; }
.footer-social-link img { display:block; width:18px; height:18px; object-fit:contain; background:#fff; border-radius:4px; }
.contact-social a { display:inline-flex; align-items:center; gap:9px; }
.contact-social .contact-brand-icon { display:grid; place-items:center; flex:none; width:30px; height:30px; border-radius:7px; background:#fff; font-size:inherit; }
.contact-brand-icon img { display:block; width:22px; height:22px; object-fit:contain; }
.whatsapp-launcher img { display:block; width:38px; height:38px; object-fit:contain; }
.whatsapp-chat-logo img { display:block; width:36px; height:36px; object-fit:contain; }
.whatsapp-chat-logo { border:0; }
.whatsapp-message-field>span { display:grid; place-items:center; transform:none; }
.whatsapp-message-field>span svg { width:20px; height:20px; fill:none; stroke:#b8c5cb; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
@media(max-width:760px) {
  .platform-chip .platform-icon { width:27px; height:27px; }
  .platform-chip .platform-icon img { width:25px; height:25px; }
  .whatsapp-launcher img { width:35px; height:35px; }
  .whatsapp-chat-logo img { width:33px; height:33px; }
}


/* V19: consistent, unboxed platform marks on every page. */
.platform-chip .platform-icon { background:transparent; border-radius:0; }
.platform-chip .platform-icon img { width:32px; height:32px; }
.ad-platforms img { width:21px; height:21px; }
.work-platform-band span img { width:21px; height:21px; }
.footer-grid .footer-follow-label { margin-bottom:14px; }
.footer-follow-label::after { content:""; display:block; width:27px; height:2px; background:var(--orange); border-radius:2px; margin-top:12px; }
.footer-grid .footer-social-link {
  display:grid; grid-template-columns:26px minmax(0,1fr) 14px;
  width:100%; align-items:center; gap:8px; min-height:41px;
  padding:5px 0 8px; border-bottom:1px solid rgba(255,255,255,.16);
  color:#f7f5f2; font-size:13px; line-height:1.2; letter-spacing:0;
}
.footer-social-link img { display:block; width:26px; height:26px; object-fit:contain; background:transparent; border-radius:0; }
.footer-social-name { white-space:nowrap; }
.footer-social-arrow { color:#aaa5a3; font-size:17px; font-weight:400; justify-self:end; }
.footer-grid .footer-social-link:hover .footer-social-arrow,
.footer-grid .footer-social-link:focus-visible .footer-social-arrow { color:var(--orange); }
.contact-social { background:#242326; }
.contact-social .contact-brand-icon { background:transparent; border-radius:0; }
.contact-social .contact-brand-icon img { width:27px; height:27px; }
@media(max-width:760px) {
  .platform-chip .platform-icon { width:27px; height:27px; }
  .platform-chip .platform-icon img { width:25px; height:25px; }
  .footer-grid .footer-social-link { grid-template-columns:24px minmax(0,1fr) 12px; gap:5px; font-size:11px; }
  .footer-social-link img { width:24px; height:24px; }
  .footer-social-arrow { font-size:15px; }
}


/* V22: the footer uses a real vector mark, never an emoji arrow. */
.footer-grid .footer-social-link { grid-template-columns:26px minmax(0,1fr) 18px; }
.footer-social-arrow { display:grid; place-items:center; width:18px; height:18px; color:var(--orange); line-height:0; transition:transform .24s ease, color .24s ease; }
.footer-social-arrow svg { display:block; width:18px; height:18px; overflow:visible; }
.footer-grid .footer-social-link:hover .footer-social-arrow,
.footer-grid .footer-social-link:focus-visible .footer-social-arrow { color:#ff9a72; transform:translate(2px,-2px); }
@media(max-width:760px) {
  .footer-grid .footer-social-link { grid-template-columns:24px minmax(0,1fr) 16px; }
  .footer-social-arrow,.footer-social-arrow svg { width:16px; height:16px; }
}
