/* A6.28.6 FAQ + policy pages: lightweight shared premium presentation. */
.tg-support-page{background:#f6f9fc;color:#0a315f}.tg-support-wrap{width:min(1180px,calc(100% - 40px));margin:auto}.tg-support-hero{position:relative;overflow:hidden;min-height:310px;display:flex;align-items:center;background:#062e5d;color:#fff}.tg-support-hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,35,73,.96),rgba(3,45,84,.82) 55%,rgba(3,35,73,.48)),url('../img/skyline.webp') center 62%/cover no-repeat;transform:scale(1.02)}.tg-support-hero-inner{position:relative;z-index:1;padding:58px 0}.tg-support-kicker{display:inline-flex;align-items:center;padding:7px 12px;border:1px solid rgba(64,213,230,.45);border-radius:999px;background:rgba(7,160,184,.14);color:#67ddea;font-size:12px;font-weight:800;letter-spacing:1.7px;text-transform:uppercase}.tg-support-hero h1{margin:13px 0 10px;color:#fff;font:800 clamp(34px,4.5vw,54px)/1.05 Sora,Manrope,Arial,sans-serif}.tg-support-hero p{max-width:720px;margin:0;color:#dceaf5;font-size:17px;line-height:1.7}.tg-support-crumb{display:flex;align-items:center;gap:9px;margin-top:26px;font-size:13px;color:#c5d8e7}.tg-support-crumb a{color:#66dbe8;text-decoration:none}.tg-support-crumb strong{color:#fff;font-weight:700}.tg-support-main{padding:54px 0 70px}.tg-support-main>.tg-support-wrap{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:28px;align-items:start}.tg-support-content{background:#fff;border:1px solid #e0e9f1;border-radius:18px;padding:38px 42px;box-shadow:0 12px 34px rgba(7,42,78,.06);font-size:15px;line-height:1.8;color:#4b6178}.tg-support-content>:first-child{margin-top:0}.tg-support-content h1{display:none}.tg-support-content h2{margin:34px 0 12px;padding-top:27px;border-top:1px solid #e8eef4;color:#092f5e;font:800 24px/1.3 Sora,Manrope,Arial,sans-serif}.tg-support-content h2:first-of-type{margin-top:0;padding-top:0;border-top:0}.tg-support-content h3{margin:24px 0 9px;color:#0a466e;font:750 18px/1.4 Sora,Manrope,Arial,sans-serif}.tg-support-content p{margin:0 0 15px}.tg-support-content ul,.tg-support-content ol{margin:10px 0 20px;padding-left:23px}.tg-support-content li{margin:7px 0}.tg-support-content a{color:#008fa8;font-weight:700}.tg-support-content table{width:100%;border-collapse:collapse;margin:20px 0;display:block;overflow:auto}.tg-support-content th,.tg-support-content td{padding:12px 14px;border:1px solid #dce7ef;text-align:left}.tg-support-content blockquote{margin:20px 0;padding:16px 18px;border-left:4px solid #08a7bc;border-radius:0 10px 10px 0;background:#eef9fb;color:#214d68}.tg-support-help{position:sticky;top:110px;border-radius:18px;padding:28px;background:linear-gradient(145deg,#073363,#07537b);color:#fff;box-shadow:0 14px 34px rgba(4,42,81,.15)}.tg-support-help-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#08a7bc;color:#fff;font-weight:900;letter-spacing:-1px}.tg-support-help h3{margin:18px 0 8px;color:#fff;font:800 23px Sora,Manrope,Arial,sans-serif}.tg-support-help p{margin:0 0 20px;color:#d7e7f1;line-height:1.65}.tg-support-btn{display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:10px;background:#09a8bc;color:#fff!important;text-decoration:none!important;font-weight:800}.tg-support-faq .tg-support-content h2{background:#f7fbfd;border:1px solid #e0ebf2;border-radius:12px;padding:17px 18px;margin:12px 0 8px;font-size:18px}.tg-support-faq .tg-support-content h2:first-of-type{padding:17px 18px;border:1px solid #e0ebf2}.tg-support-faq .tg-support-content h2+p{padding:4px 18px 16px;margin:0 0 8px}
@media(max-width:850px){.tg-support-main>.tg-support-wrap{grid-template-columns:1fr}.tg-support-help{position:static}.tg-support-hero{min-height:280px}.tg-support-main{padding:34px 0 52px}.tg-support-content{padding:28px 25px}}
@media(max-width:540px){.tg-support-wrap{width:min(100% - 28px,1180px)}.tg-support-hero{min-height:260px}.tg-support-hero-inner{padding:42px 0}.tg-support-hero h1{font-size:34px}.tg-support-hero p{font-size:15px}.tg-support-content{padding:23px 18px;border-radius:14px}.tg-support-content h2{font-size:21px}.tg-support-help{padding:23px}}


/* V12.16: Contact detail cards. Reuses the existing support-page container,
   navy/cyan palette, radius and spacing - no new design language. */
.tg-support-contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:28px}
.tg-support-contact-card{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;border:1px solid #EDF1F5;border-radius:12px;background:#fff;color:#172033;text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease}
a.tg-support-contact-card:hover{border-color:#22B8CF;box-shadow:0 6px 18px rgba(8,43,92,.08)}
.tg-support-contact-card .tg-ico{font-size:22px;color:#22B8CF;line-height:1.2}
.tg-support-contact-card>span:last-child{display:flex;flex-direction:column;gap:3px}
.tg-support-contact-card strong{font-family:'Sora',sans-serif;font-size:14px;font-weight:600;color:#082B5C}
.tg-support-contact-card span span{font-size:13.5px;color:#6B7A92;word-break:break-word}
@media(max-width:600px){.tg-support-contact{grid-template-columns:1fr}}


/* V12.18: image hero for the support/static pages. The existing gradient block
   stays as the overlay, so text contrast is unchanged when an image is set and
   the design is identical when none is. */
.tg-support-hero{position:relative;overflow:hidden}
.tg-support-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.tg-support-hero:has(.tg-support-hero-img) .tg-support-hero-bg{background:linear-gradient(180deg,rgba(8,43,92,.78) 0%,rgba(8,43,92,.88) 100%);z-index:1}
.tg-support-hero-inner{position:relative;z-index:2}


/* V12.19: FAQ accordion + legal layout. Namespaced under .tg-support-*; the
   accordion reuses the existing .tg-faq controller contract. */
.tg-support-faqlist{display:flex;flex-direction:column;gap:12px;margin-top:6px}
.tg-support-faq{border:1px solid #EDF1F5;border-radius:12px;background:#fff;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}
.tg-support-faq.is-open{border-color:#22B8CF;box-shadow:0 8px 24px rgba(8,43,92,.07)}
.tg-support-faq .tg-faq-head{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:18px 20px;background:none;border:0;text-align:left;cursor:pointer;font:inherit}
.tg-support-faq-q{font-family:'Sora',sans-serif;font-size:16px;font-weight:600;color:#082B5C;line-height:1.4}
.tg-support-faq-ico{position:relative;flex:0 0 auto;width:20px;height:20px}
.tg-support-faq-ico::before,.tg-support-faq-ico::after{content:"";position:absolute;left:50%;top:50%;background:#22B8CF;border-radius:2px;transform:translate(-50%,-50%);transition:transform .2s ease,opacity .2s ease}
.tg-support-faq-ico::before{width:14px;height:2px}
.tg-support-faq-ico::after{width:2px;height:14px}
.tg-support-faq.is-open .tg-support-faq-ico::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0}
.tg-support-faq .tg-faq-body{display:none;padding:0 20px 20px;color:#49566B;font-size:15px;line-height:1.7}
.tg-support-faq.is-open .tg-faq-body{display:block}
.tg-support-legal{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:34px;align-items:start}
.tg-support-toc{order:2;position:sticky;top:96px;padding:20px;border:1px solid #EDF1F5;border-radius:12px;background:#fff}
.tg-support-toc-title{margin:0 0 10px;font-family:'Sora',sans-serif;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#22B8CF}
.tg-support-toc ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.tg-support-toc a{display:flex;gap:10px;padding:7px 0;font-size:13.5px;color:#49566B;text-decoration:none;line-height:1.4}
.tg-support-toc a:hover{color:#082B5C}
.tg-support-toc a span{color:#9AA6B8;font-variant-numeric:tabular-nums}
.tg-support-legal-body{order:1;padding:30px 34px;border:1px solid #EDF1F5;border-radius:14px;background:#fff}
.tg-support-legal-body h2{scroll-margin-top:110px}
@media(max-width:900px){.tg-support-legal{grid-template-columns:1fr;gap:18px}.tg-support-toc{order:1;position:static}.tg-support-legal-body{order:2;padding:22px 18px}}


/* V12.19.3 */
.tg-support-lead{font-size:16.5px;line-height:1.7;color:#49566B;margin:0 0 18px}
.tg-support-cta{margin:0 0 6px}


/* V12.20: the support content now renders inside the theme's own page
   template, so it needs its own container. Namespaced under .tg-support-*. */
.tg-support-shell{width:min(1180px,92vw);margin:0 auto;padding:8px 0 10px}
.tg-support-faqwrap{width:min(860px,92vw)}
.tg-support-shell .tg-support-legal{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:36px;align-items:start}
.tg-support-shell .tg-support-legal-body{order:1;padding:32px 36px;border:1px solid #EDF1F5;border-radius:14px;background:#fff;font-size:15.5px;line-height:1.75;color:#49566B}
.tg-support-shell .tg-support-legal-body h2{font-family:'Sora',sans-serif;font-size:19px;color:#082B5C;margin:30px 0 10px;scroll-margin-top:110px}
.tg-support-shell .tg-support-legal-body h2:first-child{margin-top:0}
.tg-support-shell .tg-support-legal-body h3{font-size:16px;color:#082B5C;margin:20px 0 8px}
.tg-support-shell .tg-support-toc{order:2}
@media(max-width:900px){.tg-support-shell .tg-support-legal{grid-template-columns:1fr;gap:16px}.tg-support-shell .tg-support-toc{order:1;position:static}.tg-support-shell .tg-support-legal-body{order:2;padding:22px 18px}}


/* V12.21 — DOM-enhanced support pages. All selectors scoped. */
.tg-support-enhanced{width:min(1220px,92vw);margin-inline:auto;padding:10px 0 24px}
.tg-support-enhanced--faq{width:min(960px,92vw)}
.tg-support-faq-list{display:flex;flex-direction:column;gap:12px}
.tg-support-faq-item{border:1px solid #EDF1F5;border-radius:12px;background:#fff;overflow:hidden}
.tg-support-faq-item.is-open{border-color:#22B8CF;box-shadow:0 8px 24px rgba(8,43,92,.07)}
.tg-support-faq-button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:18px 20px;background:none;border:0;text-align:left;cursor:pointer;font:inherit}
.tg-support-faq-q{font-family:'Sora',sans-serif;font-size:16px;font-weight:600;color:#082B5C;line-height:1.4}
.tg-support-faq-ico{position:relative;flex:0 0 auto;width:20px;height:20px}
.tg-support-faq-ico::before,.tg-support-faq-ico::after{content:"";position:absolute;left:50%;top:50%;background:#22B8CF;border-radius:2px;transform:translate(-50%,-50%);transition:transform .2s ease,opacity .2s ease}
.tg-support-faq-ico::before{width:14px;height:2px}
.tg-support-faq-ico::after{width:2px;height:14px}
.tg-support-faq-item.is-open .tg-support-faq-ico::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0}
.tg-support-faq-panel{display:none;padding:0 20px 20px;color:#49566B;font-size:15px;line-height:1.7}
.tg-support-faq-item.is-open .tg-support-faq-panel{display:block}
.tg-support-legal-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:36px;align-items:start}
.tg-support-legal-body{padding:32px 36px;border:1px solid #EDF1F5;border-radius:14px;background:#fff;font-size:15.5px;line-height:1.75;color:#49566B}
.tg-support-legal-body h2{scroll-margin-top:110px}
.tg-support-toc{position:sticky;top:96px;padding:20px;border:1px solid #EDF1F5;border-radius:12px;background:#fff}
.tg-support-toc-title{margin:0 0 10px;font-family:'Sora',sans-serif;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#22B8CF}
.tg-support-toc ol{list-style:none;margin:0;padding:0}
.tg-support-toc a{display:flex;gap:10px;padding:7px 0;font-size:13.5px;color:#49566B;text-decoration:none}
.tg-support-toc a:hover{color:#082B5C}
.tg-support-toc a span{color:#9AA6B8;font-variant-numeric:tabular-nums}
@media(max-width:900px){.tg-support-legal-layout{grid-template-columns:1fr;gap:16px}.tg-support-toc{position:static;order:-1}.tg-support-legal-body{padding:22px 18px}}

/* V12.23.4 — presentation-only refinement. Scoped to support pages. */
.tg-support-page{background:#f7f9fc}
.tg-support-page .tg-support-hero{min-height:245px}
.tg-support-page .tg-support-hero-inner{padding-top:44px;padding-bottom:44px}
.tg-support-page .tg-support-hero h1{font-size:clamp(30px,3.2vw,43px);line-height:1.16;letter-spacing:-.025em}
.tg-support-page .tg-support-main{padding-top:36px;padding-bottom:54px}
.tg-support-page .tg-support-content{box-shadow:0 10px 28px rgba(8,43,92,.045);border-color:#e5edf4}
.tg-support-page .tg-support-legal{gap:24px}
.tg-support-page .tg-support-legal-body{padding:32px 36px;border-color:#e2ebf3;box-shadow:0 8px 25px rgba(8,43,92,.035);min-width:0}
.tg-support-page .tg-support-legal-body h2{font-size:clamp(19px,2vw,23px);line-height:1.38;letter-spacing:-.018em;margin-top:30px}
.tg-support-page .tg-support-legal-body p{line-height:1.85;max-width:82ch}
.tg-support-page .tg-support-toc{border-color:#e2ebf3;box-shadow:0 8px 24px rgba(8,43,92,.045)}
.tg-support-page .tg-support-toc a{border-radius:7px;padding:9px 8px;color:#315474;transition:background .16s,color .16s}
.tg-support-page .tg-support-toc a:hover,.tg-support-page .tg-support-toc a:focus-visible{background:#eaf7fa;color:#006f84}
.tg-support-page .tg-support-faq-item,.tg-support-page .tg-support-faq{border-color:#e1eaf2;box-shadow:0 4px 16px rgba(8,43,92,.035)}
.tg-support-page .tg-support-faq-button,.tg-support-page .tg-support-faq .tg-faq-head{padding:21px 23px}
.tg-support-page .tg-support-faq-q{font-size:16px;line-height:1.55}
.tg-support-page .tg-support-faq-panel,.tg-support-page .tg-support-faq .tg-faq-body{padding-left:23px;padding-right:23px;line-height:1.85}
@media(max-width:900px){.tg-support-page .tg-support-legal{gap:16px}.tg-support-page .tg-support-toc{position:static}.tg-support-page .tg-support-legal-body{padding:24px 22px}}
@media(max-width:600px){.tg-support-page .tg-support-hero{min-height:0}.tg-support-page .tg-support-hero-inner{padding:34px 0}.tg-support-page .tg-support-hero h1{font-size:30px}.tg-support-page .tg-support-main{padding:22px 0 40px}.tg-support-page .tg-support-content{padding:22px 18px}.tg-support-page .tg-support-legal-body{padding:22px 18px}.tg-support-page .tg-support-toc{padding:16px}.tg-support-page .tg-support-faq-button,.tg-support-page .tg-support-faq .tg-faq-head{padding:17px 16px}.tg-support-page .tg-support-faq-panel,.tg-support-page .tg-support-faq .tg-faq-body{padding-left:16px;padding-right:16px}}

/* V12.24 — consistency across DOM-enhanced and template-rendered pages. */
.tg-support-page .tg-support-hero{min-height:clamp(180px,24vw,290px)}
.tg-support-page .tg-support-hero-bg{background-repeat:no-repeat;background-size:cover;background-position:center}
.tg-support-page .tg-support-hero-inner{padding-block:clamp(35px,5vw,65px)}
.tg-support-enhanced--faq,.tg-support-enhanced--legal{width:min(1180px,calc(100% - 36px));margin:34px auto 65px}
.tg-support-enhanced--faq .tg-support-faq-list{display:grid;gap:14px;max-width:940px;margin:auto}
.tg-support-enhanced--faq .tg-support-faq-item{background:#fff;border:1px solid #dde9f1;border-radius:16px;overflow:hidden;box-shadow:0 8px 24px rgba(8,43,92,.04)}
.tg-support-enhanced--faq .tg-support-faq-button{display:flex;justify-content:space-between;align-items:center;gap:15px;width:100%;padding:20px 24px;background:white;border:0;text-align:left;cursor:pointer;color:#082b5c;font-weight:750;font-size:17px}
.tg-support-enhanced--faq .tg-support-faq-panel{display:none;padding:0 24px 24px;line-height:1.8;color:#405671}
.tg-support-enhanced--faq .tg-support-faq-item.is-open .tg-support-faq-panel{display:block}
.tg-support-enhanced--faq .tg-support-faq-item.is-open{border-color:#0095a9}
.tg-support-enhanced--legal .tg-support-legal-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:24px;align-items:start}
.tg-support-enhanced--legal .tg-support-legal-body{min-width:0;border-radius:18px;padding:clamp(20px,3vw,40px);border:1px solid #e3ebf2;background:white}
.tg-support-enhanced--legal .tg-support-toc{position:sticky;top:100px;background:#f4f9fb;border:1px solid #e1eaf1;border-radius:16px;padding:22px}
.tg-support-enhanced--legal [id]{scroll-margin-top:115px}
@media(max-width:900px){.tg-support-enhanced--legal .tg-support-legal-layout{grid-template-columns:minmax(0,1fr)}.tg-support-enhanced--legal .tg-support-toc{position:static;order:-1}}
@media(max-width:600px){.tg-support-enhanced--faq,.tg-support-enhanced--legal{width:calc(100% - 28px);margin-block:22px 40px}.tg-support-enhanced--faq .tg-support-faq-button{padding:17px}.tg-support-enhanced--faq .tg-support-faq-panel{padding:0 17px 17px}}

/* V12.24.1 — Elementor FAQ fallback, no changes to stored page content. */
.tg-support-faq-standalone{box-sizing:border-box;width:min(940px,calc(100vw - 36px));max-width:100%;margin:22px auto 50px;position:relative;clear:both}
.tg-support-faq-standalone .tg-support-faq-list{display:grid;gap:14px}
.tg-support-faq-standalone .tg-support-faq-item{border:1px solid #dfebf2;border-radius:15px;background:#fff;box-shadow:0 8px 25px rgba(8,43,92,.06);overflow:hidden}
.tg-support-faq-standalone .tg-support-faq-item.is-open{border-color:#0095a9}
.tg-support-faq-standalone .tg-support-faq-button{display:flex;align-items:center;justify-content:space-between;width:100%;gap:18px;padding:22px 25px;background:#fff;border:0;text-align:left;cursor:pointer}
.tg-support-faq-standalone .tg-support-faq-button:focus-visible{outline:3px solid #0095a9;outline-offset:-4px}
.tg-support-faq-standalone .tg-support-faq-q{color:#082b5c;font-size:clamp(15px,1.5vw,18px);font-weight:700;line-height:1.5}
.tg-support-faq-standalone .tg-support-faq-panel{display:none;padding:0 25px 22px;color:#405671;font-size:15px;line-height:1.8}
.tg-support-faq-standalone .tg-support-faq-item.is-open .tg-support-faq-panel{display:block}
.tg-support-faq-standalone .tg-support-faq-panel p{margin:0 0 10px}
.tg-support-faq-standalone .tg-support-faq-panel p:last-child{margin-bottom:0}
.tgt-faq-fallback-active [data-tgt-faq-original][hidden]{display:none!important}
@media(max-width:650px){.tg-support-faq-standalone{width:calc(100vw - 28px);max-width:100%;margin:18px auto 34px}.tg-support-faq-standalone .tg-support-faq-button{padding:17px}.tg-support-faq-standalone .tg-support-faq-panel{padding:0 17px 18px}}

.tg-support-faq-standalone{grid-column:1/-1!important;flex:0 0 100%;justify-self:center;min-width:0}

/* V12.24.2: legal Elementor fallback; never rewrites policy content. */
.tgt-legal-elementor-enhanced .tg-support-legal-enhanced{width:min(1180px,calc(100% - 36px));margin:34px auto 56px;display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:24px;align-items:start}
.tgt-legal-elementor-enhanced .tg-support-legal-enhanced>.elementor{min-width:0;max-width:100%;padding:clamp(20px,3vw,38px);background:#fff;border:1px solid #e2eaf1;border-radius:18px;box-shadow:0 12px 32px rgba(8,43,92,.045)}
.tgt-legal-elementor-enhanced .tg-support-legal-enhanced h2,.tgt-legal-elementor-enhanced .tg-support-legal-enhanced h3{scroll-margin-top:115px}
.tgt-legal-elementor-enhanced .tg-support-legal-enhanced .tg-support-toc{position:sticky;top:100px;border:1px solid #deebf2;border-radius:16px;background:#f4f9fb;min-width:0;max-height:calc(100vh - 125px);overflow:auto}
.tgt-legal-elementor-enhanced .tg-support-toc--elementor a{display:block;padding:9px 10px;border-radius:8px;overflow-wrap:anywhere}
.tgt-legal-elementor-enhanced .tg-support-toc--elementor a:hover,.tgt-legal-elementor-enhanced .tg-support-toc--elementor a:focus-visible{background:#e3f5f8;color:#00677b}
@media(max-width:900px){.tgt-legal-elementor-enhanced .tg-support-legal-enhanced{grid-template-columns:minmax(0,1fr)}.tgt-legal-elementor-enhanced .tg-support-legal-enhanced .tg-support-toc{grid-row:1;position:static;max-height:260px}.tgt-legal-elementor-enhanced .tg-support-legal-enhanced>.elementor{padding:22px 18px}}


/* V12.24.3 — Support policy visual system. Scoped to legal pages only.
   Works with the actual PHP template classes and the JS-enhanced fallback.
   FAQ and every enquiry/payment component remain untouched. */
body:has(.tg-support-page) .tg-support-page{background:#f6f9fc;min-width:0}
.tg-support-page .tg-support-hero{min-height:0!important;max-height:none;background:#082B5C}
.tg-support-page .tg-support-hero-inner{padding-block:42px!important}
.tg-support-page .tg-support-hero h1{margin:9px 0 11px;font-size:clamp(30px,3vw,44px);line-height:1.2}
.tg-support-page .tg-support-hero p{font-size:clamp(14px,1.2vw,16px);line-height:1.65}
.tg-support-page .tg-support-hero-bg{background:linear-gradient(100deg,#082B5C 0%,#083966 65%,#00647a 145%)!important;transform:none}
.tg-support-page .tg-support-main{padding:30px 0 54px}
/* The markup nests the two-column legal layout inside .tg-support-content;
   override the earlier extra wrapping grid and white outer border. */
.tg-support-page .tg-support-main>.tg-support-wrap{display:block;max-width:1200px}
.tg-support-page .tg-support-content{background:transparent;border:0;border-radius:0;padding:0;box-shadow:none!important}
.tg-support-page .tg-support-legal,
.tg-support-enhanced--legal .tg-support-legal-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:22px;align-items:start}
.tg-support-page .tg-support-legal-body,
.tg-support-enhanced--legal .tg-support-legal-body{order:1;background:#fff;border:1px solid #e0eaf2;border-radius:17px;padding:clamp(22px,3vw,38px)!important;box-shadow:0 10px 28px rgba(8,43,92,.045);min-width:0;color:#3d5872;font-size:15px;line-height:1.85}
.tg-support-page .tg-support-legal-body h2,
.tg-support-enhanced--legal .tg-support-legal-body h2{margin:25px 0 9px;padding:0;border:0;font-size:clamp(19px,1.6vw,22px);line-height:1.4;font-weight:750;color:#082B5C;scroll-margin-top:120px}
.tg-support-page .tg-support-legal-body h2:first-child,
.tg-support-enhanced--legal .tg-support-legal-body h2:first-child{margin-top:0}
.tg-support-page .tg-support-legal-body p,
.tg-support-enhanced--legal .tg-support-legal-body p{max-width:78ch;margin:0 0 14px;line-height:1.86}
.tg-support-page .tg-support-toc,
.tg-support-enhanced--legal .tg-support-toc{order:2;position:sticky;top:112px;padding:21px 18px;border:1px solid #e0eaf2;border-radius:15px;background:#fff;box-shadow:0 8px 22px rgba(8,43,92,.035);max-height:calc(100vh - 130px);overflow:auto}
.tg-support-page .tg-support-toc ol,
.tg-support-enhanced--legal .tg-support-toc ol{padding:0;margin:0;list-style:none}
.tg-support-page .tg-support-toc a,
.tg-support-enhanced--legal .tg-support-toc a{display:flex;gap:8px;align-items:baseline;padding:9px 8px;border-radius:8px;color:#315474;font-size:13px;line-height:1.5;text-decoration:none;overflow-wrap:anywhere}
.tg-support-page .tg-support-toc a:hover,
.tg-support-page .tg-support-toc a:focus-visible,
.tg-support-enhanced--legal .tg-support-toc a:hover{background:#eaf7fa;color:#00798c}
.tg-support-page .tg-support-toc-title{margin:0 0 12px;color:#0095A9}
@media(max-width:900px){
 .tg-support-page .tg-support-legal,.tg-support-enhanced--legal .tg-support-legal-layout{grid-template-columns:minmax(0,1fr);gap:18px}
 .tg-support-page .tg-support-toc,.tg-support-enhanced--legal .tg-support-toc{order:1;position:static;max-height:230px}
 .tg-support-page .tg-support-legal-body,.tg-support-enhanced--legal .tg-support-legal-body{order:2}
}
@media(max-width:600px){
 .tg-support-page .tg-support-hero-inner{padding-block:30px!important}
 .tg-support-page .tg-support-main{padding:20px 0 38px}
 .tg-support-page .tg-support-legal-body,.tg-support-enhanced--legal .tg-support-legal-body{padding:22px 18px!important;font-size:14.5px}
 .tg-support-page .tg-support-legal-body h2{font-size:19px}
 .tg-support-page .tg-support-toc{padding:14px}
}

/* V12.24.4: legal pages: content-first grid that doesn't constrain text to a 500px strip.
   Targets both shortcode/template and DOM-enhanced layouts without touching FAQ. */
.tg-support-page .tg-support-main>.tg-support-wrap{width:min(1220px,calc(100% - 48px));max-width:1220px;display:block!important}
.tg-support-page .tg-support-legal,.tg-support-enhanced--legal .tg-support-legal-layout{width:100%;grid-template-columns:minmax(0,1fr) minmax(225px,265px)!important;gap:24px!important}
.tg-support-page .tg-support-legal-body,.tg-support-enhanced--legal .tg-support-legal-body{width:100%;box-sizing:border-box;max-width:none!important}
.tg-support-page .tg-support-legal-body>*,.tg-support-enhanced--legal .tg-support-legal-body>*{max-width:84ch}
.tg-support-page .tg-support-legal-body p,.tg-support-enhanced--legal .tg-support-legal-body p{max-width:84ch;font-size:15px;line-height:1.85}
.tg-support-page .tg-support-toc,.tg-support-enhanced--legal .tg-support-toc{box-sizing:border-box;width:100%;min-width:0}
.tg-support-page .tg-support-toc a,.tg-support-enhanced--legal .tg-support-toc a{display:flex;flex-wrap:nowrap;overflow-wrap:normal;word-break:normal;align-items:flex-start;gap:9px}
.tg-support-page .tg-support-toc a span,.tg-support-enhanced--legal .tg-support-toc a span{min-width:23px;flex-shrink:0}
/* Content is the white card, not a wide empty surrounding card. */
.tg-support-page .tg-support-content{width:100%;min-width:0;border:0!important;background:transparent!important;padding:0!important}
.tg-support-page .tg-support-main>.tg-support-wrap>.tg-support-help{display:none}
.tg-support-page .tg-support-hero{min-height:0!important;margin:0}
.tg-support-page .tg-support-hero-inner{width:min(1220px,calc(100% - 48px));padding:38px 0!important}
.tg-support-page .tg-support-hero h1{font-size:clamp(30px,3.1vw,43px)!important}
/* Elementor-enhanced documents: keep the TOC compact and avoid narrow text. */
body.tgt-legal-elementor-enhanced .tg-support-legal-enhanced{width:min(1220px,calc(100% - 48px));grid-template-columns:minmax(0,1fr) 260px;gap:24px}
body.tgt-legal-elementor-enhanced .tg-support-legal-enhanced>.elementor{width:100%;min-width:0;box-sizing:border-box}
body.tgt-legal-elementor-enhanced .tg-support-legal-enhanced .tg-support-toc--elementor{min-width:0}
body.tgt-legal-elementor-enhanced .tg-support-legal-enhanced .tg-support-toc--elementor li{counter-increment:none}
@media(max-width:900px){
 .tg-support-page .tg-support-main>.tg-support-wrap{width:calc(100% - 28px)}
 .tg-support-page .tg-support-legal,.tg-support-enhanced--legal .tg-support-legal-layout,body.tgt-legal-elementor-enhanced .tg-support-legal-enhanced{grid-template-columns:minmax(0,1fr)!important}
 .tg-support-page .tg-support-toc,.tg-support-enhanced--legal .tg-support-toc{position:static;max-height:240px;order:1}
 .tg-support-page .tg-support-legal-body,.tg-support-enhanced--legal .tg-support-legal-body{order:2}
 body.tgt-legal-elementor-enhanced .tg-support-legal-enhanced{width:calc(100% - 28px)}
}
@media(max-width:600px){
 .tg-support-page .tg-support-hero-inner{width:calc(100% - 30px);padding:30px 0!important}
 .tg-support-page .tg-support-legal-body{padding:20px 17px!important}
 .tg-support-page .tg-support-legal-body p{font-size:14.5px}
}


/* V12.24.5 — policy-only template layout correction. The hero belongs above
   the legal two-column layout, never inside either column. No FAQ selectors. */
.tg-support-page:has(.tg-support-legal) { display:block!important; width:100%!important; max-width:none!important; min-width:0; background:#f6f9fc; }
.tg-support-page:has(.tg-support-legal) > .tg-support-hero {
 display:flex!important; position:relative!important; width:100%!important; max-width:none!important;
 min-height:0!important; margin:0!important; border:0!important; border-radius:0!important;
 background:#082b5c!important; box-sizing:border-box;
}
.tg-support-page:has(.tg-support-legal) > .tg-support-hero .tg-support-hero-inner {
 box-sizing:border-box; width:min(1160px,calc(100% - 48px))!important; max-width:1160px!important;
 margin-inline:auto!important; padding:44px 0!important; flex:1 1 auto!important;
}
.tg-support-page:has(.tg-support-legal) > .tg-support-main {
 width:100%!important; max-width:none!important; margin:0!important; padding:32px 0 60px!important;
}
.tg-support-page:has(.tg-support-legal) > .tg-support-main > .tg-support-wrap {
 box-sizing:border-box; width:min(1160px,calc(100% - 48px))!important; max-width:1160px!important;
 margin:0 auto!important; display:block!important;
}
.tg-support-page:has(.tg-support-legal) .tg-support-content {
 box-sizing:border-box; width:100%!important; max-width:none!important; padding:0!important;
 border:0!important; box-shadow:none!important; background:transparent!important;
}
.tg-support-page:has(.tg-support-legal) .tg-support-legal {
 display:grid!important; grid-template-columns:minmax(0,1fr) 260px!important;
 gap:25px!important; align-items:start!important; width:100%!important;
}
.tg-support-page:has(.tg-support-legal) .tg-support-legal-body {
 grid-column:1!important; grid-row:1!important; width:100%!important; max-width:none!important;
 box-sizing:border-box; border-radius:16px!important; background:#fff!important;
 padding:34px 38px!important;
}
.tg-support-page:has(.tg-support-legal) .tg-support-toc {
 grid-column:2!important; grid-row:1!important; width:100%!important; order:initial!important;
 top:110px; box-sizing:border-box;
}
.tg-support-page:has(.tg-support-legal) .tg-support-legal-body p { max-width:74ch!important; }
@media(max-width:900px) {
 .tg-support-page:has(.tg-support-legal) .tg-support-legal { grid-template-columns:minmax(0,1fr)!important; }
 .tg-support-page:has(.tg-support-legal) .tg-support-toc { grid-column:1!important; grid-row:1!important; position:static!important; }
 .tg-support-page:has(.tg-support-legal) .tg-support-legal-body { grid-column:1!important; grid-row:2!important; }
}
@media(max-width:600px) {
 .tg-support-page:has(.tg-support-legal) > .tg-support-main > .tg-support-wrap,
 .tg-support-page:has(.tg-support-legal) > .tg-support-hero .tg-support-hero-inner { width:calc(100% - 28px)!important; }
 .tg-support-page:has(.tg-support-legal) .tg-support-legal-body { padding:22px 19px!important; }
}


/* V12.24.6 — About-style policy pages. Exact Elementor IDs verified on the live
   site. Never applies to FAQs, checkout, corporate or the support template.
   The hero is a full grid row; content and nav occupy the row below. */
.elementor-251.tgt-policy-about-layout,
.elementor-252.tgt-policy-about-layout,
.elementor-253.tgt-policy-about-layout {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 255px!important;
  column-gap:28px!important;
  row-gap:32px!important;
  width:min(1200px,calc(100% - 40px))!important;
  margin:32px auto 68px!important;
  align-items:start!important;
  box-sizing:border-box!important;
  background:transparent!important;
}
.tgt-policy-about-layout > .tgt-policy-about-hero {
  grid-column:1/-1!important;grid-row:1!important;
  width:100%!important;max-width:none!important;min-width:0!important;
  min-height:260px!important;margin:0!important;padding:0!important;
  border:0!important;border-radius:22px!important;overflow:hidden!important;
  background-color:#082b5c!important; /* Preserve Elementor background-image from post-251/252/253.css */
  box-shadow:0 18px 48px rgba(8,43,92,.12)!important;
  display:flex!important;align-items:center!important;
}
.tgt-policy-about-layout > .tgt-policy-about-hero:before {
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 90% 12%,rgba(0,204,221,.21),transparent 37%);
}
.tgt-policy-about-layout > .tgt-policy-about-hero > .elementor-container {
  width:100%!important;max-width:1100px!important;margin:0 auto!important;
  padding:48px clamp(22px,5vw,68px)!important;
  box-sizing:border-box!important;min-height:0!important;
}
.tgt-policy-about-layout .tgt-policy-about-hero .elementor-column,
.tgt-policy-about-layout .tgt-policy-about-hero .elementor-widget-wrap {width:100%!important;max-width:none!important;}
.tgt-policy-about-layout .tgt-policy-about-hero .elementor-heading-title,
.tgt-policy-about-layout .tgt-policy-about-hero p {color:#fff!important;}
.tgt-policy-about-layout .tgt-policy-about-hero h1 {
  margin:12px 0!important;font-size:clamp(32px,3.8vw,52px)!important;
  line-height:1.12!important;letter-spacing:-.035em!important;font-weight:750!important;
}
.tgt-policy-about-layout .tgt-policy-about-hero .elementor-widget-heading:first-child .elementor-heading-title {
  color:#5ce0ed!important;letter-spacing:.17em!important;font-size:11px!important;font-weight:800!important;
}
.tgt-policy-about-layout > .tgt-policy-about-content {
  grid-column:1!important;grid-row:2!important;
  width:100%!important;max-width:none!important;min-width:0!important;
  padding:clamp(23px,3vw,42px)!important;margin:0!important;
  border:1px solid #e2ebf3!important;border-radius:19px!important;
  background:#fff!important;box-shadow:0 10px 32px rgba(8,43,92,.045)!important;
  box-sizing:border-box!important;
}
.tgt-policy-about-layout > .tgt-policy-about-content > .elementor-container,
.tgt-policy-about-layout > .tgt-policy-about-content .elementor-column,
.tgt-policy-about-layout > .tgt-policy-about-content .elementor-widget-wrap {
  width:100%!important;max-width:none!important;min-width:0!important;
}
.tgt-policy-about-layout .tgt-policy-about-content h2 {
  font-size:clamp(19px,1.65vw,23px)!important;line-height:1.4!important;
  font-weight:750!important;color:#082b5c!important;
  scroll-margin-top:125px!important;
}
.tgt-policy-about-layout .tgt-policy-about-content .elementor-widget-heading:not(:first-child) {
  margin-top:23px!important;padding-top:23px!important;border-top:1px solid #eaf0f5!important;
}
.tgt-policy-about-layout .tgt-policy-about-content .elementor-widget-text-editor p {
  max-width:78ch!important;font-size:15px!important;line-height:1.85!important;
  color:#475f77!important;margin-bottom:13px!important;
}
.tgt-policy-about-layout > .tgt-policy-about-nav {
  grid-column:2!important;grid-row:2!important;order:initial!important;
  width:100%!important;min-width:0!important;position:sticky!important;top:115px!important;
  margin:0!important;padding:21px!important;max-height:calc(100vh - 135px)!important;
  border:1px solid #deebf2!important;border-radius:16px!important;
  background:#fff!important;box-shadow:0 8px 25px rgba(8,43,92,.04)!important;
  box-sizing:border-box!important;overflow:auto!important;
}
.tgt-policy-about-layout > .tgt-policy-about-nav a {
  font-size:13px!important;line-height:1.55!important;padding:9px 7px!important;
  color:#385875!important;text-decoration:none!important;
}
.tgt-policy-about-layout > .tgt-policy-about-nav a:hover,
.tgt-policy-about-layout > .tgt-policy-about-nav a:focus-visible {color:#008fa7!important;background:#eaf7fa!important;}
@media(max-width:850px) {
 .elementor-251.tgt-policy-about-layout,.elementor-252.tgt-policy-about-layout,.elementor-253.tgt-policy-about-layout {
  grid-template-columns:minmax(0,1fr)!important;row-gap:18px!important;width:calc(100% - 28px)!important;margin:20px auto 42px!important;
 }
 .tgt-policy-about-layout > .tgt-policy-about-hero {grid-row:1!important;grid-column:1!important;min-height:220px!important;}
 .tgt-policy-about-layout > .tgt-policy-about-nav {grid-row:2!important;grid-column:1!important;position:static!important;max-height:225px!important;}
 .tgt-policy-about-layout > .tgt-policy-about-content {grid-row:3!important;grid-column:1!important;}
 .tgt-policy-about-layout > .tgt-policy-about-hero > .elementor-container {padding:36px 26px!important;}
}
@media(max-width:520px) {
 .tgt-policy-about-layout > .tgt-policy-about-hero {border-radius:14px!important;min-height:190px!important;}
 .tgt-policy-about-layout > .tgt-policy-about-content {padding:22px 18px!important;border-radius:14px!important;}
 .tgt-policy-about-layout > .tgt-policy-about-hero h1 {font-size:29px!important;}
 .tgt-policy-about-layout .tgt-policy-about-content .elementor-widget-text-editor p {font-size:14.5px!important;}
}

/* V12.24.7: front-end parity with Elementor editor for policy pages 251–253.
   The whole first top-level section is the hero. It must span BOTH grid columns.
   No edits to policy text, Elementor data, enquiry or payment handlers. */
body:not(.elementor-editor-active) :is(.elementor-251,.elementor-252,.elementor-253).tgt-policy-about-layout {
 display:grid!important;grid-template-columns:minmax(0,1fr) 250px!important;
 gap:26px!important;width:min(1220px,calc(100% - 40px))!important;
 max-width:1220px!important;margin:28px auto 70px!important;
 padding:0!important;align-items:start!important;
}
body:not(.elementor-editor-active) :is(.elementor-251,.elementor-252,.elementor-253).tgt-policy-about-layout > .tgt-policy-about-hero {
 grid-area:1 / 1 / 2 / 3!important;display:block!important;
 width:100%!important;max-width:100%!important;min-width:0!important;
 min-height:250px!important;position:relative!important;
 background-color:#082b5c!important;
 background-size:cover!important;background-position:center center!important;
 border-radius:18px!important;overflow:hidden!important;
}
body:not(.elementor-editor-active) .tgt-policy-about-layout > .tgt-policy-about-hero:before {
 background:linear-gradient(90deg,rgba(8,43,92,.94),rgba(8,43,92,.65) 43%,rgba(8,43,92,.02) 100%)!important;
 z-index:0!important;
}
body:not(.elementor-editor-active) .tgt-policy-about-layout > .tgt-policy-about-hero > .elementor-container {
 position:relative!important;z-index:1!important;width:100%!important;
 max-width:1120px!important;min-height:250px!important;
 margin:auto!important;display:flex!important;align-items:center!important;
}
body:not(.elementor-editor-active) .tgt-policy-about-layout > .tgt-policy-about-content {
 grid-area:2 / 1 / 3 / 2!important;width:100%!important;max-width:100%!important;
 min-width:0!important;margin:0!important;
}
body:not(.elementor-editor-active) .tgt-policy-about-layout > .tgt-policy-about-nav {
 grid-area:2 / 2 / 3 / 3!important;width:100%!important;min-width:0!important;margin:0!important;
}
@media(max-width:850px){
 body:not(.elementor-editor-active) :is(.elementor-251,.elementor-252,.elementor-253).tgt-policy-about-layout {grid-template-columns:minmax(0,1fr)!important;width:calc(100% - 28px)!important;}
 body:not(.elementor-editor-active) .tgt-policy-about-layout > .tgt-policy-about-hero {grid-area:1 / 1 / 2 / 2!important;}
 body:not(.elementor-editor-active) .tgt-policy-about-layout > .tgt-policy-about-nav {grid-area:2 / 1 / 3 / 2!important;position:static!important;max-height:230px!important;}
 body:not(.elementor-editor-active) .tgt-policy-about-layout > .tgt-policy-about-content {grid-area:3 / 1 / 4 / 2!important;}
}

/* V12.24.8 — preserve native Elementor image on three policy heroes.
   Do not reset the background shorthand; Elementor supplies the image URL.
   Preserve full-width layout and place the navy treatment in the pseudo-overlay. */
body:not(.elementor-editor-active) :is(.elementor-251,.elementor-252,.elementor-253).tgt-policy-about-layout > .tgt-policy-about-hero {
  background-color:#082b5c!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  isolation:isolate!important;
}
body:not(.elementor-editor-active) .tgt-policy-about-layout > .tgt-policy-about-hero::before {
  background:linear-gradient(90deg,rgba(8,43,92,.94) 0%,rgba(8,43,92,.76) 38%,rgba(8,43,92,.18) 83%,rgba(8,43,92,.08) 100%)!important;
  z-index:0!important;
}
body:not(.elementor-editor-active) .tgt-policy-about-layout > .tgt-policy-about-hero > .elementor-container {z-index:1!important;}
