/* ETG Strategy Partners — site styles (v4) loaded by the ETG Site Kit plugin. */
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:'Physis',system-ui,sans-serif;font-weight:300}
/* Physis ships with a cursive-attachment feature that pulls letters like o+e together; switch it off everywhere */
body,body *{font-feature-settings:"curs" 0}
body,.elementor-widget-text-editor,.elementor-widget-heading .elementor-heading-title,.elementor-button,.elementor-nav-menu a{font-family:'Physis',system-ui,sans-serif}
.elementor-widget-text-editor p:last-child{margin-bottom:0}
.elementor-widget-text-editor a{color:#22476E;text-decoration:underline;text-underline-offset:3px}
.elementor-widget-text-editor strong{font-weight:500;color:#22476E}

/* Backgrounds */
.etg-pat{background-image:radial-gradient(120% 90% at 100% 0%,rgba(58,110,165,.42) 0%,rgba(58,110,165,0) 60%),repeating-linear-gradient(90deg,rgba(255,255,255,.045) 0 1px,transparent 1px 120px) !important}
.etg-grad{background-image:linear-gradient(120deg,#1C3B5E 0%,#22476E 40%,#3A6EA5 100%) !important}
.etg-halfbg{background:linear-gradient(180deg,#F4F7FB 50%,#FFFFFF 50%) !important}
.etg-relative{position:relative;z-index:1}
.etg-clip{overflow:hidden}
.etg-ring{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.14);pointer-events:none}
.etg-ring1{right:-120px;top:-160px;width:520px;height:520px}
.etg-ring2{right:-40px;top:-80px;width:360px;height:360px;border-color:rgba(255,255,255,.12)}
.elementor-widget-html:has(.etg-ring){position:absolute !important;inset:0;width:100% !important;margin:0 !important;pointer-events:none}

/* Width helpers for widgets placed straight into rows */
.e-con>.etg-w4,.e-con-inner>.etg-w4{width:30.5% !important;flex:none}
.e-con>.etg-w5,.e-con-inner>.etg-w5{width:39% !important;flex:none}
.e-con>.etg-w6,.e-con-inner>.etg-w6{width:48.5% !important;flex:none}
.e-con>.etg-w8,.e-con-inner>.etg-w8{width:66.5% !important;flex:none}
.etg-maxw{max-width:720px}
.etg-side{max-width:460px}
.etg-grow{flex:1 1 0% !important;min-width:0}
.etg-icow{flex:none !important;width:auto !important;max-width:none !important}
@media (min-width:1025px){.etg-pl{padding-left:clamp(0px,3vw,44px) !important}}
@media (max-width:1024px){.e-con>.etg-w4,.e-con>.etg-w5,.e-con>.etg-w6,.e-con>.etg-w8,.e-con-inner>.etg-w4,.e-con-inner>.etg-w5,.e-con-inner>.etg-w6,.e-con-inner>.etg-w8{width:100% !important}}

/* Home hero: video pulled up over the light-blue band */
.etg-hvid{position:relative;margin-top:clamp(-260px,-18vw,-170px)}
.etg-hvid .etg-vid{box-shadow:0 40px 80px rgba(10,24,40,.35)}
.etg-hcard{position:absolute;left:28px;bottom:28px;background:#fff;color:#141716 !important;border-radius:18px;padding:20px 22px;display:flex;gap:16px;align-items:center;max-width:360px;box-shadow:0 20px 40px rgba(10,24,40,.25);text-decoration:none}
.etg-hcard strong{display:block;font-size:17px;font-weight:500}
.etg-hcard em{display:block;font-style:normal;font-size:15px;color:#45484A;line-height:1.45;margin-top:3px}
.etg-hcard:hover strong{color:#22476E}
@media (max-width:767px){.etg-hvid .etg-vid{aspect-ratio:4/3 !important}.etg-hcard{position:static;margin-top:16px;max-width:none}}

/* Media */
.etg-vid{position:relative;overflow:hidden;border-radius:24px;background-color:#1C3B5E;background-size:cover;background-repeat:no-repeat}
.etg-vid video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.etg-img{overflow:hidden}
.etg-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.etg-r43 img{aspect-ratio:4/3}.etg-r45 img{aspect-ratio:4/5}.etg-r44 img{aspect-ratio:4/4.4}.etg-r169 img{aspect-ratio:16/9}
.etg-r1610 img{aspect-ratio:16/10}.etg-r1611 img{aspect-ratio:16/11}
.etg-pos-top img{object-position:50% 8%}
.etg-rnat img{aspect-ratio:auto !important;height:auto !important;object-fit:contain}
a.etg-card:hover .etg-img img{transform:scale(1.03)}
.etg-ct .elementor-heading-title{transition:color .2s}
a.etg-card:hover .etg-ct .elementor-heading-title{color:#22476E}
a.etg-card{color:inherit;text-decoration:none}
.etg-ph{aspect-ratio:4/3;background:#E3E9F0;display:flex;align-items:flex-end;padding:18px 20px;font-size:14px;color:#63666A}

/* Icons, chips, ticks */
.etg-ico{width:56px;height:56px;border-radius:50%;background:#EAF0F7;color:#22476E;display:inline-flex;align-items:center;justify-content:center;flex:none}
.etg-ico svg{width:47%;height:47%}
.etg-ico-dk{background:rgba(255,255,255,.12);color:#fff}
.etg-chips{display:flex;flex-wrap:wrap;gap:8px}
.etg-chip{font-size:14px;line-height:1.3;color:#22476E;background:#EAF0F7;border-radius:999px;padding:7px 14px}
ul.etg-tick{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
ul.etg-tick li{display:flex;align-items:flex-start;gap:14px}
ul.etg-tick li::before{content:"";width:22px;height:22px;border-radius:50%;flex:none;margin-top:1px;background:#3A6EA5 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4.5 4.5L19 7'/%3E%3C/svg%3E") center/60% no-repeat}
ul.etg-tick.etg-2col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
@media (max-width:620px){ul.etg-tick.etg-2col{grid-template-columns:minmax(0,1fr)}}
ul.etg-signs{list-style:none;margin:0;padding:0;border-top:1px solid #DCE3EC}
ul.etg-signs li{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #DCE3EC}
ul.etg-signs li::before{content:"—";color:#3A6EA5;flex:none}
ul.etg-x{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
ul.etg-x li{display:flex;gap:14px}
ul.etg-x li::before{content:"✕";color:#8A97A8;flex:none}

/* Text link */
.etg-tl .elementor-heading-title,.etg-tl .elementor-heading-title a{color:#22476E}
.etg-tl:hover .elementor-heading-title a{color:#3A6EA5}
a.etg-tla{color:#22476E;font-weight:500;text-decoration:none}

/* Buttons */
.etg-btn .elementor-button{transition:background-color .2s,border-color .2s,color .2s}
.etg-arrow .elementor-button-text::after{content:"→";display:inline-block;margin-left:10px;transition:transform .3s ease}
.etg-arrow .elementor-button:hover .elementor-button-text::after{transform:translateX(4px)}
.etg-ar{display:inline-block;transition:transform .3s ease}
a:hover .etg-ar{transform:translateX(4px)}

/* Sticky */
@media (min-width:1025px){
.etg-stk{position:sticky !important;top:40px;align-self:flex-start}
.etg-scard{position:sticky !important}
.etg-scard-1{top:40px}.etg-scard-2{top:64px}.etg-scard-3{top:88px}.etg-scard-4{top:112px}
}
.etg-scard{box-shadow:0 -16px 36px rgba(20,38,61,.07)}

/* Stats */
.etg-stat{border-left:2px solid #3A6EA5;padding-left:22px !important}

/* Step lines */
.etg-steps{position:relative}
.etg-steps::before,.etg-steps::after{content:"";position:absolute;left:0;right:0;top:21px;height:2px;background:#C9D3DF;z-index:0}
.etg-steps::after{background:#3A6EA5;transform-origin:left}
.etg-steps>.e-con,.etg-steps>.e-con-inner>.e-con{position:relative;z-index:1}
@media (max-width:767px){.etg-steps::before,.etg-steps::after{display:none}}
.etg-num{width:44px;height:44px;border-radius:50%;background:#fff;border:2px solid #3A6EA5;color:#22476E;display:inline-flex;align-items:center;justify-content:center;font-size:16px;font-weight:500}
.etg-pill{height:40px;padding:0 16px;border-radius:20px;background:#fff;border:2px solid #3A6EA5;color:#22476E;display:inline-flex;align-items:center;font-size:14px;font-weight:500}
.etg-letter{width:46px;height:46px;border-radius:12px;background:#3A6EA5;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:17px;font-weight:500;flex:none}
.etg-ini{width:42px;height:42px;border-radius:50%;background:#EAF0F7;color:#22476E;display:inline-flex;align-items:center;justify-content:center;font-weight:500;font-size:15px}

/* Review rail */
.etg-rail{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#C9D3DF transparent;flex-wrap:nowrap !important}
.etg-rail>.e-con{flex:0 0 min(420px,84vw) !important;scroll-snap-align:start}

/* Audience tiles on phones */
@media (max-width:620px){.etg-aud{flex-direction:row !important}}

/* Alternating featured rows: media first on phones */
@media (max-width:767px){.etg-rev{flex-direction:column-reverse !important}}

/* Device mockups (screens scroll with the page) */
.etg-browser{border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 30px 60px rgba(10,24,40,.3);border:1px solid #DCE3EC}
.etg-browser .bar{height:40px;background:#ECEFF3;display:flex;align-items:center;gap:8px;padding:0 16px}
.etg-browser .bar i{width:11px;height:11px;border-radius:50%;background:#E86A5E;display:block}
.etg-browser .bar i:nth-child(2){background:#F0BE50}.etg-browser .bar i:nth-child(3){background:#62C46C}
.etg-browser .bar b{flex:1;max-width:46%;margin:0 auto;height:22px;border-radius:7px;background:#fff}
.etg-browser .view{position:relative;aspect-ratio:16/10;overflow:hidden}
.etg-phone{border-radius:42px;background:#141716;padding:12px;box-shadow:0 30px 60px rgba(10,24,40,.35)}
.etg-phone .view{position:relative;aspect-ratio:9/19;overflow:hidden;border-radius:32px;background:#fff}
.etg-browser .view img,.etg-phone .view img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 0%;display:block}
.etg-devices{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:40px;align-items:center}
.etg-devices .m{display:flex;justify-content:center}.etg-devices .m .etg-phone{width:min(300px,80vw)}
.etg-gal{display:flex;gap:32px;align-items:center;justify-content:space-between;margin:56px auto 0}
.etg-gal .gi{flex:none}
@media (max-width:900px){.etg-devices{grid-template-columns:minmax(0,1fr)}}
@media (max-width:760px){.etg-gal{flex-direction:column;gap:40px}.etg-gal .gi{width:100% !important}.etg-gal .gi.ph{width:min(280px,76vw) !important}}

/* FAQ */
.etg-faq .elementor-accordion-item{border-left:0 !important;border-right:0 !important}
.etg-faq .elementor-tab-title a{color:inherit}

/* Form */
.etg-form .elementor-field-group .elementor-field{min-height:50px}
.etg-form .elementor-field-subgroup .elementor-field-option label{font-size:15px}
.etg-form .elementor-field-type-radio .elementor-field-option,.etg-form .elementor-field-type-checkbox .elementor-field-option{margin:0 8px 8px 0}

/* Service jump links */
.etg-plinks{display:flex;flex-wrap:wrap;gap:12px}
.etg-plinks a{display:inline-flex;align-items:center;gap:12px;border:1px solid #DCE3EC;border-radius:999px;padding:10px 20px 10px 10px;font-size:16px;font-weight:500;color:#141716;text-decoration:none;transition:border-color .2s}
.etg-plinks a:hover{border-color:#3A6EA5}

/* Brand check quiz */
.etg-quiz{border-bottom:1px solid #DCE3EC}
.etg-quiz .q{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;padding:24px 0;border-top:1px solid #DCE3EC}
.etg-quiz .q span{flex:1 1 300px;font-size:19px;line-height:1.45;color:#141716}
.etg-quiz .bt{display:flex;gap:8px}
.etg-quiz button{font:inherit;font-size:15px;font-weight:500;min-height:46px;min-width:80px;padding:0 18px;border-radius:6px;cursor:pointer;background:#fff;color:#141716;border:1px solid #7D8A9B}
.etg-quiz button[aria-pressed="true"]{background:#22476E;color:#fff;border-color:#22476E}
.etg-quiz-r{background:#EAF0F7;border-radius:20px;padding:26px 28px;display:flex;flex-direction:column;gap:10px}
.etg-quiz-r strong{font-size:26px;font-weight:500;letter-spacing:-.02em;line-height:1.15;color:#141716}
.etg-quiz-r p{margin:0;font-size:16px;line-height:1.6;color:#45484A}

/* AI table */
table.etg-ai{width:100%;border-collapse:separate;border-spacing:0;border:1px solid #DCE3EC;border-radius:20px;overflow:hidden;font-size:16px;background:#fff}
table.etg-ai th{background:#14263D;color:#fff;text-align:left;padding:18px 24px;font-size:16px;font-weight:500;border:0}
table.etg-ai td{padding:18px 24px;border:0;border-top:1px solid #DCE3EC;color:#45484A;vertical-align:top}
table.etg-ai td+td,table.etg-ai th+th{border-left:1px solid #DCE3EC;color:#141716;font-weight:500}
table.etg-ai th+th{border-left-color:rgba(255,255,255,.14);color:#fff}

/* Work filter */
.etg-filter{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.etg-filter .b{display:flex;flex-wrap:wrap;gap:8px}
.etg-filter button{font:inherit;font-size:15px;font-weight:500;min-height:42px;padding:0 16px;border-radius:999px;cursor:pointer;background:#fff;color:#141716;border:1px solid #7D8A9B}
.etg-filter button[aria-pressed="true"]{background:#22476E;color:#fff;border-color:#22476E}
.etg-filter .n{font-size:15px;color:#63666A;padding-left:8px}

/* Contact page */
ol.etg-ol{list-style:none;margin:0;padding:0;border-top:1px solid #D3DCE7}
ol.etg-ol li{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid #D3DCE7;font-size:17px;color:#141716}
ol.etg-ol b{width:32px;height:32px;border-radius:50%;border:2px solid #3A6EA5;color:#22476E;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;flex:none}
a.etg-mini{background:#fff;border:1px solid #DCE3EC;border-radius:20px;padding:22px 24px;display:flex;gap:16px;align-items:center;color:#141716;text-decoration:none}
a.etg-mini strong{display:block;font-size:16px;font-weight:500}
a.etg-mini em{display:block;font-style:normal;font-size:16px;color:#22476E}

/* Call-to-action contact card */
.etg-ccard{background:#fff;color:#141716;border-radius:20px;padding:28px 30px;width:100%;max-width:380px;margin-left:auto;box-sizing:border-box;display:flex;flex-direction:column;box-shadow:0 24px 48px rgba(10,24,40,.25)}
.etg-ccard strong{font-size:22px;font-weight:500;letter-spacing:-.02em;padding-bottom:12px}
.etg-ccard a,.etg-ccard>span{display:flex;align-items:center;gap:14px;padding:14px 0;border-top:1px solid #DCE3EC;font-size:16px;color:#22476E;text-decoration:none}
.etg-ccard>span{color:#45484A}
@media (max-width:1024px){.etg-ccard{margin-left:0}}

/* Firm marks */
.etg-mark svg{width:100%;max-width:220px;height:auto;display:block}

/* Header + footer */
.etg-logo svg{display:block;height:40px;width:auto}
.etg-flogo svg{display:block;height:40px;width:auto}
.etg-fcontact{display:flex;flex-direction:column;gap:10px}
.etg-fcontact a{display:inline-flex;align-items:center;gap:10px;color:#fff;font-size:16px;text-decoration:none}
.etg-fcontact svg{width:20px;height:20px}
.etg-flink .elementor-heading-title a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
/* Phones: logo, compact call-to-action button, and menu toggle on one line */
.etg-header .e-con,.etg-header .e-con-inner,.etg-navrow{flex-wrap:nowrap !important}
.etg-navrow .elementor-widget-nav-menu{width:auto !important;flex:none}
@media (max-width:1024px){.etg-navrow{gap:12px !important}}
@media (max-width:767px){
.etg-logo svg{height:30px}
.etg-header .elementor-widget-html{flex:0 1 auto;min-width:0}
.etg-navrow .etg-btn .elementor-button{padding:10px 14px !important;font-size:14px !important;white-space:nowrap}
.etg-navrow{gap:8px !important}
.elementor-nav-menu--toggle .elementor-menu-toggle{margin:0}
}
@media (max-width:380px){.etg-logo svg{height:26px}.etg-navrow .etg-btn .elementor-button{padding:9px 11px !important;font-size:13px !important}}
@media (min-width:1025px){.etg-m-only{display:none !important}}

/* Motion (scroll-driven where the browser supports it) */
@keyframes etgUp{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}
.etg-in{animation:etgUp .9s cubic-bezier(.2,.7,.2,1) both}
@supports (animation-timeline: view()){
.etg-rv{animation:etgUp linear both;animation-timeline:view();animation-range:entry 0% cover 22%}
@keyframes etgOpen{from{clip-path:inset(6% 7% 6% 7% round 24px)}to{clip-path:inset(0 0 0 0 round 0)}}
.etg-op{animation:etgOpen linear both;animation-timeline:view();animation-range:entry 0% entry 100%}
@keyframes etgPar{from{transform:translateY(-5%) scale(1.1)}to{transform:translateY(5%) scale(1.1)}}
.etg-px{animation:etgPar linear both;animation-timeline:view()}
@keyframes etgFill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.etg-steps::after{animation:etgFill linear both;animation-timeline:view();animation-range:entry 30% cover 60%}
@keyframes etgShot{from{object-position:50% 0%}to{object-position:50% 100%}}
.etg-scrolls{view-timeline-name:--etgshot}
.etg-scrolls .view img{animation:etgShot linear both;animation-timeline:--etgshot;animation-range:cover 10% cover 90%}
}
/* Phones: keep photos, videos, and mockups fully visible (no zoom or clip effects) */
@media (max-width:767px){
.etg-px,.etg-op,.etg-in{animation:none !important}
.etg-px{transform:none !important}
.etg-op{clip-path:none !important}
.etg-hframe{aspect-ratio:16/10 !important}
}
@media (prefers-reduced-motion: reduce){.etg-in,.etg-rv,.etg-op,.etg-px,.etg-steps::after,.etg-scrolls .view img{animation:none !important}}
.etg-grad{position:relative}
.etg-grad{overflow:hidden}

/* ------------------------------------------------------------------ Accessibility (WCAG 2.2 AA) */
.etg-skip{position:absolute;left:12px;top:-200px;z-index:100000;background:#14263D;color:#fff !important;padding:14px 20px;border-radius:6px;font-size:16px;font-weight:500;text-decoration:none}
.etg-skip:focus{top:12px;outline:3px solid #3A6EA5;outline-offset:2px}
.etg-skipw{position:absolute !important;width:auto !important;margin:0 !important}
.etg-sr{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible,.elementor-button:focus-visible,.elementor-tab-title:focus-visible{outline:3px solid #3A6EA5 !important;outline-offset:3px !important;border-radius:4px}
.etg-pat :focus-visible,.etg-grad :focus-visible,.etg-vctl:focus-visible{outline-color:#FFFFFF !important}
#etg-main:focus{outline:none}
/* Pause control for background and hero videos */
.etg-vwrap{position:relative}
.etg-vctl{position:absolute;right:14px;bottom:14px;z-index:5;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;border:0;background:rgba(20,38,61,.82);color:#fff;font:500 14px/1 'Physis',system-ui,sans-serif;cursor:pointer}
.etg-vctl svg{width:14px;height:14px}
.etg-hvid .etg-vctl{top:14px;bottom:auto}
/* Comfortable tap targets (24px+) for small links */
.etg-legal-links{display:flex;flex-wrap:wrap;gap:4px 18px}
.etg-legal-links a{display:inline-flex;align-items:center;min-height:28px;color:#DCE5F0;font-size:14px;text-decoration:underline;text-underline-offset:3px}
.etg-legal-links a:hover{color:#fff}
.etg-fcontact a,.etg-flink .elementor-heading-title a{display:inline-flex;align-items:center;min-height:28px}
.etg-rail:focus-visible{outline:3px solid #3A6EA5;outline-offset:4px}
/* Legal pages */
.etg-toc{border-left:2px solid #DCE3EC;padding-left:18px}
.etg-toc strong{display:block;font-size:15px;font-weight:500;color:#141716;margin-bottom:10px}
.etg-toc ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.etg-toc a{display:inline-flex;min-height:28px;align-items:center;font-size:15px;color:#22476E;text-decoration:none}
.etg-toc a:hover{text-decoration:underline;text-underline-offset:3px}
.etg-legal h2{font-family:'Physis',system-ui,sans-serif;font-weight:500;font-size:26px;line-height:1.2;letter-spacing:-0.02em;color:#141716;margin:48px 0 14px;scroll-margin-top:24px}
.etg-legal h2:first-child{margin-top:0}
.etg-legal p,.etg-legal li{max-width:70ch}
.etg-legal ul{padding-left:22px;margin:0 0 1em}
.etg-legal li{margin-bottom:8px}
.etg-legal .etg-more{margin-top:48px;padding-top:20px;border-top:1px solid #DCE3EC}
@media (max-width:1024px){.etg-toc{display:none}}
/* Respect reduced motion everywhere, including Elementor's own entrance animations */
@media (prefers-reduced-motion: reduce){*,*::before,*::after{scroll-behavior:auto !important;transition-duration:.01ms !important}.elementor-invisible{visibility:visible !important}.animated{animation:none !important}}
