/* London Calling Academy — WordPress integration layer.
   Loaded after lca.css and the page stylesheet. */

/* Elementor wraps every section in a container + widget. On the live page those
   wrappers must not affect layout (sticky section nav, full-bleed sections), so
   they are flattened; in the Elementor editor they keep their boxes for editing. */
body:not(.elementor-editor-active) .elementor .lca-sec,
body:not(.elementor-editor-active) .elementor .lca-sec > .elementor-widget,
body:not(.elementor-editor-active) .elementor .lca-sec .elementor-widget-container{display:contents}
.elementor-editor-active .lca-sec{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--gap:0px;--row-gap:0px;--column-gap:0px}
.elementor-editor-active .lca-sec > .elementor-widget{width:100%}

/* legal pages: the cookie table scrolls inside its column instead of widening the page on phones */
.lg-grid>*{min-width:0}

/* WordPress admin bar sits above the sticky header for logged-in editors */
.admin-bar .hdr{top:32px}
@media (max-width:782px){.admin-bar .hdr{top:46px}}

/* form states (the approved success style, used on every form) */
.ap-ok{margin:0;padding:16px 18px;border-radius:var(--r);background:#ECF7EF;color:#14532D;font-size:15.5px}
.ap-err{margin:0;padding:16px 18px;border-radius:var(--r);background:#FCEDEF;color:var(--red-d);font-size:15.5px}
.enq button[disabled]{opacity:.6;cursor:progress}
.lca-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* footer: cookie settings link sits with the legal links */
.ft-bot nav a[data-ck-open]{cursor:pointer}

/* cookie consent banner — navy / ivory, red kept out (accent only) */
.ck{position:fixed;z-index:1000;left:24px;bottom:24px;max-width:460px;background:var(--white);color:var(--body);border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:var(--r-lg);box-shadow:0 24px 60px -20px rgba(11,29,58,.35);padding:24px 24px 20px;font-size:15px;line-height:1.55}
.ck[hidden]{display:none}
.ck-t{font-family:var(--serif);font-size:21px;color:var(--ink);margin:0 0 8px;line-height:1.25}
.ck-d a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.ck-opts{display:grid;gap:10px;margin:16px 0 4px;padding:14px 0 0;border-top:1px solid var(--line-w)}
.ck-opts[hidden]{display:none}
.ck-opt{display:flex;gap:12px;align-items:flex-start;cursor:pointer}
.ck-opt input{margin:4px 0 0;width:18px;height:18px;accent-color:var(--navy);flex:none}
.ck-opt b{display:block;color:var(--ink);font-weight:600;font-size:15px}
.ck-opt small{display:block;color:var(--muted);font-size:13.5px}
.ck-acts{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px}
.ck-acts .btn{flex:1 1 150px;justify-content:center}
.ck-link{background:none;border:0;padding:8px 2px;font:inherit;font-size:14.5px;font-weight:500;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-height:44px}
.ck-link[hidden]{display:none}
@media (max-width:600px){.ck{left:12px;right:12px;bottom:12px;max-width:none;padding:20px 18px 16px;max-height:calc(100vh - 24px);overflow:auto}}

/* payment thank-you pages (Stripe redirect targets) — built from the Contact page system */
.ty-wrap{max-width:880px}
.ty-steps{margin-top:40px}
.ty-foot{display:flex;flex-wrap:wrap;gap:24px 40px;align-items:flex-end;justify-content:space-between;margin-top:48px;padding-top:32px;border-top:1px solid var(--line-w)}
.ty-foot .ct-mail{margin:0}
@media (max-width:600px){.ty-foot .btn{width:100%;justify-content:center}}
