/* Modern adaptation of the owner's medusasoftware.com Venus template.
   Source: templates/venus/css/template.css and presets/preset1.css.
   Retains the white masthead, blue menu, wide slideshow, feature band and navy footer.
   Original logo and slide backgrounds are retained in images/venus/. */
:root {
    --venus-blue:#3498db; --venus-nav:#176fa7; --venus-navy:#233445;
    --ink:#233445; --ink-2:#294d68; --ink-3:#176fa7; --signal:#176fa7; --signal-dark:#125983;
    --paper:#f3f7fa; --paper-2:#e8f1f8; --white:#fff; --muted:#536572; --line:#d8e3eb;
    --display:"Roboto","Segoe UI",sans-serif; --body:"Lato","Segoe UI",sans-serif; --data:var(--body);
    --shell:1240px; --shadow:0 8px 24px rgb(35 52 69 / 10%);
}
body { background:#fff; font-size:17px; }
h1,h2,h3 { font-weight:500; letter-spacing:-.02em; }
h1 { font-size:clamp(2rem,3.6vw,3.15rem); }
h2 { font-size:clamp(1.65rem,2.7vw,2.35rem); }
.button { border-radius:3px; font-family:var(--body); }
.button-signal,.button-primary { background:var(--signal); color:#fff; }
.button-signal:hover,.button-primary:hover { background:var(--signal-dark); }
.button-outline:hover { background:var(--paper-2); color:var(--ink); }
.site-header { min-height:0; height:auto; border:0; background:#fff; }
.header-inner { min-height:94px; gap:24px; }
.brand { gap:20px; }
.brand-wordmark { width:155px; height:44px; object-fit:contain; flex:0 0 155px; }
.header-inner .brand-copy { padding-inline-start:20px; border-inline-start:1px solid var(--line); }
.brand-copy strong { font-size:1.1rem; letter-spacing:.01em; }
.brand-copy small { font-size:.57rem; line-height:1.5; letter-spacing:.015em; }
.header-actions { margin-inline-start:auto; gap:24px; }
.header-phone { display:block; font-size:.84rem; }
.header-phone span { color:var(--muted); font-size:.7rem; }
.header-phone strong { color:var(--ink-3); }
.venus-menu-band { background:var(--venus-nav); color:#fff; }
.venus-menu-inner { min-height:56px; }
.venus-menu-band .desktop-nav { display:flex; align-items:stretch; justify-content:flex-start; gap:0; }
.venus-menu-band .desktop-nav > a,.venus-menu-band .nav-cluster > summary { min-height:56px; padding:0 17px; color:#fff; font-size:.87rem; font-weight:600; }
.venus-menu-band .desktop-nav > a:hover,.venus-menu-band .desktop-nav > a[aria-current="page"],.venus-menu-band .nav-cluster[open] > summary { background:#fff; color:var(--ink-3); }
.venus-menu-band .nav-cluster { position:relative; }
.venus-menu-band .nav-panel { top:100%; inset-inline-start:0; color:var(--ink); border-top:3px solid var(--venus-blue); border-radius:0 0 3px 3px; max-height:calc(100dvh - 165px); }
.venus-menu-band .nav-panel-wide { width:600px; }
.venus-menu-band .nav-panel a { color:var(--ink); }
.venus-menu-band .nav-panel a:hover { color:var(--ink-3); background:var(--paper); }
.header-inner > .language-selector { flex:0 0 auto; }
.mobile-menu nav { top:100%; color:var(--ink); }
.mobile-menu:not([open]) > nav,.language-selector:not([open]) > .language-menu,.nav-cluster:not([open]) > .nav-panel { display:none; }
.home-hero { background:linear-gradient(90deg,rgb(16 55 82 / 94%),rgb(22 85 120 / 72%)),url('../images/venus/slide1-bg.jpg') center / cover; color:#fff; }
.home-hero-grid { display:block; padding:0; }
.home-showcase { width:100%; background:transparent; border:0; border-radius:0; box-shadow:none; overflow:visible; }
.showcase-composition { display:grid; grid-template-columns:.83fr 1.17fr; gap:54px; align-items:center; padding-block:42px 26px; }
.showcase-composition > * { min-width:0; }
.hero-copy h1 { color:#fff; font-size:clamp(2rem,3.3vw,3rem); font-weight:400; line-height:1.18; }
.hero-copy .eyebrow { color:#c9ebff; }
.hero-copy .lead { color:#edf6fc; font-size:1.05rem; margin-top:20px; line-height:1.7; }
.hero-copy .hero-actions { margin-top:24px; gap:18px; }
.hero-copy .button-signal { background:#fff; border-color:#fff; color:#165d87; }
.hero-copy .button-signal:hover { background:#dceffc; }
.hero-copy .text-link { color:#fff; }
.hero-copy .demo-note,.hero-copy .support-note { color:#d6ebf8; font-size:.78rem; }
.hero-copy .support-note { margin-top:14px; }
.showcase-stage { min-width:0; }
.showcase-slide { overflow:hidden; border:1px solid rgb(255 255 255 / 48%); border-radius:3px; background:#fff; }
.showcase-slide img,.showcase-slide video { aspect-ratio:16 / 9; }
.showcase-slide figcaption { min-height:106px; padding:12px 16px; color:var(--ink); }
.showcase-slide figcaption > strong { font-size:.94rem; }
.showcase-slide figcaption p { font-size:.78rem; }
.home-showcase .showcase-controls { display:flex; gap:22px; align-items:center; justify-content:space-between; padding:12px 0 22px; border:0; }
.showcase-selector { margin:0; flex:1 1 auto; max-width:630px; gap:7px; }
.showcase-selector button { background:rgb(5 42 66 / 38%); border-color:rgb(255 255 255 / 45%); color:#fff; border-radius:3px; min-height:44px; font-size:.78rem; }
.showcase-selector button:hover,.showcase-selector button[aria-pressed="true"] { color:#145e8d; background:#fff; border-color:#fff; }
.showcase-navigation { order:2; flex:0 0 auto; }
.showcase-navigation button { background:transparent; color:#fff; border-color:rgb(255 255 255 / 50%); }
.showcase-navigation button:hover { background:rgb(255 255 255 / 15%); }
.showcase-position { color:#e7f3fc; }
.showcase-controls button:focus-visible { outline:3px solid #ffdc87; outline-offset:3px; }
.business-entry { border-color:rgb(255 255 255 / 30%); }
.business-entry a { color:#fff; border-color:rgb(255 255 255 / 30%); padding-block:18px; }
.business-entry a:hover { color:#fff; background:rgb(255 255 255 / 10%); }
.venus-feature-band { padding-block:42px 48px; background:var(--venus-blue); color:#fff; }
.venus-feature-band .section-heading { margin-bottom:26px; }
.venus-feature-band .eyebrow { color:#082b40; margin-bottom:10px; }
.venus-feature-band h2 { color:#fff; font-weight:500; }
.venus-feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px 38px; }
.venus-feature-grid > a { display:flex; align-items:center; gap:16px; color:#fff; text-decoration:none; min-height:76px; min-width:0; }
.venus-feature-grid > a:hover h3 { text-decoration:underline; text-underline-offset:5px; }
.venus-feature-icon { display:grid; place-items:center; width:62px; height:62px; flex:0 0 62px; color:#fff; background:#176fa7; border-radius:50%; }
.venus-feature-icon .site-icon { width:28px; height:28px; flex-basis:28px; }
.venus-feature-grid h3 { color:#082b40; font-size:1.16rem; font-weight:700; }
.venus-feature-grid p { margin-top:5px; color:#082b40; font-size:.84rem; font-weight:600; }
.content-section,.real-screen-section { padding-block:62px; }
.section-heading .eyebrow { margin-bottom:14px; }
.operation-story img,.operation-context img { border-radius:3px; }
.real-screen-section,.scope-section,.gallery-evidence { background:var(--paper); }
.screen-card,.product-card,.landing-summary,.download-card,.contact-card { border-radius:3px; }
/* Live GitHub metadata: four fields keep a compact, balanced two-column layout. */
.download-release-panel dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin:0 0 28px; background:#38507a; }
.download-release-panel dl > div { padding:13px; background:#17335d; }
.download-release-panel dt { color:#bdcee8; font-size:.65rem; text-transform:uppercase; }
.download-release-panel dd { margin:5px 0 0; color:#fff; font-size:.85rem; font-weight:700; overflow-wrap:anywhere; }
.download-release-panel .download-release-link { color:#bdffd1; }
.download-release-panel .download-asset-note { color:#bdcee8; }
.localized-download .download-release-panel { max-width:640px; padding:28px; color:#fff; background:var(--venus-navy); border-radius:3px; }
.product-card { border:1px solid var(--line); border-top:3px solid var(--venus-blue); background:#fff; box-shadow:none; padding:25px; }
.product-card:hover { border-color:var(--venus-blue); }
.home-intro .product-showcase { gap:22px; }
.home-intro .product-card { padding:0; margin:0; align-items:stretch; overflow:hidden; }
.product-card-visual { display:grid; place-items:center; width:100%; aspect-ratio:16 / 7; overflow:hidden; background:#e8f1f8; border-bottom:1px solid var(--line); }
.product-card-visual img { display:block; width:100%; height:100%; object-fit:cover; }
.product-card-screen img { object-fit:contain; }
.product-card-symbol { background:#e8f1f8; color:#176fa7; }
.product-card-symbol > .site-icon { width:76px; height:76px; flex-basis:76px; stroke-width:1.3; }
.product-card-body { display:flex; flex-direction:column; flex:1; padding:22px 24px 25px; }
.product-card-label { display:flex; align-items:center; gap:12px; }
.card-topic-icon,.feature-topic-icon { display:grid; place-items:center; flex:0 0 42px; width:42px; height:42px; border-radius:3px; background:#e8f1f8; color:#176fa7; }
.card-topic-icon .site-icon { width:26px; height:26px; flex-basis:26px; }
.product-card-body .card-link { position:static; display:flex; justify-content:space-between; width:100%; padding-top:8px; }
.product-card:focus-visible,.sector-link-grid a:focus-visible,.feature-list a:focus-visible { outline:3px solid #176fa7; outline-offset:4px; }
.sector-universe { background:var(--venus-navy); color:#fff; }
.sector-universe h2 { color:#fff; }
.sector-universe .eyebrow,.sector-universe-copy p { color:#d4e9f8; }
.sector-universe-grid { gap:48px; align-items:start; }
.sector-universe-copy { position:static; }
.sector-context-photo { margin-top:28px; }
.sector-context-photo img { width:100%; aspect-ratio:16 / 9; object-fit:cover; border-radius:3px; }
.sector-context-photo figcaption { margin-top:9px; color:#d4e9f8; font-size:.72rem; }
.sector-link-grid { border:0; gap:0 24px; }
.sector-link-grid a { display:grid; grid-template-columns:48px minmax(0,1fr) 18px; align-items:center; gap:14px; min-height:110px; padding:19px 0; border:0; border-bottom:1px solid #4a657c; color:#fff; }
.sector-link-grid a:hover { background:rgb(255 255 255 / 6%); color:#b8e3ff; }
.sector-link-grid .sector-topic-icon { display:grid; place-items:center; width:48px; height:48px; border:1px solid #62839e; border-radius:3px; background:#2c455a; color:#c0e6ff; }
.sector-topic-icon .site-icon { width:28px; height:28px; flex-basis:28px; }
.sector-link-grid .sector-name { color:inherit; font-size:.96rem; line-height:1.4; overflow-wrap:normal; }
.sector-link-grid a > .site-icon { width:18px; height:18px; color:#c0e6ff; }
.sector-link-grid a:focus-visible { outline-color:#b8e3ff; }
.feature-index .feature-list { gap:0 18px; border:0; }
.feature-index .feature-list a { justify-content:flex-start; gap:14px; margin:0; border:0; border-bottom:1px solid var(--line); padding:18px 0; }
.feature-topic-icon { flex-basis:38px; width:38px; height:38px; }
.feature-topic-icon .site-icon { width:22px; height:22px; flex-basis:22px; }
.feature-list .feature-name { flex:1; min-width:0; line-height:1.4; }
.scope-grid h3 { display:flex; align-items:center; gap:12px; }
.scope-grid h3 > .site-icon { width:24px; height:24px; flex-basis:24px; color:#176fa7; }
.scope-grid article { border-color:var(--venus-blue); }
.landing-hero { background:linear-gradient(90deg,#f0f7fb,rgb(245 249 252 / 96%)),url('../images/venus/slide2-bg.jpg') center / cover; border-bottom:1px solid var(--line); padding-block:48px; }
.landing-hero h1,.editorial-grid h1,.gallery-hero h1 { font-weight:400; }
.guide-header h1 { font-size:clamp(2rem,3.7vw,3.25rem); line-height:1.18; }
.landing-summary { border-top-color:var(--venus-blue); }
.breadcrumbs { min-height:52px; font-size:.75rem; }
.application-window,.gallery-case { border-radius:3px; }
.guide-header,.editorial-hero { background:var(--paper); border-bottom:1px solid var(--line); }
.workflow-section,.cta-band,.contact-hero,.download-hero,.inpos-hero { background:var(--venus-navy); }
.cta-band .eyebrow,.workflow-section .eyebrow,.eyebrow-light { color:#c9e8fc; }
.contact-card { border-top-color:var(--venus-blue); }
.venus-contact-strip { background:var(--venus-nav); color:#fff; }
.venus-contact-strip > .shell { display:flex; justify-content:space-between; flex-wrap:wrap; gap:20px; padding-block:23px; }
.venus-contact-strip a { display:flex; align-items:center; gap:10px; text-decoration:none; font-size:.88rem; }
.venus-contact-strip a:hover { text-decoration:underline; }
.site-footer { background:var(--venus-navy); color:#dfebf4; }
.site-footer p,.site-footer .brand-copy small,.footer-base { color:#d0dfeb; }
.site-footer .footer-grid > div:not(.footer-brand) a { color:#dfebf4; }
.footer-release,.footer-base { border-color:#496278; }
.site-footer a:hover { color:#a7d9fa; }
.floating-whatsapp-icon { background:#176fa7; }
/* Topic imagery stays in the existing Venus layout; icons supplement text. */
.corporate-hero-grid { grid-template-columns:1.08fr .92fr; align-items:center; gap:52px; }
.corporate-hero .lead { margin-block:22px 18px; }
.page-context-figure { margin:0; min-width:0; overflow:hidden; border:1px solid var(--line); background:#fff; border-radius:3px; }
.page-context-figure > img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; }
.page-context-figure figcaption { display:flex; align-items:flex-start; gap:9px; padding:13px 16px; color:var(--muted); font-size:.75rem; line-height:1.5; }
.page-context-figure figcaption .site-icon { flex:0 0 18px; width:18px; height:18px; color:var(--ink-3); }
.page-context-screen > img { object-fit:contain; aspect-ratio:16/9; background:#edf4f8; }
.page-context-device > img { object-fit:contain; height:260px; padding:22px; aspect-ratio:auto; }
.landing-summary .page-context-figure { margin-bottom:22px; }
.landing-summary .page-context-device > img { height:220px; }
.landing-hero-grid { grid-template-columns:1.2fr .85fr; align-items:center; }
.topic-icon { display:inline-flex; align-items:center; justify-content:center; width:48px; height:48px; color:var(--ink-3); background:#edf6fc; border:1px solid #d5e7f2; border-radius:3px; margin-bottom:15px; }
.topic-icon .site-icon { width:26px; height:26px; flex:0 0 26px; }
.values-grid article > .topic-icon { color:var(--ink-3); font-size:inherit; }
.service-timeline article > .service-step { display:flex; flex-direction:column; align-items:flex-start; gap:8px; color:var(--ink-3); }
.service-step .topic-icon { margin-bottom:0; }
.service-step small { font-size:.7rem; letter-spacing:.06em; }
.device-discovery { background:var(--paper); border-block:1px solid var(--line); }
.device-discovery-grid { display:grid; grid-template-columns:260px minmax(0,1fr); gap:60px; align-items:center; max-width:1050px; }
.device-discovery .page-context-device > img { height:300px; }
.device-resource-links { display:grid; margin-top:22px; border-top:1px solid var(--line); }
.device-resource-links a { display:flex; align-items:center; gap:14px; padding:16px 0; border-bottom:1px solid var(--line); text-decoration:none; color:var(--ink-3); font-weight:600; }
.device-resource-links a > span { flex:1; }
.device-resource-links a:hover { color:var(--signal); }
.pairing-section { background:var(--paper); }
.pairing-section .section-heading { max-width:880px; }
.pairing-section .section-heading p { margin-top:18px; }
.pairing-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; list-style:none; padding:0; margin:32px 0 24px; counter-reset:pairing; }
.pairing-steps li { border-top:2px solid var(--venus-blue); padding-top:20px; min-width:0; counter-increment:pairing; }
.pairing-steps h3::before { content:counter(pairing, decimal-leading-zero) ". "; color:var(--muted); }
.pairing-steps p { margin-top:12px; }
.pairing-note { max-width:880px; font-size:.88rem; color:var(--muted); }
.pairing-section .text-link { margin-top:16px; }
.pricing-grid article > .pricing-topic { display:flex; align-items:center; gap:12px; }
.pricing-topic .site-icon { width:26px; height:26px; flex-basis:26px; }
.pricing-featured .pricing-topic { color:#d8efff; }
.venus-menu-band .desktop-nav { flex-wrap:wrap; }
.venus-menu-band .device-nav > summary { gap:8px; }
.venus-menu-band .device-nav > summary > .site-icon:first-child { width:18px; height:18px; flex-basis:18px; }
.venus-menu-band .nav-panel { width:320px; }
.venus-menu-band .nav-panel-wide { width:600px; }
@media(max-width:760px) {
    .corporate-hero-grid,.landing-hero-grid { grid-template-columns:1fr; gap:28px; }
    .landing-summary { padding:20px; }
    .device-discovery-grid { grid-template-columns:1fr; gap:24px; }
    .device-discovery .page-context-figure { max-width:300px; margin-inline:auto; }
    .pairing-steps { grid-template-columns:1fr; gap:24px; }
    .pairing-steps li { display:grid; grid-template-columns:48px minmax(0,1fr); column-gap:16px; }
    .pairing-steps .topic-icon { grid-row:span 2; }
    .pairing-steps p { grid-column:2; }
}
@media(min-width:901px) { .header-inner .mobile-menu { display:none; }.header-inner .header-actions { display:flex; }.header-inner .header-phone { display:block; } }
@media(min-width:901px) and (max-width:1150px) {
    .venus-menu-band .desktop-nav > a,.venus-menu-band .nav-cluster > summary { padding-inline:12px; font-size:.8rem; }
    .showcase-composition { gap:30px; }.hero-copy h1 { font-size:2.35rem; }.header-inner { gap:18px; }
}
@media(max-width:900px) {
    .venus-menu-band { display:none; }.site-header { border-bottom:4px solid var(--venus-blue); }
    .header-inner { min-height:80px; gap:12px; }.header-inner .header-actions { display:none; }
    .header-inner > .language-selector { margin-inline-start:auto; }.header-inner .mobile-menu { display:block; margin-inline-start:0; }
    .brand { gap:12px; }.header-inner .brand-copy { padding-inline-start:12px; }.brand-wordmark { width:132px; flex-basis:132px; }
    .showcase-composition { grid-template-columns:1fr 1.12fr; gap:25px; }.hero-copy h1 { font-size:2rem; }
    .home-showcase .showcase-controls { flex-wrap:wrap; gap:12px; }.showcase-selector { max-width:none; }.showcase-navigation { margin-inline-start:auto; }
    .venus-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px; }
    .venus-menu-band .nav-panel-wide { width:min(600px,90vw); }
}
@media(max-width:760px) {
    .shell { width:calc(100% - 36px); }.header-inner { min-height:76px; gap:8px; }.brand-wordmark { width:112px; height:34px; flex-basis:112px; }
    .header-inner .brand { gap:10px; }.header-inner .brand-copy { padding-inline-start:8px; }
    .header-inner > .language-selector { width:62px; }.header-inner > .language-selector > summary { width:62px; min-width:62px; gap:4px; padding-inline:4px; }
    .header-inner > .language-selector > summary .language-flag { width:18px; flex-basis:18px; height:13px; }.header-inner > .language-selector > summary svg { width:10px; }.header-inner > .language-selector > summary .language-code { font-size:.68rem; }
    .header-inner .mobile-menu { flex:0 0 44px; min-width:44px; }
    .brand-copy strong { font-size:.9rem; }.brand-copy small { display:none; }
    .showcase-composition { grid-template-columns:1fr; gap:24px; padding-block:30px 18px; }
    .hero-copy h1 { font-size:2.05rem; }.hero-copy .lead { font-size:1rem; }
    .hero-copy .hero-actions { align-items:center; gap:14px; }.hero-copy .hero-actions .button { width:auto; }
    .showcase-slide figcaption { min-height:130px; padding:13px 16px; }
    .home-showcase .showcase-controls { display:grid; grid-template-columns:1fr; gap:12px; padding-bottom:18px; }
    .showcase-navigation { margin:0; order:0; }.showcase-navigation .showcase-play { margin-inline-start:auto; }
    .showcase-selector { order:1; }.showcase-selector button { padding-inline:7px; font-size:.73rem; }
    .business-entry a,.business-entry a:first-child { font-size:.82rem; padding:15px 9px; }
    .venus-feature-band { padding-block:32px; }.venus-feature-band h2 { font-size:1.6rem; }.venus-feature-grid { grid-template-columns:1fr; gap:18px; }
    .venus-feature-grid > a { min-height:64px; }.venus-feature-icon { width:52px; height:52px; flex-basis:52px; }.venus-feature-grid h3 { font-size:1.05rem; }
    .content-section,.real-screen-section { padding-block:45px; }.landing-hero { padding-block:32px; }
    .home-intro .product-showcase { gap:20px; }.product-card-body { padding:20px; }
    .sector-link-grid { grid-template-columns:1fr; }.sector-link-grid a { min-height:88px; }
    .feature-index .feature-list { grid-template-columns:1fr; }
    .venus-contact-strip > .shell { flex-direction:column; gap:14px; padding-block:22px; }.venus-contact-strip a { font-size:.84rem; }
    .footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.footer-brand { grid-column:1 / -1; }
}
@media(max-width:380px) {
    .brand-wordmark { width:95px; flex-basis:95px; }.brand { gap:9px; }.header-inner .brand-copy { padding-inline-start:9px; }.brand-copy strong { font-size:.8rem; }
    .header-inner { gap:8px; }.language-selector > summary { min-width:54px; }.hero-copy h1 { font-size:1.9rem; }
}
@media(max-width:360px) {
    .brand-wordmark { width:80px; flex-basis:80px; }.header-inner .brand { gap:8px; }.header-inner .brand-copy { padding-inline-start:6px; }.brand-copy strong { font-size:.7rem; }
    .header-inner { gap:7px; }.header-inner > .language-selector,.header-inner > .language-selector > summary { width:50px; min-width:50px; }.header-inner > .language-selector > summary svg { display:none; }
}
@media print { .venus-feature-band,.venus-contact-strip { display:none; }.home-hero { color:#000; background:#fff; }.hero-copy h1,.hero-copy .lead { color:#000; } }
