.tn-advertise-body { background:#fff; }
.advertise-page { --ad-ink:#071958; --ad-blue:#075df5; --ad-muted:#60719a; --ad-line:#cfddf0; color:var(--ad-ink); }
.advertise-page * { box-sizing:border-box; }
.advertise-page h1,.advertise-page h2,.advertise-page h3,.advertise-page p { margin-top:0; }
.advertise-page button,.advertise-page input,.advertise-page select,.advertise-page textarea { font:inherit; }
#formats,#campaign-enquiry { scroll-margin-top:100px; }

.advertise-hero { position:relative; min-height:390px; overflow:hidden; background:linear-gradient(90deg,#eefaff 0%,#e8f7ff 45%,rgba(240,249,255,.15) 71%); }
.advertise-hero__image { position:absolute; inset:0 0 0 48%; background:url('/images/index-hero.png') center/cover no-repeat; }
.advertise-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#f0fbff 0%,rgba(239,250,255,.98) 40%,rgba(239,250,255,.7) 56%,rgba(239,250,255,.08) 78%); }
.advertise-hero__inner { min-height:390px; position:relative; z-index:1; display:grid; grid-template-columns:56% 44%; align-items:center; }
.advertise-hero__copy { padding:20px 0 38px; position:relative; z-index:2; }
.advertise-breadcrumbs { display:flex; gap:12px; margin-bottom:30px; color:#6a7da7; font-size:12px; }
.advertise-breadcrumbs [aria-current="page"] { color:var(--ad-ink); font-weight:800; }
.advertise-kicker { margin-bottom:6px; color:#49669b; font-size:12px; font-weight:800; }
.advertise-hero h1 { max-width:690px; margin-bottom:9px; font-size:clamp(42px,4.2vw,65px); line-height:1.03; letter-spacing:-.055em; font-weight:900; }
.advertise-hero__copy > p:not(.advertise-kicker) { max-width:570px; margin-bottom:22px; color:#506797; font-size:18px; line-height:1.45; }
.advertise-actions { display:flex; align-items:center; gap:19px; }
.advertise-actions a { min-height:45px; display:inline-flex; align-items:center; justify-content:center; gap:14px; padding:0 18px; border-radius:6px; color:#0755d7; font-size:13px; font-weight:800; }
.advertise-actions .is-primary { min-width:190px; color:#fff; background:linear-gradient(90deg,#075cf4,#116bff); box-shadow:0 8px 20px rgba(7,92,244,.18); }
.advertise-laptop { position:absolute; right:110px; bottom:-18px; width:330px; height:245px; transform:perspective(700px) rotateY(-5deg) rotateZ(-1deg); z-index:2; }
.advertise-laptop::before { content:""; position:absolute; inset:0 24px 28px; border:10px solid #1a2030; border-radius:12px; background:#fff; box-shadow:0 14px 28px rgba(2,22,60,.25); }
.advertise-laptop__screen { position:absolute; z-index:1; inset:14px 37px 42px; overflow:hidden; padding:13px; background:linear-gradient(rgba(3,49,122,.12),rgba(3,49,122,.05)),url('/images/places-footer-banner.png') center/cover; color:#fff; }
.advertise-laptop__screen span { display:block; padding:4px 7px; background:rgba(255,255,255,.9); color:#0a285f; font-size:7px; }
.advertise-laptop__screen strong { display:block; margin-top:40px; font-size:18px; text-shadow:0 1px 4px rgba(0,0,0,.35); }
.advertise-laptop__screen div { width:58px; height:9px; margin-top:7px; border-radius:3px; background:#11d3da; }
.advertise-laptop > i { position:absolute; left:0; right:0; bottom:12px; height:24px; background:linear-gradient(#dce0e6,#9fa7b3); clip-path:polygon(8% 0,92% 0,100% 75%,55% 100%,45% 100%,0 75%); }
.advertise-notebook { position:absolute; right:-5px; bottom:3px; width:115px; height:165px; padding:42px 16px 0; background:#fffdf4; border:1px solid #c6b990; box-shadow:0 9px 23px rgba(34,37,44,.2); color:#4262b2; font-family:cursive; font-size:18px; line-height:1.05; transform:rotate(4deg); z-index:3; }

.advertise-principles { border-top:1px solid #d6e9f6; border-bottom:1px solid #d6e9f6; background:linear-gradient(90deg,#f2fbff,#fff); }
.advertise-principles .tn-shell { min-height:74px; display:grid; grid-template-columns:repeat(4,1fr); align-items:center; }
.advertise-principles span { min-height:28px; display:flex; align-items:center; justify-content:center; gap:15px; border-right:1px solid #d2e2f2; color:#324e83; font-size:12px; }
.advertise-principles span:last-child { border-right:0; }
.advertise-principles i { color:#075cf4; font-size:25px; }

.advertise-audience { padding-top:25px; padding-bottom:20px; }
.advertise-audience header p,.advertise-formats header p,.advertise-form-card header > p { margin-bottom:4px; color:#5270a2; font-size:11px; font-weight:800; }
.advertise-audience header h2,.advertise-formats header h2,.advertise-journey h2,.advertise-fit h2 { margin-bottom:14px; font-size:27px; letter-spacing:-.035em; }
.advertise-audience-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:15px; }
.advertise-audience-grid article { position:relative; overflow:hidden; min-height:195px; border:1px solid var(--ad-line); border-radius:8px; background:#fff; }
.advertise-audience-grid figure { height:116px; margin:0; overflow:hidden; }
.advertise-audience-grid img { width:100%; height:100%; display:block; object-fit:cover; }
.advertise-audience-grid article > i { position:absolute; left:13px; top:96px; width:40px; height:40px; display:grid; place-items:center; border-radius:50%; background:#fff; color:var(--ad-blue); font-size:20px; box-shadow:0 5px 15px rgba(13,71,150,.15); }
.advertise-audience-grid h3 { margin:14px 12px 3px; font-size:13px; }
.advertise-audience-grid p { margin:0 12px 14px; color:var(--ad-muted); font-size:11px; line-height:1.4; }
.advertise-data-note { min-height:47px; display:flex; align-items:center; gap:16px; margin-top:16px; padding:8px 17px; border:1px solid #f0a300; border-radius:7px; background:#fffaf0; color:#4f6090; font-size:11px; }
.advertise-data-note i { color:#f09a00; font-size:22px; }

.advertise-formats { padding:21px 0 17px; background:linear-gradient(110deg,#e9f8ff,#f6fcff); }
.advertise-format-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:15px; }
.advertise-format-grid > article { display:flex; flex-direction:column; padding:14px 14px 13px; border:1px solid #d7e4f4; border-radius:8px; background:#fff; }
.advertise-format-preview { height:145px; position:relative; overflow:hidden; margin-bottom:12px; border:1px solid #cddbee; border-radius:6px; background:#f6f9fd; }
.advertise-format-preview img { width:100%; height:100%; display:block; object-fit:cover; }
.advertise-format-preview > span,.advertise-format-preview > em { position:absolute; z-index:2; top:8px; right:8px; padding:4px 7px; border-radius:4px; background:#fff; color:#075cf4; font-size:9px; font-style:normal; font-weight:800; box-shadow:0 2px 7px rgba(0,0,0,.13); }
.advertise-format-preview > strong { position:absolute; z-index:2; left:9px; right:9px; bottom:8px; padding:8px; border-radius:4px; background:rgba(255,255,255,.94); font-size:11px; line-height:1.3; }
.advertise-format-preview.is-directory img { height:88px; }
.advertise-format-preview.is-directory > span { top:7px; }
.advertise-format-preview.is-directory > strong { bottom:21px; }
.advertise-format-preview.is-directory > small { position:absolute; left:18px; bottom:9px; color:#6d7da0; font-size:8px; }
.advertise-format-preview.is-newsletter { padding:9px 13px; background:#fff; }
.advertise-format-preview.is-newsletter b { display:block; padding:5px; text-align:center; border-bottom:1px solid #dce5f2; font-size:11px; }
.advertise-format-preview.is-newsletter b span { color:#15a8dd; }
.advertise-format-preview.is-newsletter > i { display:block; height:9px; margin:7px 0; border-radius:3px; background:#e6ebf4; }
.advertise-format-preview.is-newsletter img { position:absolute; left:13px; right:13px; bottom:11px; width:calc(100% - 26px); height:55px; border-radius:3px; }
.advertise-format-preview.is-newsletter > strong { left:15px; bottom:65px; padding:0; background:none; font-size:9px; }
.advertise-format-preview.is-newsletter > em { top:78px; }
.advertise-format-grid h3 { margin-bottom:5px; font-size:15px; }
.advertise-format-grid article > p { min-height:86px; margin-bottom:8px; color:var(--ad-muted); font-size:11px; line-height:1.45; }
.advertise-format-grid ul { min-height:67px; margin:0 0 10px; padding:0; list-style:none; color:#5f739d; font-size:10px; }
.advertise-format-grid li { margin:5px 0; }
.advertise-format-grid li::before { content:"✓"; display:inline-grid; place-items:center; width:15px; height:15px; margin-right:7px; border:1px solid #1cae76; border-radius:50%; color:#159d6b; font-size:9px; font-weight:900; }
.advertise-format-grid article > a { margin-top:auto; color:#075cf4; font-size:11px; font-weight:800; }
.advertise-availability { margin:10px 0 0; color:#60749b; font-size:10px; }

.advertise-journey { padding-top:21px; padding-bottom:24px; }
.advertise-journey header p { margin:-11px 0 12px; color:var(--ad-muted); font-size:12px; }
.advertise-journey-grid { display:grid; grid-template-columns:1fr 24px 1fr 24px 1fr 24px 1fr; align-items:center; }
.advertise-journey-grid > i { color:#075cf4; font-size:22px; text-align:center; }
.advertise-step { min-height:58px; display:grid; grid-template-columns:42px 1fr; gap:9px; align-items:center; }
.advertise-step > b { width:39px; height:39px; display:grid; place-items:center; border-radius:50%; background:#d9ebff; color:#0756d9; font-size:18px; }
.advertise-step p { display:flex; flex-direction:column; margin:0; }
.advertise-step strong { font-size:11px; }
.advertise-step span { color:var(--ad-muted); font-size:9px; line-height:1.3; }
.advertise-placement { height:185px; position:relative; overflow:hidden; padding:23px 13px 10px; border:8px solid #f2f5fa; outline:1px solid #d9e4f2; border-radius:6px; background:#fff; }
.advertise-placement > i { display:block; height:9px; margin-bottom:8px; background:linear-gradient(90deg,#dbe3ef 0 23%,transparent 23% 29%,#dbe3ef 29% 54%,transparent 54%); }
.advertise-placement img { width:100%; height:84px; object-fit:cover; display:block; border-radius:3px; }
.advertise-placement > em { position:absolute; top:27px; left:17px; padding:3px 5px; border-radius:3px; background:#075cf4; color:#fff; font-size:7px; font-style:normal; }
.advertise-placement > strong { display:block; margin-top:6px; font-size:10px; line-height:1.25; }
.advertise-placement > span { display:block; margin-bottom:6px; font-size:10px; font-weight:800; }
.advertise-placement > small { color:#7383a4; font-size:8px; }
.advertise-placement.is-mail > b { display:block; margin-bottom:8px; text-align:center; font-size:12px; }
.advertise-placement.is-mail > b span { color:#15a8dd; }
.advertise-placement.is-mail > em { top:57px; }

.advertise-trust { padding:25px 0 23px; color:#fff; background:radial-gradient(circle at 70% 30%,#0c4d9c,#05265f 55%,#061c50); }
.advertise-trust__grid { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(280px,.8fr); gap:32px; align-items:center; }
.advertise-trust h2 { margin-bottom:6px; font-size:25px; }
.advertise-trust h2 + p { max-width:660px; margin-bottom:16px; color:#d6e5ff; font-size:12px; line-height:1.5; }
.advertise-trust-points { display:grid; grid-template-columns:repeat(4,1fr); gap:15px; }
.advertise-trust-points div { display:grid; grid-template-columns:42px 1fr; align-items:center; }
.advertise-trust-points i { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; background:#0863ed; font-size:17px; }
.advertise-trust-points strong,.advertise-trust-points span { grid-column:1 / -1; }
.advertise-trust-points strong { margin-top:7px; font-size:11px; }
.advertise-trust-points span { margin-top:3px; color:#d0def6; font-size:9px; line-height:1.35; }
.advertise-trust__grid > div > a { display:inline-block; margin-top:12px; color:#fff; text-decoration:underline; font-size:10px; }
.advertise-trust-example { padding-left:27px; border-left:1px solid rgba(255,255,255,.55); }
.advertise-trust-example > div { display:grid; grid-template-columns:1fr 1fr; gap:7px; padding:13px; border-radius:7px; background:#f7f9fd; }
.advertise-trust-example article { min-height:145px; position:relative; padding:8px; background:#fff; color:#10255d; }
.advertise-trust-example article em { display:block; width:max-content; margin-bottom:7px; padding:3px 5px; border-radius:3px; background:#18a26b; color:#fff; font-size:7px; font-style:normal; font-weight:800; }
.advertise-trust-example article + article em { background:#075cf4; }
.advertise-trust-example img { width:100%; height:75px; object-fit:cover; }
.advertise-trust-example strong { display:block; margin-top:5px; font-size:8px; }
.advertise-trust-example article i { display:block; width:80%; height:6px; margin-top:7px; background:#e3e8f0; }
.advertise-trust-example article i + i { width:55%; }
.advertise-trust-example > p { margin:9px 0 0; color:#e0eaff; font-size:10px; }

.advertise-fit { padding-top:17px; padding-bottom:18px; }
.advertise-fit h2 { margin-bottom:9px; }
.advertise-fit__grid { display:grid; grid-template-columns:1fr 1fr .7fr; gap:15px; align-items:center; }
.advertise-fit article { min-height:155px; padding:13px 18px; border:1px solid #b8ead7; border-radius:7px; background:#f1fcf8; }
.advertise-fit article.is-bad { border-color:#f2caca; background:#fff5f5; }
.advertise-fit h3 { display:flex; align-items:center; gap:12px; margin-bottom:7px; color:#13865d; font-size:12px; }
.advertise-fit .is-bad h3 { color:#b12635; }
.advertise-fit h3 i { width:29px; height:29px; display:grid; place-items:center; border-radius:50%; background:#16aa76; color:#fff; font-size:16px; }
.advertise-fit .is-bad h3 i { background:#ef4a54; }
.advertise-fit ul { margin:0; padding:0 0 0 44px; list-style:none; color:#567397; font-size:10px; line-height:1.55; }
.advertise-fit li::before { content:"✓"; margin-left:-20px; margin-right:9px; color:#13a070; font-weight:900; }
.advertise-fit .is-bad li::before { content:"×"; color:#ef3549; }
.advertise-fit__grid > p { color:#526990; font-size:10px; line-height:1.45; }

.advertise-enquiry { padding:20px 0; background:linear-gradient(115deg,#effaff,#e7f7ff); }
.advertise-enquiry__grid { display:grid; grid-template-columns:minmax(0,2fr) minmax(275px,.85fr); gap:16px; align-items:start; }
.advertise-form-card,.advertise-enquiry-sidebar > section { border:1px solid #d2e0f1; border-radius:7px; background:#fff; }
.advertise-form-card { padding:17px 22px 18px; }
.advertise-form-card header h2 { margin-bottom:2px; font-size:26px; }
.advertise-form-card header span { display:block; margin-bottom:13px; color:var(--ad-muted); font-size:10px; }
.advertise-fields { display:grid; gap:11px; margin-bottom:11px; }
.advertise-fields.two { grid-template-columns:1fr 1fr; }
.advertise-form-card label,.advertise-form-card legend { color:#14295e; font-size:10px; font-weight:800; }
.advertise-form-card label b,.advertise-form-card legend b { color:#e43950; }
.advertise-form-card input,.advertise-form-card select,.advertise-form-card textarea { width:100%; border:1px solid #c5d3e6; border-radius:4px; outline:none; color:#193568; background:#fff; }
.advertise-form-card input,.advertise-form-card select { height:34px; margin-top:5px; padding:0 10px; }
.advertise-form-card textarea { margin-top:5px; padding:9px 10px; resize:vertical; line-height:1.4; }
.advertise-form-card input:focus,.advertise-form-card select:focus,.advertise-form-card textarea:focus { border-color:#1764ef; box-shadow:0 0 0 3px rgba(23,100,239,.1); }
.advertise-form-card input::placeholder,.advertise-form-card textarea::placeholder { color:#91a0ba; }
.advertise-form-card small { display:block; margin-top:4px; color:#7585a5; font-size:8px; font-weight:400; }
.advertise-objectives,.advertise-opportunities { min-width:0; margin:0 0 11px; padding:0; border:0; }
.advertise-objectives legend,.advertise-opportunities legend { margin-bottom:5px; }
.advertise-objectives > div { display:grid; grid-template-columns:repeat(6,1fr); gap:6px; }
.advertise-objectives label { min-height:48px; position:relative; display:flex; align-items:center; gap:8px; padding:6px 8px; border:1px solid #d7e1ef; border-radius:5px; cursor:pointer; }
.advertise-objectives label.is-selected { border-color:#075cf4; background:#eff6ff; color:#0754d9; }
.advertise-objectives input { position:absolute; opacity:0; width:1px; height:1px; }
.advertise-objectives i { color:#075cf4; font-size:14px; }
.advertise-objectives span { font-size:9px; line-height:1.2; }
.advertise-wide-field { display:block; margin-bottom:11px; }
.advertise-opportunities > div { display:flex; flex-wrap:wrap; gap:10px 19px; }
.advertise-opportunities label { display:flex; align-items:center; gap:7px; color:#55709b; font-weight:500; }
.advertise-opportunities input,.advertise-consent input { width:15px; height:15px; margin:0; accent-color:#075cf4; }
.advertise-timing { display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.advertise-consent { display:flex; align-items:flex-start; gap:8px; margin:3px 0 8px; color:#5f7197!important; font-weight:500!important; }
.advertise-consent span { line-height:1.35; }
.advertise-privacy,.advertise-spam { display:flex; align-items:center; gap:8px; margin:6px 0; color:#62759b; font-size:9px; }
.advertise-privacy i,.advertise-spam i { color:#075cf4; font-size:13px; }
.advertise-privacy a { color:#075cf4; font-weight:800; }
.advertise-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.advertise-form-error { margin:9px 0; padding:9px 11px; border:1px solid #eea1aa; border-radius:5px; background:#fff3f4; color:#922130; font-size:10px; }
.advertise-form-error[hidden] { display:none; }
.advertise-submit { width:100%; height:39px; display:flex; align-items:center; justify-content:center; gap:14px; border:0; border-radius:5px; background:linear-gradient(90deg,#075cf4,#146aff); color:#fff; font-size:11px; font-weight:800; cursor:pointer; }
.advertise-submit:disabled { opacity:.7; cursor:wait; }
.advertise-success { display:none; align-items:center; gap:14px; margin-top:13px; padding:13px; border:1px solid #3bbd88; border-radius:6px; background:#f1fcf7; }
.advertise-success.is-visible { display:flex; }
.advertise-success > i { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; background:#20a574; color:#fff; }
.advertise-success h3 { margin-bottom:2px; font-size:14px; }
.advertise-success p { margin-bottom:4px; color:#567396; font-size:9px; }
.advertise-success code { color:#17366f; font-family:inherit; font-size:9px; }

.advertise-enquiry-sidebar { display:grid; gap:13px; }
.advertise-enquiry-sidebar > section { padding:14px; }
.advertise-enquiry-sidebar h3 { display:flex; align-items:center; gap:9px; margin-bottom:11px; font-size:12px; }
.advertise-enquiry-sidebar h3 i { color:#075cf4; font-size:17px; }
.advertise-enquiry-sidebar section > div { display:grid; grid-template-columns:35px 1fr; gap:8px; margin:8px 0; padding:9px; border:1px solid #dbe5f2; border-radius:5px; background:#fbfdff; }
.advertise-enquiry-sidebar section > div > b { width:30px; height:30px; display:grid; place-items:center; border-radius:50%; background:#dcecff; color:#0756d9; }
.advertise-enquiry-sidebar section > div p { display:flex; flex-direction:column; margin:0; }
.advertise-enquiry-sidebar section > div strong { font-size:9px; }
.advertise-enquiry-sidebar section > div span { color:#65789d; font-size:8px; line-height:1.35; }
.advertise-enquiry-sidebar section > small { display:block; margin-top:8px; color:#65789d; font-size:8px; }
.advertise-media-kit > div > i { color:#075cf4; font-size:25px; }
.advertise-media-kit button { width:100%; height:35px; border:0; border-radius:4px; background:#e3e8ef; color:#96a1b3; font-size:9px; font-weight:800; cursor:not-allowed; }
.advertise-other a { display:block; margin:9px 0; color:#075cf4; font-size:9px; font-weight:800; }

.advertise-bottom-cta { color:#fff; background:linear-gradient(90deg,#126ec7,#09bed1); }
.advertise-bottom-cta .tn-shell { min-height:72px; display:flex; align-items:center; justify-content:flex-end; gap:60px; }
.advertise-bottom-cta p { display:flex; flex-direction:column; margin:0; }
.advertise-bottom-cta strong { font-size:13px; }
.advertise-bottom-cta span { font-size:9px; }
.advertise-bottom-cta a { min-width:170px; min-height:34px; display:flex; align-items:center; justify-content:center; gap:12px; border-radius:5px; background:#fff; color:#075cf4; font-size:10px; font-weight:800; }

@media (max-width:1050px) {
    .advertise-hero__inner { grid-template-columns:63% 37%; }
    .advertise-laptop { right:18px; transform:scale(.82) perspective(700px) rotateY(-5deg); transform-origin:bottom right; }
    .advertise-notebook { display:none; }
    .advertise-trust-points { grid-template-columns:1fr 1fr; }
    .advertise-objectives > div { grid-template-columns:repeat(3,1fr); }
}

@media (max-width:820px) {
    .advertise-hero__image { inset:0; opacity:.26; }
    .advertise-hero::after { background:rgba(239,250,255,.82); }
    .advertise-hero__inner { display:block; }
    .advertise-hero__copy { max-width:670px; }
    .advertise-laptop { display:none; }
    .advertise-principles .tn-shell,.advertise-audience-grid,.advertise-format-grid { grid-template-columns:1fr 1fr; }
    .advertise-principles span:nth-child(2) { border-right:0; }
    .advertise-journey-grid { grid-template-columns:1fr 1fr; gap:14px; }
    .advertise-journey-grid > i { display:none; }
    .advertise-trust__grid,.advertise-fit__grid,.advertise-enquiry__grid { grid-template-columns:1fr; }
    .advertise-trust-example { padding:18px 0 0; border-left:0; border-top:1px solid rgba(255,255,255,.4); }
    .advertise-fit__grid > p { text-align:center; }
}

@media (max-width:560px) {
    .advertise-hero h1 { font-size:43px; }
    .advertise-actions { align-items:stretch; flex-direction:column; gap:6px; }
    .advertise-principles .tn-shell,.advertise-audience-grid,.advertise-format-grid,.advertise-journey-grid { grid-template-columns:1fr; }
    .advertise-principles span { min-height:52px; justify-content:flex-start; border-right:0; border-bottom:1px solid #d2e2f2; }
    .advertise-principles span:last-child { border-bottom:0; }
    .advertise-trust-points,.advertise-fields.two { grid-template-columns:1fr; }
    .advertise-objectives > div { grid-template-columns:1fr 1fr; }
    .advertise-form-card { padding:15px 13px; }
    .advertise-timing { grid-template-columns:1fr; }
    .advertise-bottom-cta .tn-shell { padding:15px 0; flex-direction:column; gap:12px; text-align:center; }
}
