body{margin:0;color:#f4f4f4;font-family:Inter,Arial,sans-serif;line-height:1.6}
:root{
  --bg:#f4f4f4;--text:#50565d;--text-strong:#3f454b;--muted:#81878f;--heading:#4b5158;
  --teal:#68d8d6;--teal-dark:#49c8c4;--purple:#b867d0;--cyan:#a8e5e1;--cyan-strong:#63d5d0;
  --blue:#4795eb;--green:#b7d8c0;--lime:#d4e58d;--yellow:#d7cf56;--footer:#595d64;
  --shadow-soft:0 10px 30px rgba(39,59,77,.05);--shadow-card:0 18px 40px rgba(44,58,80,.08);
  --container:1140px;--header-h:86px;--transition:220ms ease}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
img{display:block;}
a{text-decoration:none;color:inherit}
button,input{font:inherit}
button{cursor:pointer}
.skip-link,.sr-only{position:absolute;left:-9999px}
.skip-link:focus{left:12px;top:12px;z-index:1000;background:#111;color:#fff;padding:10px 14px;border-radius:10px}
.container{width:min(100% - 48px,var(--container));margin-inline:auto}
.section{padding:74px 0;background:#fdfdfd;}
.section-spacious{padding:0px 0 42px}
.section-heading{margin-bottom:28px}
.section-heading.no-margin{margin-bottom:18px}
.section-heading h2{margin:0;font-size:22px;line-height:1.2;font-weight:700;color:var(--heading)}
.section-heading p{margin:10px 0 0;max-width:620px;font-size:13px;color:var(--muted)}
.heading-row{display:flex;align-items:center;justify-content:space-between;gap:20px}
.muted-line{font-size:12px;color:var(--muted)}
.site-header{position:sticky;top:0;z-index:60;background:rgb(255 255 255 / 92%);backdrop-filter:blur(12px);border-bottom:1px solid rgba(227,229,232,.75)}
.header-inner{min-height:var(--header-h);display:grid;grid-template-columns:160px 1fr auto;align-items:center;gap:18px}
.logo{display:inline-flex;align-items:center;min-height:42px;width:300px;height:120px;}
.logo-text{position:relative;display:inline-block;font-size:34px;font-weight:300;letter-spacing:.08em;color:var(--teal);transform:scaleX(.92);transform-origin:left center}
.logo-text::after{content:"";position:absolute;inset:auto 0 -3px auto;width:14px;height:3px;background:var(--teal);border-radius:999px}
.main-nav ul{display:flex;justify-content:center;gap:34px;list-style:none;padding:0;margin:0}
.main-nav a{font-size:17px;color:#656d74;transition:color var(--transition)}
.main-nav a:hover,.main-nav a:focus-visible{color:var(--teal-dark)}
.header-actions{display:flex;align-items:center;gap:16px}
.social-links,.footer-socials{display:inline-flex;align-items:center;gap:12px}
.social-links a,.footer-socials a{color:var(--teal-dark);transition:transform var(--transition),color var(--transition)}
.social-links a:hover,.footer-socials a:hover,.social-links a:focus-visible,.footer-socials a:focus-visible{transform:translateY(-2px);color:var(--teal)}
.social-links svg,.footer-socials svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:160px;min-height:48px;padding:12px 26px;border:0;border-radius:10px;font-size:13px;font-weight:500;line-height:1;transition:transform var(--transition),background-color var(--transition),color var(--transition),box-shadow var(--transition)}
.btn::before,.btn::after{content:"";position:absolute;border:3px solid var(--teal);width:38px;height:22px;transition:transform var(--transition)}
.btn::before{left:-6px;bottom:-6px;border-top:0;border-right:0;border-radius:0 0 0 10px}
.btn::after{right:-6px;top:-6px;border-bottom:0;border-left:0;border-radius:0 10px 0 0}
.btn:hover,.btn:focus-visible{transform:translateY(-2px)}
.btn-primary{background:var(--teal);color:#fff;box-shadow:0 8px 18px rgba(104,216,214,.25)}
.btn-primary:hover,.btn-primary:focus-visible{background:var(--teal-dark)}
.btn-sm{min-width:140px;min-height:38px;padding:10px 20px;font-size:12px}
.btn-sm-wide{min-width:190px;min-height:42px;padding-inline:22px}
.mobile-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;background:transparent;border:0;padding:0}
.mobile-toggle span{width:24px;height:2px;background:#60666d;border-radius:999px;transition:transform var(--transition),opacity var(--transition)}
.mobile-toggle.is-active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.mobile-toggle.is-active span:nth-child(2){opacity:0}
.mobile-toggle.is-active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{display:none;border-top:1px solid rgba(227,229,232,.8)}
.mobile-menu nav{width:min(100% - 48px,var(--container));margin-inline:auto;padding:18px 0 24px;display:flex;flex-direction:column;gap:14px}
.mobile-menu a{font-size:15px;color:var(--text-strong)}
.mobile-menu .mobile-cta{width:fit-content;margin-top:8px}
.hero{overflow:clip;background:#ffffff;}
.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:72px;align-items:center;min-height:540px}
.hero-content{max-width:470px;padding-top:12px}
.hero-content h1{margin:0 0 18px;font-size:clamp(34px,4vw,48px);line-height:1.16;font-weight:700;letter-spacing:-.02em;color:var(--heading)}
.hero-content p{margin:0 0 28px;font-size:14px;color:#697078;max-width:430px}
.hero-dots{display:flex;gap:8px;margin-top:56px}
.dot{width:8px;height:8px;border-radius:999px;background:#d9dde1}
.dot.active{background:var(--teal)}
.hero-visual-wrap{display:flex;justify-content:center}
.hero-collage{position:relative;width:min(100%,505px);aspect-ratio:1.36 / 1}
.hero-collage img{width:100%;height:100%;object-fit:cover}
.hero-collage::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 0 7%,#fff 7% 10%,transparent 10% 18%,#fff 18% 21%,transparent 21% 29%,#fff 29% 32%,transparent 32% 100%),linear-gradient(45deg,transparent 0 8%,#fff 8% 11%,transparent 11% 20%,#fff 20% 23%,transparent 23% 34%,#fff 34% 37%,transparent 37% 100%);mix-blend-mode:screen;opacity:.96;pointer-events:none}
.hero-collage-shape{position:absolute;background:var(--teal);z-index:-1}
.hero-collage-shape-top{top:-18px;right:12px;width:128px;height:62px;clip-path:polygon(0 0,100% 0,72% 100%,0 100%)}
.hero-collage-shape-side{right:-2px;top:95px;width:66px;height:190px;clip-path:polygon(40% 0,100% 0,100% 100%,0 100%)}
.brand-strip{display:grid;grid-template-columns:repeat(5,1fr);align-items:center;gap:36px;padding-top:28px}
.brand-strip img{max-height:42px;width:auto;max-width:100%;object-fit:contain;margin-inline:auto}
.split-layout{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.content-block h2{margin:0 0 18px;font-size:24px;line-height:1.28;font-weight:700;color:var(--heading)}
.content-block p{margin:0 0 30px;max-width:470px;font-size:14px;color:#6d747b}
.content-block.narrow{max-width:520px;justify-self:end}
.diamond-figure{position:relative;width:min(100%,470px);aspect-ratio:1 / 1}
.diamond{position:absolute;display:grid;place-items:center;text-align:center;color:#64717b;font-size:13px;line-height:1.35;font-weight:500;border-radius:16px;transform:rotate(45deg);box-shadow:0 0 0 7px var(--bg)}
.diamond-figure.large .diamond{width:100px;height:100px}
.diamond-figure.large .d-purple{top:18px;left:30px;width:74px;height:74px}
.diamond-figure.large .d-yellow{top:67px;left:104px;width:66px;height:66px}
.diamond-figure.large .d-mint{top:118px;left:155px;width:112px;height:112px;background:var(--cyan)}
.diamond-figure.large .d-blue{top:202px;left:98px;width:108px;height:108px;background:var(--blue)}
.diamond-figure.large .d-cyan{top:215px;left:217px;width:102px;height:102px;background:#8ae6dc}
.diamond-figure.large .small{top:315px;left:182px;width:94px;height:94px;background:#9ee4ca}
.diamond-figure.large .d-green{top:378px;left:90px;width:98px;height:98px;background:var(--green)}
.diamond-figure.large .right{top:245px;left:305px;width:112px;height:112px}
.diamond-figure.large .corner{top:343px;left:38px;width:84px;height:84px}
.diamond-figure.large .bottom{top:462px;left:43px;width:106px;height:106px}
.d-purple{background:var(--purple);color:transparent}.d-yellow{background:var(--yellow);color:transparent}.d-mint{background:var(--cyan)}.d-blue{background:var(--blue);color:transparent}.d-cyan{background:var(--cyan-strong)}.d-green{background:var(--green)}.d-lime{background:var(--lime);color:transparent}
.gridish{justify-self:end}
.gridish .diamond{width:112px;height:112px}
.gridish .xl{top:52px;left:112px;width:154px;height:154px;background:var(--cyan)}
.gridish .sm-top{top:35px;left:278px;width:80px;height:80px}
.gridish .sm-right{top:50px;left:355px;width:70px;height:70px}
.gridish .md-right{top:128px;left:318px;width:126px;height:126px;background:var(--cyan-strong)}
.gridish .md-bottom{top:255px;left:225px;width:142px;height:142px;background:var(--cyan)}
.gridish .left-tall{top:226px;left:28px;width:152px;height:152px;background:var(--cyan-strong)}
.gridish .bottom-left{top:343px;left:132px;width:110px;height:110px}
.gridish .bottom-right{top:333px;left:344px;width:102px;height:102px;background:var(--cyan)}
.gridish .tiny-right{top:260px;left:429px;width:52px;height:52px}
.values-copy{max-width:430px}
.value-item + .value-item{margin-top:18px}
.value-item h3{margin:0 0 6px;font-size:15px;line-height:1.35;color:var(--heading)}
.value-item p{margin:0;font-size:13px;color:#717880}
.about-grid{display:grid;grid-template-columns:204px 1fr;gap:34px;align-items:start}
.about-image-card{position:sticky;top:120px}
.about-image-card img{width:100%;aspect-ratio:1 / 1.06;object-fit:cover;border-radius:6px;filter:grayscale(.12);box-shadow:var(--shadow-soft)}
.image-accent{display:block;width:72px;height:4px;background:var(--teal);border-radius:999px;margin:10px 0 0 auto}
.about-copy h3{margin:0 0 16px;font-size:16px;color:var(--heading)}
.about-copy p{margin:0 0 14px;font-size:13px;color:#666e76}
.about-signature{font-weight:600;color:var(--heading)}
.signature-row{display:flex;justify-content:space-between;gap:24px;margin-top:28px;align-items:flex-end}
.signature-row span{display:block;font-size:12px;color:#7a8188}
.signature-name{text-align:right}
.signature-name strong{display:block;font-size:13px;color:var(--heading)}
.team-container{max-width:1280px}
.team-intro{margin-bottom:34px}
.team-intro-wide{max-width:1320px}
.team-intro-wide p{margin:0 0 18px;font-size:20px;line-height:1.42;color:#50565d;letter-spacing:.002em}
.team-intro-wide p strong{font-weight:700;color:#4d535a}
.team-readmore{display:inline-block;margin-top:-8px;font-size:14px;color:#8c9197;transition:color var(--transition)}
.team-readmore:hover,.team-readmore:focus-visible{color:var(--teal-dark)}
.slider{position:relative}
.slider-track{position:relative}
.team-slider .slide{display:none !important}
.team-slider .slide.active{display:grid !important}
.slide-set{display:none}
.slide-set.active{display:block}
.team-slider-single{max-width:1320px}
.team-card{position:relative;overflow:hidden}
.team-card-single{grid-template-columns:160px 1fr;align-items:center;gap:28px;background:#d9f4f2;border-radius:32px;padding:24px 34px 24px 18px;min-height:225px;box-shadow:none}
.team-card-single .team-card-media{position:relative;z-index:2}
.team-card-single .team-card-media img{width:160px;height:160px;border-radius:18px;object-fit:cover;display:block}
.team-card-single .team-card-copy{max-width:900px;position:relative;z-index:2}
.team-card-single .team-card-copy h3{margin:0 0 2px;font-size:21px;line-height:1.2;font-weight:600;color:#565d64}
.team-card-single .team-role{margin:0 0 4px;font-size:20px;line-height:1.35;font-weight:600;color:#5d646b}
.team-card-single .team-quote{margin:0 0 8px;font-size:18px;line-height:1.4;font-weight:600;color:#4e555c}
.team-card-single .team-card-copy p:last-child{margin:0;font-size:17px;line-height:1.55;color:#596067}
.team-corner{position:absolute;background:#58d0cc;z-index:1}
.team-corner-top{top:-18px;right:78px;width:90px;height:90px;clip-path:polygon(0 0,100% 0,56% 56%,0 56%);opacity:.85}
.team-corner-right{top:0;right:0;width:118px;height:128px;clip-path:polygon(32% 0,100% 0,100% 100%,69% 100%,0 32%);opacity:.95}
.slider-dots{display:flex;justify-content:center;gap:8px;margin-top:18px}
.slider-dots button{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:#d7dce0;transition:transform var(--transition),background-color var(--transition)}
.slider-dots button.active{background:var(--teal);transform:scale(1.1)}
.team-dots{margin-top:18px;position:relative;z-index:5}
.team-dots button{width:10px;height:10px;background:#c5c9cd}
.team-dots button.active{background:#59d1ce}
.centered-cta{display:flex;justify-content:center;margin-top:26px}
.team-cta{margin-top:44px}
.team-cta .btn{min-width:330px;min-height:70px;border-radius:16px;font-size:20px;font-weight:500;padding:18px 34px}
.team-cta .btn::before{left:-14px;bottom:-14px;width:60px;height:38px;border-width:4px;border-radius:0 0 0 18px}
.team-cta .btn::after{right:-14px;top:-14px;width:60px;height:38px;border-width:4px;border-radius:0 18px 0 0}
.two-up .slide-set.active{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.three-up .slide-set.active{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.testimonial-card{background:#f0f0f0;border-radius:16px;padding:24px 26px;min-height:184px;box-shadow:inset 0 0 0 1px rgba(227,229,232,.9)}
.testimonial-head{display:flex;align-items:start;justify-content:space-between;gap:14px;margin-bottom:12px}
.testimonial-head img{max-width:56px;max-height:28px;object-fit:contain}
.testimonial-head h3{margin:0 0 4px;font-size:15px;color:var(--heading)}
.testimonial-head p{margin:0;font-size:12px;color:#7a8188}
.testimonial-card>p{margin:0;font-size:13px;color:#666e76}
.insight-card{display:flex;flex-direction:column;background:#f0f0f0;border-radius:16px;overflow:hidden;min-height:332px;box-shadow:inset 0 0 0 1px rgba(227,229,232,.92)}
.insight-image{position:relative;display:block;aspect-ratio:1.56 / 1;overflow:hidden}
.insight-image::after{content:"";position:absolute;inset:8px;border:2px solid var(--teal);border-radius:10px;opacity:.4;pointer-events:none}
.insight-image img{width:100%;height:100%;object-fit:cover;transition:transform 320ms ease}
.insight-card:hover .insight-image img{transform:scale(1.04)}
.insight-body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:16px 18px 18px}
.insight-body h3{margin:0 0 8px;font-size:15px;line-height:1.35;color:var(--heading)}
.insight-body p{margin:0 0 16px;font-size:12px;color:#6f767d}
.ghost-link{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;min-width:92px;min-height:30px;padding:6px 14px;border:1px solid #9adfdd;border-radius:999px;font-size:11px;color:var(--teal-dark);transition:background-color var(--transition),color var(--transition),border-color var(--transition)}
.ghost-link:hover,.ghost-link:focus-visible{background:var(--teal);color:#fff;border-color:var(--teal)}
.contact-shell{background:#efefef;padding:42px 0 46px}
.contact-grid{display:grid;grid-template-columns:1fr .92fr;gap:42px;align-items:start}
.form-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;max-width:390px;margin:18px 0 24px}
.form-progress span{display:block;height:3px;border-radius:999px;background:#d9b4e2;opacity:.55}
.form-progress .active{background:var(--purple);opacity:1}
.contact-form{max-width:430px}
.contact-form h3{margin:0 0 14px;font-size:14px;color:var(--heading)}
.field + .field{margin-top:12px}
.field input{width:100%;height:42px;padding:0 14px;border:1px solid #d6dbe0;border-radius:8px;background:#fff;color:var(--text-strong);outline:none;transition:border-color var(--transition),box-shadow var(--transition)}
.field input::placeholder{color:#8c9299}
.field input:focus{border-color:var(--teal);box-shadow:0 0 0 4px rgba(104,216,214,.12)}
.field-label{margin:4px 0 10px;font-size:12px;font-weight:600;color:var(--heading)}
.choice-list{display:grid;gap:8px}
.choice-pill{position:relative;display:block}
.choice-pill input{position:absolute;opacity:0;inset:0;pointer-events:none}
.choice-pill span{display:flex;align-items:center;justify-content:center;min-height:34px;padding:8px 14px;border-radius:8px;background:#fff;border:1px solid #dce1e6;font-size:12px;color:#667078;transition:background-color var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition)}
.choice-pill input:checked + span{background:#eefdfc;border-color:#8ae6dc;color:#48bdbc;box-shadow:inset 0 0 0 1px rgba(104,216,214,.3)}
.submit-btn{margin-top:16px;width:100%;height:34px;border:0;border-radius:999px;background:var(--teal);color:#fff;font-size:12px;font-weight:600;transition:transform var(--transition),background-color var(--transition)}
.submit-btn:hover,.submit-btn:focus-visible{background:var(--teal-dark);transform:translateY(-1px)}
.contact-image-frame{position:relative;border-radius:10px;overflow:hidden;width:100%;max-width:470px;margin-left:auto;box-shadow:var(--shadow-card)}
.contact-image-frame::after{content:"";position:absolute;inset:auto 0 0 auto;width:34px;height:34px;border-right:3px solid var(--teal);border-bottom:3px solid var(--teal);border-radius:0 0 8px 0}
.contact-image-frame img{width:100%;aspect-ratio:1.18 / 1;object-fit:cover}
.site-footer{background:var(--footer);color:#d5d8dc}
.footer-main{padding:42px 0 34px}
.footer-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr .9fr;gap:34px}
.footer-logo .logo-text{font-size:34px}
.footer-brand p,.footer-brand small,.footer-links li,.footer-links a{font-size:12px;color:#d8dce0}
.footer-brand p{max-width:300px;margin:0 0 16px}
.footer-address{line-height:1.8}
.footer-links h3{margin:0 0 14px;font-size:13px;color:#4ecdc4}
.footer-links ul{list-style:none;padding:0;margin:0}
.footer-links li + li{margin-top:9px}
.footer-links a:hover,.footer-links a:focus-visible{color:var(--teal)}
.footer-certification{background:#f7f7f7;color:#4f555c;border-top:1px solid rgba(255,255,255,.07)}
.cert-bar{display:grid;grid-template-columns:70px 1fr;gap:18px;align-items:start;padding:18px 0 24px}
.cert-icon{width:50px;height:50px;border-radius:999px;border:2px solid #4d535a;display:grid;place-items:center;font-weight:700}
.cert-copy strong{display:block;margin-bottom:6px;font-size:11px;line-height:1.5;color:#4d535a;text-transform:uppercase}
.cert-copy p{margin:0 0 4px;font-size:10px;line-height:1.7;color:#70767d}
.form-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(18px);background:#24313f;color:#fff;font-size:13px;padding:12px 16px;border-radius:999px;box-shadow:0 12px 30px rgba(36,49,63,.24);opacity:0;pointer-events:none;transition:opacity var(--transition),transform var(--transition);z-index:100}
.form-toast.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}
@media (max-width:1180px){.hero-grid,.split-layout,.contact-grid{gap:48px}.brand-strip{gap:24px}.diamond-figure.large,.gridish{transform:scale(.9);transform-origin:center}}
@media (max-width:1024px){:root{--header-h:76px}.main-nav,.social-links,.header-actions .btn{display:none}.mobile-toggle{display:inline-flex}.mobile-menu.is-open{display:block}.header-inner{grid-template-columns:1fr auto}.hero-grid,.split-layout,.contact-grid,.about-grid,.footer-grid{grid-template-columns:1fr}.hero-grid{min-height:auto;padding-top:18px}.hero-content{max-width:100%;order:2}.hero-visual-wrap{order:1}.content-block.narrow,.gridish,.contact-image-frame{justify-self:start}.about-image-card{position:static;max-width:220px}.signature-row{flex-direction:column;align-items:flex-start}.signature-name{text-align:left}.brand-strip{grid-template-columns:repeat(3,1fr);row-gap:24px}.diamond-figure.large,.gridish{margin-inline:auto;transform:scale(1)}.contact-image-frame{max-width:560px;margin-left:0}.footer-grid{gap:24px}}
@media (max-width:820px){.section{padding:58px 0}.section-spacious{padding:20px 0 32px}.container{width:min(100% - 32px,var(--container))}.hero-content h1{font-size:31px}.content-block h2,.section-heading h2{font-size:20px}.heading-row{flex-direction:column;align-items:flex-start}.two-up .slide-set.active,.three-up .slide-set.active{grid-template-columns:1fr}.team-card-single{grid-template-columns:1fr;padding:22px 20px;border-radius:24px}.team-card-single .team-card-media img{width:110px;height:110px;border-radius:14px}.team-card-single .team-role{font-size:16px}.team-card-single .team-quote,.team-card-single .team-card-copy p:last-child,.team-intro-wide p{font-size:15px}.team-corner-top{width:62px;height:62px;right:58px}.team-corner-right{width:82px;height:92px}.team-cta .btn{min-width:250px;min-height:58px;font-size:17px}.brand-strip{grid-template-columns:repeat(2,1fr)}.contact-shell{padding:30px 0 34px}}
@media (max-width:640px){.logo-text,.footer-logo .logo-text{font-size:28px}.hero-collage{aspect-ratio:1.1 / 1}.hero-collage-shape-top{width:90px;height:42px;right:8px}.hero-collage-shape-side{width:46px;height:136px;top:72px}.btn,.btn-sm-wide{min-width:150px;min-height:44px}.hero-dots{margin-top:30px}.diamond-figure.large,.gridish{width:100%;height:auto;aspect-ratio:1 / 1;transform:scale(.82)}.testimonial-card,.insight-card,.team-card{min-height:auto}.cert-bar{grid-template-columns:1fr}}
@media (max-width:480px){.container{width:min(100% - 24px,var(--container))}.hero-content h1{font-size:27px}.hero-content p,.content-block p,.about-copy p,.team-intro p,.testimonial-card>p{font-size:13px}.brand-strip{grid-template-columns:1fr;gap:20px}.diamond-figure.large,.gridish{transform:scale(.72);margin-left:-18px}.contact-form,.contact-image-frame{max-width:100%}.btn::before,.btn::after{width:28px;height:18px;border-width:2px}.team-intro-wide p{font-size:14px;line-height:1.5}.team-card-single{gap:16px;padding:18px 16px}.team-card-single .team-card-media img{width:92px;height:92px}.team-card-single .team-card-copy h3{font-size:18px}.team-card-single .team-role{font-size:14px}.team-card-single .team-quote,.team-card-single .team-card-copy p:last-child{font-size:13px}.team-cta .btn{min-width:210px;width:100%;font-size:16px}}

.logo-img{
  width:250px;
  height:120px;
  object-fit:cover;
  display:block;
}

/* === HERO CAROUSEL REVISION === */
.hero-slider{position:relative}
.hero-slider .slide{display:none}
.hero-slider .slide.active{display:block}
.hero-slider .slider-track{position:relative}
.hero-slider .hero-dots{justify-content:flex-start;margin-top:28px}
.hero-slider .hero-dots button{width:10px;height:10px;border:0;border-radius:999px;background:#d5dade}
.hero-slider .hero-dots button.active{background:var(--teal)}

/* === LOGO MARQUEE REVISION === */
.brand-strip{display:none !important}
.brand-marquee{position:relative;overflow:hidden;width:100%;padding-top:28px}
.brand-track{display:flex;align-items:center;gap:72px;width:max-content;animation:brandScroll 28s linear infinite}
.brand-track img{flex:0 0 auto;max-height:48px;width:auto;max-width:180px;object-fit:contain}
.brand-marquee:hover .brand-track{animation-play-state:paused}
@keyframes brandScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

@media (max-width:1024px){
  .brand-track{gap:52px}
  .brand-track img{max-height:42px;max-width:160px}
}
@media (max-width:640px){
  .brand-marquee{padding-top:22px}
  .brand-track{gap:38px}
  .brand-track img{max-height:34px;max-width:130px}
}

#contact {
  background-color: #efefef;
}


/* Hizmetler dropdown */
.main-nav .has-dropdown {
  position: relative;
}

.main-nav .dropdown-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.main-nav .dropdown-arrow {
  font-size: 12px;
  line-height: 1;
  transform: rotate(180deg);
  transition: transform 0.22s ease;
}

.main-nav .has-dropdown:hover .dropdown-arrow,
.main-nav .has-dropdown:focus-within .dropdown-arrow {
  transform: rotate(0deg);
}

.main-nav .dropdown-menu {
  position: absolute;
 top: calc(100% + 10px);
  left: 0;
  min-width: 260px;
  display: block;       /* en kritik değişiklik */
  margin: 0;
  padding: 14px 0;
  list-style: none;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08);
  border: 1px solid #ececec;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity 0.22s ease, transform 0.22s ease, visibility 0.22s ease;
  z-index: 100;
}

.main-nav .dropdown-menu li {
  margin: 0;
}

.main-nav .dropdown-menu a {
  display: block;
  padding: 12px 20px;
  font-size: 18px;
  line-height: 1.3;
  color: #5b6168;
  white-space: nowrap;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.main-nav .dropdown-menu a:hover {
  background: #f7f7f7;
  color: #4b5158;
}

.main-nav .has-dropdown:hover .dropdown-menu,
.main-nav .has-dropdown:focus-within .dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.mobile-dropdown {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.mobile-dropdown-toggle {
  background: transparent;
  border: 0;
  padding: 0;
  text-align: left;
  font-size: 15px;
  color: var(--text-strong);
  cursor: pointer;
}

.mobile-dropdown-menu {
  display: none;
  flex-direction: column;
  gap: 8px;
  padding-left: 12px;
}

.mobile-dropdown-menu a {
  font-size: 14px;
  color: #6a7178;
}

.mobile-dropdown.is-open .mobile-dropdown-menu {
  display: flex;
}


.dropdown-menu li {
  display: block;
  width: 100%;
}

.dropdown-menu li a {
  display: block;
  padding: 12px 20px;
  font-size: 16px;
  color: #5b6168;
}

.dropdown-menu li a:hover {
  background: #f5f7f8;
}

/* =========================
   MOBILE RESPONSIVE FIXES
   Scope: only mobile/tablet corrections
   ========================= */

body{
  background: var(--bg);
  color: var(--text);
  overflow-x: hidden;
}

img{
  max-width: 100%;
  height: auto;
}

@media (max-width: 1024px){
  .container{
    width: min(100% - 28px, var(--container));
  }

  .header-inner{
    min-height: 72px;
    grid-template-columns: 1fr auto;
    gap: 12px;
  }

  .logo{
    min-height: auto;
  }

  .logo-img{
    width: 140px !important;
    height: auto !important;
    max-width: 100%;
  }

  .mobile-toggle{
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .mobile-menu{
    background: #fff;
  }

  .mobile-menu nav{
    width: min(100% - 28px, var(--container));
    padding: 14px 0 18px;
    gap: 12px;
  }

  .mobile-menu a,
  .mobile-dropdown-toggle{
    font-size: 15px;
    line-height: 1.35;
  }

  .mobile-dropdown-menu{
    padding-left: 10px;
    gap: 8px;
  }

  .mobile-dropdown-menu a{
    font-size: 14px;
    line-height: 1.35;
    color: #667078;
  }

  .hero{
    overflow: hidden;
  }

  .hero-slider .slide.active{
    display: block !important;
  }

  .hero-grid{
    grid-template-columns: 1fr;
    gap: 18px;
    min-height: auto;
    align-items: start;
  }

  .hero-content{
    order: 2;
    max-width: 100%;
    padding-top: 0;
  }

  .hero-content h1{
    font-size: clamp(26px, 8vw, 44px);
    line-height: 1.08;
    margin-bottom: 14px;
    max-width: 100%;
  }

  .hero-content p{
    font-size: 14px;
    line-height: 1.65;
    max-width: 100%;
    margin-bottom: 20px;
  }

  .hero-visual-wrap{
    order: 1;
    justify-content: center;
  }

  .hero-collage{
    width: 100%;
    max-width: 420px;
    aspect-ratio: 1.12 / 1;
    margin-inline: auto;
  }

  .hero-dots,
  .hero-slider .hero-dots{
    margin-top: 18px;
    justify-content: flex-start;
  }

  .btn,
  .btn-sm,
  .btn-sm-wide{
    min-height: 42px;
  }

  .brand-marquee{
    padding-top: 18px;
  }

  .brand-track{
    gap: 28px;
  }

  .brand-track img{
    max-height: 30px;
    max-width: 120px;
  }

  .split-layout{
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .content-block.narrow,
  .gridish,
  .contact-image-frame{
    justify-self: stretch;
  }

  .diamond-figure.large,
  .gridish{
    transform: scale(.82);
    transform-origin: top center;
    margin: 0 auto -48px;
    width: 100%;
    max-width: 360px;
  }

  .section{
    padding: 44px 0;background:#fdfdfd;
  }

  .section-spacious{
    padding: 10px 0 26px;
  }

  .section-heading{
    margin-bottom: 18px;
  }

  .section-heading h2{
    font-size: 20px;
  }

  .content-block h2{
    font-size: 20px;
    margin-bottom: 12px;
  }

  .content-block p,
  .value-item p,
  .about-copy p,
  .team-intro-wide p,
  .testimonial-card > p{
    font-size: 13px;
    line-height: 1.7;
  }

  .about-grid{
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .about-image-card{
    position: static;
    max-width: 180px;
  }

  .image-accent{
    margin-left: 0;
    width: 56px;
  }

  .signature-row{
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .signature-name{
    text-align: left;
  }

  .team-container{
    max-width: 100%;
  }

  .team-intro-wide{
    max-width: 100%;
  }

  .team-card-single{
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 18px 16px;
    border-radius: 22px;
    min-height: auto;
  }

  .team-card-single .team-card-media img{
    width: 94px;
    height: 94px;
    border-radius: 14px;
  }

  .team-card-single .team-card-copy{
    max-width: 100%;
  }

  .team-card-single .team-card-copy h3{
    font-size: 18px;
  }

  .team-card-single .team-role{
    font-size: 14px;
    line-height: 1.45;
  }

  .team-card-single .team-quote,
  .team-card-single .team-card-copy p:last-child{
    font-size: 13px;
    line-height: 1.65;
  }

  .team-corner-top{
    width: 58px;
    height: 58px;
    right: 44px;
    top: -10px;
  }

  .team-corner-right{
    width: 70px;
    height: 78px;
  }

  .team-cta{
    margin-top: 22px;
  }

  .team-cta .btn{
    width: 100%;
    min-width: 0;
    min-height: 50px;
    font-size: 15px;
    padding: 14px 18px;
  }

  .two-up .slide-set.active,
  .three-up .slide-set.active{
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .testimonial-card{
    padding: 18px 16px;
    min-height: auto;
  }

  .testimonial-head{
    gap: 10px;
  }

  .testimonial-head h3{
    font-size: 14px;
  }

  .testimonial-head p{
    font-size: 11px;
  }

  .testimonial-head img{
    max-width: 52px;
    max-height: 24px;
  }

  .insight-card{
    min-height: auto;
  }

  .insight-body{
    padding: 14px 14px 16px;
  }

  .insight-body h3{
    font-size: 14px;
  }

  .insight-body p{
    font-size: 12px;
    line-height: 1.6;
  }

  .heading-row{
    align-items: stretch;
  }

  .heading-row .btn{
    width: 100%;
  }

  .contact-shell{
    padding: 24px 0 28px;
  }

  .contact-grid{
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .contact-form{
    max-width: 100%;
  }

  .form-progress{
    max-width: 100%;
    margin: 14px 0 18px;
  }

  .choice-list{
    gap: 7px;
  }

  .choice-pill span{
    min-height: 38px;
    font-size: 12px;
    text-align: center;
  }

  .contact-image-frame{
    max-width: 100%;
    margin-left: 0;
  }

  .footer-grid{
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .footer-main{
    padding: 28px 0 24px;
  }

  .footer-brand p{
    max-width: 100%;
  }

  .footer-links ul{
    margin-top: 8px;
  }

  .cert-bar{
    grid-template-columns: 1fr;
    gap: 12px;
  }
}

@media (max-width: 640px){
  .container{
    width: min(100% - 20px, var(--container));
  }

  .header-inner{
    min-height: 64px;
  }

  .logo-img{
    width: 170px !important;
  }

  .hero-content h1{
    font-size: 24px;
  }

  .hero-content p{
    font-size: 13px;
  }

  .hero-collage{
    max-width: 100%;
    aspect-ratio: 1 / 1;
  }

  .diamond-figure.large,
  .gridish{
    transform: scale(.68);
    margin-bottom: -84px;
    max-width: 320px;
  }

  .content-block p{
    margin-bottom: 18px;
  }

  .team-dots,
  .slider-dots{
    margin-top: 14px;
  }

  .contact-form-side .section-heading p{
    max-width: 100%;
  }
}

@media (max-width: 420px){
  .logo-img{
    width: 170px !important;
  }

  .hero-content h1{
    font-size: 22px;
  }

  .hero-content p,
  .content-block p,
  .about-copy p,
  .team-intro-wide p,
  .testimonial-card > p{
    font-size: 12px;
  }

  .diamond-figure.large,
  .gridish{
    transform: scale(.60);
    margin-bottom: -108px;
    max-width: 290px;
  }

  .team-card-single{
    padding: 16px 14px;
  }

  .btn::before,
  .btn::after{
    width: 24px;
    height: 16px;
    border-width: 2px;
  }
}


/* === MOBILE FIX: diamond figure left align (added by waffle) === */
@media (max-width: 1024px){
  .section-solutions .split-layout{
    align-items: start;
  }

  .section-solutions .diamond-figure.large{
    transform: scale(.82) !important;
    transform-origin: top left !important;
    margin: 0 0 -48px 0 !important;
    max-width: 360px !important;
    justify-self: start !important;
  }
}

@media (max-width: 640px){
  .section-solutions .diamond-figure.large{
    transform: scale(.68) !important;
    transform-origin: top left !important;
    margin: 0 0 -84px 0 !important;
    max-width: 320px !important;
    justify-self: start !important;
  }
}

@media (max-width: 420px){
  .section-solutions .diamond-figure.large{
    transform: scale(.60) !important;
    transform-origin: top left !important;
    margin: 0 0 -18px 0 !important;
    max-width: 290px !important;
    justify-self: start !important;
  }
}


/* === MOBILE FIX 2: diamond block / text overlap spacing === */
@media (max-width: 1024px){
  .section-solutions .content-block.narrow{
    margin-top: 140px !important;
  }
}

@media (max-width: 640px){
  .section-solutions .content-block.narrow{
    margin-top: 110px !important;
  }
}

@media (max-width: 420px){
  .section-solutions .content-block.narrow{
    margin-top: 95px !important;
  }
}

/* =========================
   KVKK Modal
   ========================= */
.kvkk-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
}

.kvkk-modal.is-open {
  display: block;
}

.kvkk-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(25, 30, 38, 0.48);
  backdrop-filter: blur(2px);
}

.kvkk-modal__dialog {
  position: relative;
  width: min(100% - 32px, 900px);
  max-height: min(86vh, 760px);
  margin: 60px auto;
  background: #fff;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.18);
  z-index: 2;
}

.kvkk-modal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24px 24px 20px;
  border-bottom: 1px solid #eceff3;
}

.kvkk-modal__header h2 {
  margin: 0;
  font-size: 20px;
  line-height: 1.2;
  color: #111827;
}

.kvkk-modal__close {
  border: 0;
  background: transparent;
  font-size: 34px;
  line-height: 1;
  color: #6b7280;
  cursor: pointer;
  padding: 0;
}

.kvkk-modal__body {
  display: grid;
  grid-template-columns: 240px 1fr;
  min-height: 520px;
}

.kvkk-modal__sidebar {
  border-right: 1px solid #eceff3;
  padding: 18px 16px;
  background: #fafafa;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.kvkk-tab {
  width: 100%;
  text-align: left;
  border: 0;
  background: transparent;
  padding: 14px 14px;
  border-radius: 10px;
  font-size: 16px;
  color: #111827;
  cursor: pointer;
  transition: background-color .22s ease, color .22s ease;
}

.kvkk-tab:hover {
  background: #f1f5f9;
}

.kvkk-tab.active {
  background: #58cfc9;
  color: #fff;
}

.kvkk-modal__content {
  padding: 24px 22px 24px 22px;
  overflow: auto;
}

.kvkk-panel {
  display: none;
}

.kvkk-panel.active {
  display: block;
}

.kvkk-panel h3 {
  margin: 0 0 14px;
  font-size: 24px;
  line-height: 1.2;
  color: #4b5158;
}

.kvkk-panel p {
  margin: 0 0 14px;
  font-size: 16px;
  line-height: 1.75;
  color: #667078;
}

body.kvkk-lock {
  overflow: hidden;
}

@media (max-width: 768px) {
  .kvkk-modal__dialog {
    width: min(100% - 20px, 900px);
    margin: 24px auto;
    max-height: calc(100vh - 48px);
    border-radius: 14px;
  }

  .kvkk-modal__body {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .kvkk-modal__sidebar {
    border-right: 0;
    border-bottom: 1px solid #eceff3;
    padding: 14px;
  }

  .kvkk-tab {
    font-size: 14px;
    padding: 12px 12px;
  }

  .kvkk-panel h3 {
    font-size: 20px;
  }

  .kvkk-panel p {
    font-size: 14px;
    line-height: 1.7;
  }
}
