@import url('./styles.css');

body { background: #f6f4ef; }
.landing-header { background: rgba(246,244,239,.9); backdrop-filter: blur(18px); border-bottom: 1px solid rgba(20,26,29,.07); }
.landing-header .desktop-nav { gap: 25px; }
.landing-header .desktop-nav .nav-portal { color: var(--ink); }
.landing-main { overflow: hidden; }
.landing-hero { min-height: 760px; padding: 142px max(28px, calc((100vw - 1220px) / 2)) 74px; background: radial-gradient(circle at 79% 35%, rgba(216,199,163,.28), transparent 26%), linear-gradient(145deg,#faf9f6,#f0eee7); position: relative; }
.landing-hero::before { content:""; position:absolute; left:max(28px, calc((100vw - 1220px) / 2)); top:84px; bottom:0; width:1px; background:rgba(20,26,29,.06); }
.landing-hero-grid { max-width:1220px; min-height:540px; margin:0 auto; display:grid; grid-template-columns:1fr; align-items:center; }
.breadcrumbs { display:flex; align-items:center; gap:9px; font-size:9px; color:#899193; margin-bottom:26px; }
.breadcrumbs a:hover { color:var(--red); }
.breadcrumbs i { font-style:normal; color:#bbc0c0; }
.landing-hero h1 { font:700 clamp(48px,5.8vw,78px)/.99 var(--display); letter-spacing:-.055em; margin:0 0 27px; }
.landing-hero h1 em { color:var(--red); font-style:inherit; }
.landing-hero-copy > p { color:#5f6a6e; max-width:575px; font-size:16px; line-height:1.72; margin:0; }
.landing-actions { display:flex; gap:12px; margin-top:33px; }
.landing-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:#dcdad3; margin-top:43px; max-width:550px; border:1px solid #dcdad3; border-radius:10px; overflow:hidden; }
.landing-stats div { background:rgba(255,255,255,.62); padding:15px 17px; display:grid; gap:4px; }
.landing-stats strong { font:700 17px var(--display); }
.landing-stats span { color:#879092; font-size:8px; }
.solution-switcher { max-width:1220px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(20,26,29,.1); }
.solution-switcher a { min-height:66px; border-right:1px solid rgba(20,26,29,.08); padding:15px; display:flex; align-items:center; justify-content:center; text-align:center; font-size:9px; font-weight:700; color:#657074; transition:.2s; }
.solution-switcher a:last-child { border-right:0; }
.solution-switcher a:hover,.solution-switcher a.active { color:var(--red); background:rgba(255,255,255,.6); }

.landing-services { background:white; padding:120px max(28px,calc((100vw - 1220px)/2)); }
.landing-section-head { max-width:1220px; margin:0 auto 54px; display:grid; grid-template-columns:1fr .7fr; gap:70px; align-items:end; }
.landing-section-head h2 { font:700 clamp(39px,4.7vw,61px)/1.03 var(--display); letter-spacing:-.05em; margin:19px 0 0; }
.landing-section-head > p { color:#697478; font-size:14px; line-height:1.7; margin:0; }
.landing-service-grid { max-width:1220px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); border:1px solid #e0e0da; border-radius:16px; overflow:hidden; }
.landing-service-card { min-height:215px; padding:27px; border-right:1px solid #e4e4df; border-bottom:1px solid #e4e4df; position:relative; transition:.25s; }
.landing-service-card:nth-child(3n) { border-right:0; }
.landing-service-card:nth-last-child(-n+3) { border-bottom:0; }
.landing-service-card:hover { background:#f8f6f1; }
.landing-service-card > span { color:var(--red); font:700 10px var(--display); }
.landing-service-card h3 { font:700 17px var(--display); margin:29px 0 10px; }
.landing-service-card p { color:#788184; font-size:11px; line-height:1.62; margin:0; }
.landing-service-card i { position:absolute; right:24px; top:24px; font-style:normal; color:#adb2b3; }
.service-footnote { max-width:1220px; margin:19px auto 0; display:flex; align-items:center; gap:9px; color:#858d8f; font-size:9px; }
.service-footnote span { width:17px;height:17px;border:1px solid #b7bdbd;border-radius:50%;display:grid;place-items:center;font-weight:700; }

.case-section { background:var(--navy); color:white; padding:120px max(28px,calc((100vw - 1220px)/2)); }
.case-section .landing-section-head > p { color:#9eafb2; }
.case-grid { max-width:1220px; margin:0 auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.case-card { background:#1d3339; border:1px solid rgba(255,255,255,.1); border-radius:16px; overflow:hidden; display:flex; flex-direction:column; }
.case-photo { min-height:0; aspect-ratio:1/1; background-repeat:no-repeat; background-size:200% 200%; background-color:#263a40; position:relative; }
.case-photo::after { content:""; position:absolute; inset:58% 0 0; background:linear-gradient(transparent,rgba(15,29,34,.44)); }
.case-photo.q1 { background-position:0 0; }
.case-photo.q2 { background-position:100% 0; }
.case-photo.q3 { background-position:0 100%; }
.case-photo.q4 { background-position:100% 100%; }
.case-body { padding:27px; display:flex; flex-direction:column; flex:1; }
.case-tag { color:#e67470; font-size:7px;letter-spacing:.14em;font-weight:700; }
.case-body h3 { font:800 italic 25px var(--display);letter-spacing:.02em;margin:10px 0 14px;text-transform:uppercase; }
.case-specs { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:21px; }
.case-specs span { padding:12px 13px; border:1px solid rgba(255,255,255,.1); border-radius:9px; display:grid; gap:5px; }
.case-specs small { color:#7f9297; font-size:7px; letter-spacing:.13em; }
.case-specs strong { color:#d7dfe0; font:600 11px/1.35 var(--display); }
.case-report { margin:0; display:grid; }
.case-report > div { display:grid; grid-template-columns:112px 1fr; gap:15px; padding:12px 0; border-top:1px solid rgba(255,255,255,.1); }
.case-report dt { color:#e67470; font:700 9px var(--display); letter-spacing:.04em; }
.case-report dd { margin:0; color:#9babad; font-size:9px; line-height:1.58; }
.case-metrics { display:grid;grid-template-columns:repeat(3,1fr);gap:9px; }
.case-metrics div { border-top:1px solid rgba(255,255,255,.12);padding-top:12px;display:grid;gap:5px; }
.case-metrics span { color:#7f9297;font-size:7px; }.case-metrics strong{font:600 11px var(--display)}
.case-metrics strong em { color:#e8736f;font-style:normal; }
.sample-note { max-width:1220px;margin:18px auto 0;color:#829599;font-size:8px;line-height:1.5; }
.case-section .landing-service-grid { border-color:rgba(255,255,255,.11); }
.case-section .landing-service-card { border-color:rgba(255,255,255,.1); }
.case-section .landing-service-card:hover { background:rgba(255,255,255,.04); }
.case-section .landing-service-card p { color:#96a7aa; }
.landing-cta { max-width:1220px; margin:90px auto 0; padding-top:62px; border-top:1px solid rgba(255,255,255,.13); display:flex;justify-content:space-between;align-items:center;gap:40px; }
.landing-cta h2 { font:700 clamp(31px,4vw,50px)/1.06 var(--display);letter-spacing:-.04em;margin:0; }.landing-cta p{color:#93a5a8;font-size:11px;margin:12px 0 0}.landing-cta .button{flex:0 0 auto}
.landing-footer { background:#111d21;color:white;padding:34px max(28px,calc((100vw - 1220px)/2));display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.08); }
.landing-footer .gtf-monogram i { color:white; }
.landing-footer .gtf-fullname { color:#87979b; }
.landing-footer-links { display:flex;gap:25px;font-size:9px;color:#89999d; }.landing-footer-links a:hover{color:white}
.footer-copy { color:#6f8185;font-size:8px; }

.program-steps { max-width:1220px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:16px; }
.program-step { padding:30px;border:1px solid #e0e0da;border-radius:14px;min-height:250px;display:flex;flex-direction:column; }
.program-step > span { color:var(--red);font:700 12px var(--display); }.program-step h3{font:700 20px var(--display);margin:32px 0 12px}.program-step p{color:#748083;font-size:11px;line-height:1.65;margin:0}.program-step small{margin-top:auto;color:#9ca3a5;font-size:8px;padding-top:25px}
.device-grid { max-width:1220px;margin:0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:16px; }.device-card{border:1px solid #e0e0da;border-radius:15px;padding:29px;display:grid;grid-template-columns:1fr auto;min-height:220px;background:#faf9f6}.device-card span{color:var(--red);font-size:8px;letter-spacing:.14em}.device-card h3{font:700 22px var(--display);margin:15px 0 9px}.device-card p{color:#748083;font-size:10px;line-height:1.6;max-width:370px}.device-card i{width:46px;height:46px;border-radius:12px;background:#eceae3;display:grid;place-items:center;font-style:normal;color:var(--navy);font-size:20px}
.ecu-category-grid { max-width:1220px; margin:0 auto; display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.ecu-benefit-strip { background:#fff; border-top:1px solid #e0e0da; border-bottom:1px solid #e0e0da; padding:25px max(28px,calc((100vw - 1220px)/2)); display:grid; grid-template-columns:repeat(5,1fr); }
.ecu-benefit-strip > div { min-height:70px; display:flex; align-items:center; justify-content:center; gap:12px; padding:10px 18px; border-right:1px solid #e5e4df; }
.ecu-benefit-strip > div:last-child { border-right:0; }
.ecu-benefit-strip svg { width:27px; height:27px; fill:none; stroke:var(--red); stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; flex:0 0 auto; }
.ecu-benefit-strip strong { font:700 13px/1.12 var(--display); letter-spacing:.015em; }
.ecu-category-card { min-height:485px; border:1px solid #dedfd9; border-radius:17px; overflow:hidden; background:#faf9f6; display:flex; flex-direction:column; transition:transform .25s,box-shadow .25s; }
.ecu-category-card:hover { transform:translateY(-5px); box-shadow:0 24px 60px rgba(22,40,46,.11); }
.ecu-card-head { padding:20px 22px 0; display:flex; justify-content:space-between; align-items:center; }
.ecu-card-head > span { color:var(--red); font:700 10px var(--display); }
.ecu-card-head > i { width:34px;height:34px;border:1px solid #d7d9d4;border-radius:50%;display:grid;place-items:center;font-style:normal;transition:.2s; }
.ecu-category-card:hover .ecu-card-head > i { color:white;background:var(--red);border-color:var(--red); }
.ecu-card-visual { height:190px; margin:8px 22px 0; border-radius:12px; color:#d9e1e2; background:linear-gradient(145deg,#263f46,#13262c); display:grid;place-items:center;overflow:hidden;position:relative; }
.ecu-card-visual::before { content:"";position:absolute;width:210px;height:210px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-70px;top:-90px; }
.ecu-card-visual svg { width:72%;max-height:120px;position:relative;z-index:1; }
.ecu-card-body { padding:24px 25px 27px; }
.ecu-card-body small { color:#8b9395;font-size:8px;letter-spacing:.13em; }
.ecu-card-body h3 { font:700 25px var(--display);letter-spacing:-.035em;margin:10px 0; }
.ecu-card-body p { color:#748083;font-size:10px;line-height:1.62;margin:0;max-width:480px; }
.ecu-card-body > div { display:flex;gap:7px;flex-wrap:wrap;margin-top:19px; }
.ecu-card-body b { padding:6px 9px;border-radius:20px;background:#eeece5;font-size:7px;font-weight:600;color:#667174; }
.ecu-card-photo { height:255px; background-image:linear-gradient(to top,rgba(12,24,29,.18),transparent 50%),url('./assets/gravity-vehicle-categories.png'); background-repeat:no-repeat; background-size:100% 100%,200% auto; }
.ecu-card-photo.photo-passenger { background-position:center,0 0; }
.ecu-card-photo.photo-heavy { background-position:center,100% 0; }
.ecu-card-photo.photo-motorcycle { background-position:center,0 100%; }
.ecu-card-photo.photo-marine { background-position:center,100% 100%; }
.ecu-category-card .ecu-card-head { padding-top:18px; }
.ecu-category-card .ecu-card-body { padding-top:12px; }
.ecu-process-grid { max-width:1220px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12); }
.ecu-process-grid article { min-height:210px;padding:27px;border-right:1px solid rgba(255,255,255,.12); }
.ecu-process-grid article:last-child { border-right:0; }
.ecu-process-grid span { color:#e36a66;font:700 10px var(--display); }.ecu-process-grid h3{font:700 18px var(--display);margin:45px 0 10px}.ecu-process-grid p{color:#94a6a9;font-size:10px;line-height:1.6;max-width:290px}

.trainer-section { width:calc(100% - 56px);max-width:1220px; margin:0 auto; padding:120px 0; display:grid; grid-template-columns:1.08fr .92fr; gap:72px; align-items:center; }
.trainer-media { min-height:535px; position:relative; border-radius:18px; overflow:hidden; background:#e7e4dc; }
.trainer-media img { width:100%;height:100%;position:absolute;inset:0;object-fit:cover; }
.trainer-media::after { content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(14,27,32,.72)); }
.trainer-media > span { position:absolute;z-index:2;left:22px;bottom:20px;padding:9px 12px;border-radius:20px;background:rgba(255,255,255,.92);color:#596568;font-size:8px;letter-spacing:.05em; }
.trainer-copy h2 { font:700 clamp(42px,5vw,66px)/1 var(--display);letter-spacing:-.055em;margin:7px 0 25px; }
.trainer-role { color:var(--red);font:700 13px var(--display);margin:25px 0 0; }
.trainer-copy > p:last-of-type { color:#667276;font-size:14px;line-height:1.75;max-width:510px; }
.trainer-points { display:flex;gap:9px;flex-wrap:wrap;margin-top:27px; }
.trainer-points span { background:#eeece6;border-radius:20px;padding:9px 12px;font-size:8px;color:#5e696c;font-weight:700; }
.level-grid { max-width:1220px;margin:42px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px; }
.level-grid article { border-radius:13px;background:#f2f0ea;padding:27px;min-height:175px; }
.level-grid span { color:var(--red);font:700 10px var(--display); }.level-grid h3{font:700 18px var(--display);margin:25px 0 10px}.level-grid p{color:#727d80;font-size:10px;line-height:1.65;margin:0}
.program-sales { background:var(--navy);color:white;padding:120px max(28px,calc((100vw - 1220px)/2)); }
.program-sales-grid { max-width:1220px;margin:0 auto;display:grid;grid-template-columns:.85fr 1.15fr;gap:85px;align-items:start; }
.program-sales-grid h2 { font:700 clamp(39px,4.7vw,61px)/1.03 var(--display);letter-spacing:-.05em;margin:20px 0; }
.program-sales-grid > div:first-child > p { color:#9aabad;font-size:13px;line-height:1.75;max-width:470px; }
.sales-list { border-top:1px solid rgba(255,255,255,.12); }
.sales-list article { display:grid;grid-template-columns:44px 1fr;gap:15px;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.12); }
.sales-list article > span { color:#e46d69;font:700 10px var(--display); }.sales-list h3{font:700 18px var(--display);margin:0 0 8px}.sales-list p{color:#96a8ab;font-size:10px;line-height:1.65;margin:0}

.device-catalog { background:#fff;padding:120px max(28px,calc((100vw - 1220px)/2)); }
.catalog-intro { max-width:1220px;margin:0 auto 68px;display:grid;grid-template-columns:1fr .72fr;gap:72px;align-items:end; }
.catalog-intro h2 { font:700 clamp(39px,4.7vw,61px)/1.03 var(--display);letter-spacing:-.05em;margin:20px 0 0; }
.catalog-intro > p { color:#697478;font-size:13px;line-height:1.72;margin:0; }
.device-products { max-width:1220px;margin:0 auto;display:grid;gap:28px; }
.device-product { display:grid;grid-template-columns:.82fr 1.18fr;border:1px solid #dfdfd9;border-radius:19px;overflow:hidden;background:#faf9f6;box-shadow:0 16px 42px rgba(18,31,36,.04); }
.device-product.reverse .device-product-media { order:2; }.device-product.reverse .device-product-copy{order:1}
.device-product-media { min-height:590px;position:relative;display:grid;place-items:center;padding:48px;background:linear-gradient(145deg,#f5f3ed,#e8e6df);overflow:hidden; }
.device-product-media::before { content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(22,40,46,.08);border-radius:50%; }
.device-product-media > span { position:absolute;left:24px;top:22px;font:700 9px var(--display);letter-spacing:.12em;color:#697579; }
.device-product-media img { width:100%;height:100%;max-width:480px;max-height:420px;object-fit:contain;position:relative;z-index:1;mix-blend-mode:multiply; }
.device-product-copy { padding:42px;display:flex;flex-direction:column; }
.device-title > span { color:var(--red);font-size:8px;font-weight:700;letter-spacing:.13em; }.device-title h2{font:700 34px var(--display);letter-spacing:-.035em;margin:11px 0 10px}.device-title p{color:#657175;font-size:12px;line-height:1.65;margin:0;max-width:620px}
.device-columns { display:grid;grid-template-columns:1.12fr .88fr;gap:34px;padding:28px 0;margin-top:26px;border-top:1px solid #dfdfd9;border-bottom:1px solid #dfdfd9; }
.device-columns h3 { font:700 11px var(--display);margin:0 0 13px; }.device-columns h3:not(:first-child){margin-top:22px}
.device-columns ul { list-style:none;margin:0;padding:0;display:grid;gap:9px; }.device-columns li{color:#707b7e;font-size:9px;line-height:1.55;padding-left:15px;position:relative}.device-columns li::before{content:"";position:absolute;left:0;top:.55em;width:5px;height:5px;background:var(--red);border-radius:50%}
.device-tags { display:flex;flex-wrap:wrap;gap:6px; }.device-tags b{padding:7px 9px;border-radius:20px;background:#e7ddd2;color:#6e3c39;font-size:7px}.device-tags.muted b{background:#eceae4;color:#697376}
.device-use { display:grid;grid-template-columns:1fr 1fr;gap:26px;padding-top:25px; }.device-use span{font-size:7px;letter-spacing:.12em;color:#90989a;font-weight:700}.device-use p{color:#6b777a;font-size:9px;line-height:1.55;margin:7px 0 0}
.device-detail { margin-top:auto;align-self:flex-start; }
.catalog-note { max-width:1220px;margin:30px auto 0;border:1px solid #dfdfd9;border-radius:12px;padding:18px 20px;display:flex;gap:12px;align-items:flex-start;background:#f5f3ed; }.catalog-note > span{width:19px;height:19px;flex:0 0 auto;border:1px solid #aeb5b4;border-radius:50%;display:grid;place-items:center;font-size:9px}.catalog-note p{margin:0;color:#6d777a;font-size:9px;line-height:1.6}
.device-detail-heading { margin-top:95px; }
.device-catalog + .landing-cta { max-width:none;margin:0;padding:75px max(28px,calc((100vw - 1220px)/2));background:#f1efe9;border:0;color:var(--ink); }

.contact-section { background:#fff; padding:120px max(28px,calc((100vw - 1220px)/2)); }
.contact-grid { max-width:1220px; margin:0 auto; display:grid; grid-template-columns:.9fr 1.1fr; gap:76px; align-items:start; }
.contact-details h2 { font:700 clamp(39px,4.7vw,61px)/1.03 var(--display); letter-spacing:-.05em; margin:20px 0; }
.contact-details > p { color:#697478; font-size:13px; line-height:1.72; max-width:510px; }
.contact-cards { display:grid; gap:12px; margin-top:36px; }
.contact-cards a { border:1px solid #dfdfd9; border-radius:14px; padding:22px; display:grid; gap:8px; background:#faf9f6; transition:.2s; }
.contact-cards a:hover { transform:translateY(-2px); border-color:#c8cbc7; }
.contact-cards small { color:var(--red); font:700 8px var(--display); letter-spacing:.13em; }
.contact-cards strong { font:700 18px var(--display); }
.contact-cards span { color:#7b8588; font-size:9px; }
.contact-cards .whatsapp-card { background:#17372f; border-color:#17372f; color:white; }
.contact-cards .whatsapp-card small { color:#63d69b; }
.contact-cards .whatsapp-card span { color:#a9c7ba; }
.contact-form { border:1px solid #dfdfd9; border-radius:18px; background:#faf9f6; padding:38px; display:grid; gap:18px; box-shadow:0 18px 46px rgba(18,31,36,.05); }
.contact-form-head { margin-bottom:8px; }
.contact-form-head > span { color:var(--red); font:700 8px var(--display); letter-spacing:.13em; }
.contact-form-head h3 { font:700 30px var(--display); margin:10px 0 7px; }
.contact-form-head p { color:#7a8588; font-size:10px; line-height:1.6; margin:0; }
.contact-form label { display:grid; gap:8px; color:#596568; font:700 9px var(--display); letter-spacing:.04em; }
.contact-form input,.contact-form select,.contact-form textarea { width:100%; border:1px solid #d9dad5; border-radius:9px; background:white; color:var(--ink); padding:13px 14px; font:500 12px Inter,sans-serif; outline:none; }
.contact-form textarea { resize:vertical; min-height:135px; }
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus { border-color:var(--red); box-shadow:0 0 0 3px rgba(213,0,28,.08); }
.contact-form .button { border:0; cursor:pointer; justify-content:space-between; margin-top:3px; }

@media(max-width:900px){
  .landing-hero-grid{grid-template-columns:1fr}.solution-switcher{grid-template-columns:repeat(3,1fr)}.landing-section-head{grid-template-columns:1fr;gap:23px}.landing-service-grid{grid-template-columns:1fr 1fr}.landing-service-card:nth-child(3n){border-right:1px solid #e4e4df}.landing-service-card:nth-child(2n){border-right:0}.landing-service-card:nth-last-child(-n+3){border-bottom:1px solid #e4e4df}.landing-service-card:nth-last-child(-n+2){border-bottom:0}.case-grid{grid-template-columns:1fr 1fr}.case-photo{min-height:0}.ecu-benefit-strip{grid-template-columns:repeat(5,1fr);padding-left:18px;padding-right:18px}.ecu-benefit-strip>div{padding:8px;flex-direction:column;text-align:center}.program-steps{grid-template-columns:1fr}.device-grid{grid-template-columns:1fr}.ecu-process-grid{grid-template-columns:1fr}.ecu-process-grid article{border-right:0;border-bottom:1px solid rgba(255,255,255,.12);min-height:160px}.ecu-process-grid article:last-child{border-bottom:0}.ecu-process-grid h3{margin-top:25px}.trainer-section{width:auto;padding:95px 28px;grid-template-columns:1fr;gap:42px}.program-sales-grid{grid-template-columns:1fr;gap:45px}.catalog-intro{grid-template-columns:1fr;gap:25px}.device-product,.device-product.reverse{grid-template-columns:1fr}.device-product.reverse .device-product-media,.device-product.reverse .device-product-copy{order:initial}.device-product-media{min-height:420px}.device-columns{grid-template-columns:1fr 1fr}.level-grid{grid-template-columns:1fr}
}
@media(max-width:580px){
  .landing-hero{padding:105px 19px 45px}.landing-hero::before{left:19px}.landing-hero h1{font-size:45px}.landing-actions{display:grid}.landing-stats{grid-template-columns:1fr}.solution-switcher{grid-template-columns:1fr}.solution-switcher a{min-height:53px;border-right:0;border-bottom:1px solid rgba(20,26,29,.08)}.landing-services,.case-section{padding:85px 19px}.landing-service-grid{grid-template-columns:1fr}.landing-service-card,.landing-service-card:nth-child(2n),.landing-service-card:nth-child(3n),.landing-service-card:nth-last-child(-n+3){border-right:0;border-bottom:1px solid #e4e4df}.landing-service-card:last-child{border-bottom:0}.case-grid{grid-template-columns:1fr}.case-photo{min-height:0}.case-body{padding:22px}.case-specs{grid-template-columns:1fr}.case-report>div{grid-template-columns:90px 1fr;gap:10px}.case-metrics{grid-template-columns:1fr 1fr}.ecu-benefit-strip{grid-template-columns:1fr;padding:0 19px}.ecu-benefit-strip>div{min-height:58px;flex-direction:row;justify-content:flex-start;text-align:left;border-right:0;border-bottom:1px solid #e5e4df}.ecu-benefit-strip>div:last-child{border-bottom:0}.landing-cta{align-items:flex-start;flex-direction:column}.landing-cta .button{width:100%}.landing-footer{align-items:flex-start;flex-direction:column;gap:25px}.landing-footer-links{flex-wrap:wrap}.device-card{grid-template-columns:1fr}.device-card i{grid-row:1;grid-column:1}.program-step{min-height:220px}.ecu-category-grid{grid-template-columns:1fr}.ecu-category-card{min-height:450px}.ecu-card-visual{height:170px}.ecu-card-photo{height:220px}.trainer-section{padding:78px 19px}.trainer-media{min-height:390px}.program-sales,.device-catalog{padding:85px 19px}.device-product-media{min-height:310px;padding:28px}.device-product-copy{padding:27px}.device-columns,.device-use{grid-template-columns:1fr}.device-product-media::before{width:260px;height:260px}.device-title h2{font-size:28px}.device-catalog + .landing-cta{padding:60px 19px}.program-sales-grid{gap:35px}
}

@media(max-width:900px){.contact-grid{grid-template-columns:1fr;gap:46px}}
@media(max-width:580px){.contact-section{padding:85px 19px}.contact-form{padding:25px}.contact-cards strong{font-size:16px}}
.compare-dock[hidden]{display:none!important}

/* Devices catalog: consistent media and content rhythm */
.tool-grid{align-items:stretch}
.tool-card{height:100%}
.tool-media{width:100%;height:auto!important;aspect-ratio:4/3;min-height:0!important;overflow:hidden;isolation:isolate}
.tool-media img{display:block;width:100%!important;height:100%!important;max-width:340px;max-height:230px;margin:auto;object-fit:contain!important;object-position:center!important;transform:none!important}
.tool-media .device-fallback{width:100%;height:100%;place-content:center;overflow:hidden}
.tool-body{display:grid!important;grid-template-rows:auto auto minmax(78px,auto) auto auto auto auto;align-content:start}
.tool-body>p{min-height:78px;margin-bottom:0;overflow-wrap:anywhere}
.tool-body h3{min-height:32px;display:flex;align-items:center;overflow-wrap:anywhere}
.tool-body dl{min-height:102px}
.tool-actions{align-self:end;width:100%}
.tool-actions a,.tool-actions button{display:flex;align-items:center;justify-content:center;min-height:42px;line-height:1.25;white-space:normal}
@media(max-width:620px){.tool-media{aspect-ratio:16/11}.tool-media img{max-width:300px;max-height:205px}.tool-body>p,.tool-body h3,.tool-body dl{min-height:0}}
