@property --about-current { syntax:"<number>"; inherits:false; initial-value:1; }
:root { --decode-orange:#f4a300; --decode-turquoise:#61b8c3; --decode-grey:#666a72; --decode-wash:#f9f9fb; }
.home-page { color:var(--decode-grey); background:#fff; font-family:Arial,Helvetica,sans-serif; line-height:1.45; }
.home-page * { box-sizing:border-box; }
.home-page a { color:inherit; }
.home-shell { width:min(1200px,calc(100% - 48px)); margin-inline:auto; }
.home-main { width:100%; padding:0; overflow:hidden; }
.home-main h1,.home-main h2,.home-main h3 { margin-top:0; }

.home-header { position:sticky; top:0; z-index:20; background:#fff; box-shadow:1px 1px 5px rgba(102,106,114,.55); }
.home-header__inner { width:min(1200px,calc(100% - 48px)); height:100px; margin:auto; display:flex; align-items:center; gap:42px; }
.home-logo { width:220px; flex:0 0 auto; line-height:0; }
.home-logo img { display:block; width:220px; height:auto; }
.home-nav { display:flex; align-items:center; gap:34px; margin-left:auto; font-size:18px; }
.home-nav a { text-decoration:none; white-space:nowrap; }
.home-nav a:hover { color:var(--decode-orange); }
.home-nav__home { color:var(--decode-orange)!important; font-size:25px; }
.home-mobile-actions,.mobile-menu { display:none; }
.language-switcher { position:relative; white-space:nowrap; }
.language-switcher summary { cursor:pointer; list-style:none; }
.language-switcher summary::-webkit-details-marker { display:none; }
.language-switcher>div { position:absolute; right:0; top:calc(100% + 18px); display:grid; min-width:170px; padding:10px; background:#fff; border:1px solid #e5e5e7; box-shadow:0 5px 12px rgba(0,0,0,.16); }
.language-switcher>div a { padding:7px 9px; }
.language-switcher [aria-current=page] { color:var(--decode-orange); }

.hero { min-height:480px; padding:28px 0 22px; background:var(--decode-wash); }
.hero__grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; min-height:420px; }
.hero__copy h1 { font-size:27px; line-height:2; letter-spacing:1px; font-weight:700; }
.hero__privacy { display:flex; align-items:center; gap:10px; margin-top:85px; font-size:22px; font-weight:700; white-space:nowrap; }
.hero__privacy::before,.hero__privacy::after { content:""; height:1px; flex:1; border-top:1px dotted #8d8f94; }
.hero__visual { position:relative; padding-left:20px; }
.hero__visual::after { content:""; position:absolute; inset:9% 0 0 4%; pointer-events:none; background:repeating-linear-gradient(30deg,transparent 0 119px,rgba(255,255,255,.95) 120px 123px,transparent 124px 240px),repeating-linear-gradient(150deg,transparent 0 119px,rgba(255,255,255,.95) 120px 123px,transparent 124px 240px); opacity:.72; }
.hero__visual img { display:block; width:600px; max-width:100%; height:auto; clip-path:polygon(0 5%,50% 5%,55% 0,100% 0,100% 78%,91% 78%,83% 100%,66% 88%,52% 100%,40% 89%,23% 100%,14% 80%,0 80%); }

.sectors { padding:64px 0 54px; text-align:center; }
.sectors h2 { font-size:27px; }
.sector-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:34px; margin-top:34px; }
.sector { display:grid; justify-items:center; gap:8px; font-size:16px; }
.sector-icon { display:grid; place-items:center; width:86px; height:86px; border-radius:50%; color:#fff; background:var(--decode-turquoise); }
.sector-icon svg { width:54px; height:54px; fill:none; stroke:currentColor; stroke-width:4; stroke-linecap:round; stroke-linejoin:round; }

.section-wash { background:var(--decode-wash); }
.ruled-title { display:flex; align-items:center; gap:12px; color:var(--decode-grey); font-size:28px; text-align:center; }
.ruled-title::before,.ruled-title::after { content:""; height:1px; flex:1; border-top:1px dotted #8d8f94; }
.ruled-title--orange::before,.ruled-title--orange::after { border-color:var(--decode-orange); }
.ruled-title span { flex:0 0 auto; }

.glance { padding:42px 0 48px; text-align:center; }
.glance-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; margin-top:32px; }
.glance-card { position:relative; min-height:255px; padding:48px 38px 34px; background:#fff; color:#55585e; }
.round-icon { display:grid; place-items:center; width:39px; height:39px; border-radius:50%; color:#fff; background:var(--decode-orange); font-weight:700; }
.glance-card>.round-icon { position:absolute; top:-19px; left:calc(50% - 19px); }
.glance-card h3 { color:#28292c; font-size:23px; font-weight:400; }
.glance-card p { min-height:88px; font-size:16px; }
.glance-card a { text-decoration:none; }
.pill { display:flex; align-items:stretch; width:max-content; max-width:100%; margin:46px auto 0; overflow:hidden; border-radius:24px; color:#fff!important; background:var(--decode-turquoise); padding-left:28px; text-decoration:none; }
.pill span { display:grid; place-items:center; min-width:45px; min-height:42px; margin-left:15px; border-left:1px solid #fff; }

.privacy { padding:28px 0 40px; color:#fff; background:var(--decode-turquoise); text-align:center; }
.privacy h2 { margin-bottom:30px; font-size:28px; }
.privacy-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.privacy-grid>div { min-height:130px; padding:22px 12px 14px; border:1px solid #fff; }
.privacy-grid strong { display:block; font-size:42px; font-weight:400; line-height:1; }
.privacy-grid strong span { padding-right:7px; font-size:36px; }
.privacy-grid>div>span { display:block; margin-top:12px; font-size:18px; }

.feature { padding:75px 0 70px; }
.feature--white { background:#fff; }
.feature-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; margin-top:58px; }
.feature-grid--reverse .feature-copy { order:1; }
.feature-grid--reverse .feature-media { order:2; }
.feature-media { display:grid; align-items:center; min-height:410px; margin:0; overflow:hidden; border-radius:7px; background:#fff; box-shadow:3px 5px 7px rgba(55,59,65,.55); }
.feature-media img { display:block; width:100%; height:auto; max-height:470px; object-fit:contain; }
.feature-copy h3 { color:#27282b; font-size:28px; line-height:1.25; }
.checks { display:grid; gap:14px; padding:0; margin:28px 0 22px; list-style:none; color:#303237; }
.checks li { position:relative; padding-left:39px; }
.checks li::before { content:"✓"; position:absolute; left:0; top:-2px; display:grid; place-items:center; width:27px; height:27px; border-radius:50%; color:#fff; background:var(--decode-orange); font-weight:700; }
.source-label { display:flex; align-items:center; min-height:96px; padding:18px 0; border-block:1px dotted var(--decode-orange); color:#6d7077; font-size:27px; }
.source-label .round-icon { flex:0 0 39px; margin-right:64px; }
.source-label>span:last-child { min-width:0; overflow-wrap:anywhere; }
.source-logos { display:flex; align-items:center; justify-content:center; gap:35px; min-height:72px; padding:10px; }
.source-logos img { width:auto; max-width:150px; max-height:42px; object-fit:contain; }
.source-logos--four { gap:22px; }

.blog { padding:78px 0 72px; background:#fff; }
.post-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:38px; margin-top:68px; }
.post-card { display:flex; flex-direction:column; min-height:575px; overflow:hidden; border:1px solid #e5e5e7; border-radius:10px; color:#6a6d74; }
.post-card h3 { min-height:112px; padding:14px 18px 0; color:#666a72; font-size:21px; line-height:1.15; text-align:center; }
.post-card img { width:calc(100% - 10px); height:110px; margin:0 5px 12px; object-fit:cover; border-radius:8px; }
.post-card>p { padding-inline:20px; }
.post-card>p:not(.post-meta) { min-height:82px; font-size:16px; }
.post-card .post-meta { margin:0; padding-block:10px; border-top:1px dotted var(--decode-orange); font-size:13px; text-align:center; }
.post-card>a { margin-top:auto; padding:12px; color:#fff; background:var(--decode-turquoise); font-weight:700; text-align:center; text-decoration:none; text-transform:uppercase; }

.about { position:relative; padding:52px 0 68px; color:var(--decode-grey); background:var(--decode-orange); text-align:center; }
.about::before { content:""; position:absolute; top:-34px; left:0; width:100%; height:35px; background:var(--decode-orange); clip-path:ellipse(25% 100% at 50% 100%); }
.about h2 { color:#fff; font-size:28px; }
.about-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:30px; margin-top:86px; }
.about-grid>.about-stat { display:grid; justify-items:center; align-content:start; gap:24px; }
.about-ring { --about-current:var(--about-target); position:relative; display:grid; place-items:center; width:150px; height:150px; border-radius:50%; background:conic-gradient(var(--decode-grey) calc(var(--about-current) * 1turn),var(--decode-wash) 0); }
.about-ring::before { content:""; position:absolute; inset:8px; border-radius:50%; background:var(--decode-orange); }
.about-value { position:relative; z-index:1; color:var(--decode-grey); font-size:33px; font-weight:400; font-variant-numeric:tabular-nums; line-height:1; }
.about-stat>span { min-height:48px; font-size:16px; }
.about--will-animate .about-ring { --about-current:0; }
.about--will-animate.about--animated .about-ring { --about-current:var(--about-target); transition:--about-current 1s ease-out; }

.home-footer { min-height:330px; padding:54px 24px; background:var(--decode-wash); text-align:center; }
.home-footer>img { display:none; width:200px; height:auto; margin:0 auto 22px; }
.home-footer nav { display:flex; justify-content:center; gap:38px; font-size:17px; }
.home-footer nav a { color:var(--decode-grey); text-decoration:none; }
.home-footer nav a:hover { color:var(--decode-orange); }
.home-footer p { font-size:13px; }
.home-footer .socials { margin-top:30px; font-size:24px; font-weight:700; }

@media (max-width:700px) {
  .home-shell { width:calc(100% - 56px); }
  .home-header__inner { width:calc(100% - 16px); height:43px; gap:10px; }
  .home-logo,.home-logo img { width:212px; }
  .home-nav { display:none; }
  .home-mobile-actions { display:flex; align-items:center; gap:27px; margin-left:auto; }
  .mail-link { display:grid; place-items:center; width:39px; height:39px; border-radius:50%; color:#fff!important; background:var(--decode-orange); font-size:25px; text-decoration:none; }
  .menu-button { display:grid; gap:5px; width:38px; padding:0; border:0; background:transparent; }
  .menu-button span { display:block; height:5px; background:var(--decode-grey); }
  .mobile-menu { position:absolute; top:43px; right:0; display:none; width:240px; padding:12px; background:#fff; box-shadow:0 5px 8px rgba(0,0,0,.2); }
  .mobile-menu--open { display:grid; }
  .mobile-menu a { padding:9px; text-decoration:none; }
  .hero { min-height:700px; padding-top:62px; }
  .hero__grid { display:flex; flex-direction:column; min-height:0; }
  .hero__grid { align-items:stretch; }
  .hero__copy { width:100%; min-width:0; }
  .hero__copy h1 { font-size:24px; line-height:2.08; letter-spacing:.7px; }
  .hero__privacy { margin-top:60px; font-size:21px; text-align:center; white-space:normal; }
  .hero__privacy::before,.hero__privacy::after { flex-basis:4px; }
  .hero__visual { order:2; margin:18px -22px 0; padding:0; }
  .hero__visual::after { background-size:120px 120px; }
  .hero__visual img { width:100%; }
  .sectors { padding:66px 0 68px; }
  .sectors h2 { font-size:25px; line-height:1.3; }
  .sector-grid { grid-template-columns:repeat(2,1fr); gap:43px 54px; margin-top:36px; }
  .sector-icon { width:83px; height:83px; }
  .ruled-title { font-size:25px; line-height:1.25; }
  .glance { padding:54px 0 40px; }
  .glance-grid { grid-template-columns:1fr; gap:50px; margin-top:48px; }
  .glance-card { min-height:256px; padding:52px 20px 30px; }
  .glance-card h3 { font-size:23px; }
  .glance-card p { min-height:0; font-size:16px; }
  .pill { margin-top:42px; font-size:13px; text-align:center; }
  .privacy { padding:12px 0 0; }
  .privacy h2 { font-size:26px; }
  .privacy-grid { grid-template-columns:1fr; gap:18px; }
  .privacy-grid>div { min-height:126px; padding-top:22px; }
  .privacy-grid strong { font-size:42px; }
  .privacy-grid>div>span { font-size:19px; }
  .feature { padding:72px 0 68px; }
  .feature .ruled-title::before,.feature .ruled-title::after { display:none; }
  .feature .ruled-title span { flex:1 1 auto; min-width:0; overflow-wrap:anywhere; }
  .feature-grid,.feature-grid--reverse { display:flex; flex-direction:column; gap:55px; margin-top:58px; }
  .feature-grid--reverse .feature-copy,.feature-grid--reverse .feature-media { order:initial; }
  .feature-media { width:100%; min-height:350px; }
  .feature-copy h3 { font-size:26px; line-height:1.28; }
  .checks { gap:18px; font-size:15px; }
  .source-label { min-height:128px; font-size:26px; line-height:1.25; }
  .source-label .round-icon { margin-right:45px; }
  .source-logos { min-height:95px; flex-wrap:wrap; }
  .feature .pill { margin-top:55px; }
  .blog { padding:70px 0 80px; }
  .post-grid { grid-template-columns:1fr; gap:44px; margin-top:52px; }
  .post-card { min-height:570px; }
  .post-card h3 { min-height:0; padding-top:18px; }
  .post-card img { height:105px; }
  .about { padding:35px 0 60px; }
  .about-grid { grid-template-columns:1fr; gap:74px; margin-top:70px; }
  .about-grid>.about-stat { gap:22px; }
  .about-value { font-size:31px; }
  .home-footer { min-height:520px; padding-top:65px; }
  .home-footer>img { display:block; }
  .home-footer nav { display:grid; gap:18px; }
  .home-footer p { margin-top:30px; }
}
@media (max-width:370px) { .home-logo,.home-logo img { width:190px; } .home-mobile-actions { gap:14px; } }
@media (prefers-reduced-motion:reduce) {
  .about--will-animate .about-ring,.about--will-animate.about--animated .about-ring { --about-current:var(--about-target); transition:none; }
}
