:root {
  --ink: #07111f; --navy: #0b2138; --navy-2: #103553; --steel: #526174;
  --line: #d8e0e8; --surface: #fff; --surface-2: #f3f6f8; --orange: #f97316;
  --orange-dark: #d85d0d; --white: #fff; --radius: 12px;
  --shadow: 0 16px 40px rgba(7,17,31,.10); --container: 1180px;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { background: var(--surface); color: var(--ink); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 16px; line-height: 1.65; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
img, svg { display: block; max-width: 100%; }
a { color: inherit; }
button, input, textarea, select { font: inherit; }

header { position: sticky; top: 0; z-index: 100; background: rgba(4,12,23,.94) !important; color: white; border-bottom: 1px solid rgba(255,255,255,.1); backdrop-filter: blur(14px); }
.header-container { width: min(100% - 40px, var(--container)); min-height: 72px; margin: auto; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.logo { color: white; font-size: 1.24rem; font-weight: 800; letter-spacing: .04em; text-decoration: none; }
.logo::before { content: ""; display: inline-block; width: 9px; height: 9px; margin-right: 10px; background: var(--orange); border-radius: 2px; box-shadow: 6px 6px 0 rgba(249,115,22,.45); }
.home-logo { display: inline-flex; align-items: center; gap: 11px; }
.home-logo::before { display: none; }
.topbar-brand-icon { width: 46px; height: 46px; object-fit: contain; flex: 0 0 auto; }
.topbar-wordmark { width: clamp(124px,13vw,158px); height: auto; object-fit: contain; }
nav ul { display: flex; align-items: center; gap: 30px; list-style: none; }
nav a { color: #d7e0ea; font-size: .91rem; font-weight: 650; text-decoration: none; transition: color .2s ease; }
nav a:hover { color: var(--orange); }
nav a.active { color: white; }
nav a.active { box-shadow: inset 0 -2px var(--orange); padding-bottom: 8px; }
.menu-toggle { display: none; width: 44px; height: 44px; border: 0; background: transparent; cursor: pointer; }
.menu-toggle span { display: block; width: 23px; height: 2px; margin: 5px auto; background: white; transition: .2s; }
.menu-toggle.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.menu-toggle.open span:nth-child(2) { opacity: 0; }
.menu-toggle.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.nav-mobile-menu { display: none; }

section { padding: clamp(64px,8vw,104px) 20px; }
.container, .hero-container { width: min(100%, var(--container)); margin: auto; }
.hero { min-height: 620px; display: flex; align-items: center; color: white; background: linear-gradient(180deg, rgba(255,255,255,.025), transparent 45%), linear-gradient(145deg,#02070e 0%,#07172a 48%,#0d3352 100%) !important; overflow: hidden; }
.hero-container { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(360px,.95fr); gap: clamp(40px,7vw,84px); align-items: center; }
.hero-container:has(> :only-child) { grid-template-columns: minmax(0,760px); }
.hero-content { max-width: 690px; }
.hero-content h1 { font-size: clamp(min(2.1rem,9vw),4.2vw,3.75rem); line-height: 1.05; letter-spacing: -.045em; margin-bottom: 22px; }
.hero-content > p { color: #c7d3df; font-size: clamp(1rem,1.5vw,1.15rem); max-width: 620px !important; }
.hero-content > p:first-child { color: #fb923c !important; font-size: .78rem !important; letter-spacing: .14em !important; }
.hero-content h1 span { color: #fb923c !important; }
.btn-group { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.btn { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; padding: 11px 22px; border: 1px solid transparent; border-radius: 7px; font-size: .94rem; font-weight: 750; text-decoration: none; cursor: pointer; transition: transform .2s, background .2s, border-color .2s; }
.btn:hover { transform: translateY(-2px); }
.btn-primary { background: var(--orange-dark); color: white; }.btn-primary:hover { background: var(--orange); }
.btn-secondary { background: rgba(255,255,255,.08); border-color: white; color: white; }.btn-secondary:hover { background: transparent; border-color: rgba(255,255,255,.5); }

section.alt-bg { background: var(--surface-2) !important; }
.section-title { max-width: 720px; margin: 0 auto 48px; text-align: center; }
.section-title h2 { color: var(--ink) !important; font-size: clamp(2rem,4vw,3rem); line-height: 1.12; letter-spacing: -.035em; margin-bottom: 14px; }
.section-title p { color: var(--steel) !important; font-size: 1.05rem; }
.features-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; margin-top: 40px; }
.feature-card { height: 100%; padding: 30px; background: white; color: var(--ink); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: 0 7px 22px rgba(7,17,31,.055); text-align: left; transition: transform .2s, border-color .2s, box-shadow .2s; }
.feature-card:hover { transform: translateY(-4px); border-color: #afbdca; box-shadow: var(--shadow); }
.feature-card h3 { color: var(--ink); font-size: 1.18rem; margin: 14px 0 9px; }
.feature-card p { color: var(--steel) !important; font-size: .96rem; }
.feature-image { min-height: 90px; display: flex; align-items: center; justify-content: center; }
.feature-image img { width: 112px; height: 90px; object-fit: contain; }
.products-page .feature-card .feature-image { min-height: 190px; margin: -30px -30px 24px; overflow: hidden; border-radius: var(--radius) var(--radius) 0 0; }
.products-page .feature-card .feature-image img { width: 100%; height: 190px; object-fit: cover; }
.circle-highlights { overflow: hidden; }
.circle-highlights .features-grid { display: flex; justify-content: center; align-items: center; gap: 0; margin-top: 0; padding: 22px 0; }
.circle-highlights .feature-card { width: clamp(300px,29vw,356px); height: clamp(300px,29vw,356px); flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: clamp(38px,4vw,54px); margin-left: -34px; border-radius: 50%; text-align: center; border: 1px solid #cbd6e0; box-shadow: 0 18px 42px rgba(7,17,31,.10); }
.circle-highlights .feature-card:first-child { margin-left: 0; z-index: 1; background: linear-gradient(145deg,#02070e 0%,#071a2d 58%,#0b3152 100%); }
.circle-highlights .feature-card:nth-child(2) { z-index: 2; border-color: rgba(249,115,22,.7); background: radial-gradient(circle at 35% 25%,rgba(249,115,22,.12),transparent 42%),linear-gradient(145deg,#06111e 0%,#0b2943 55%,#124667 100%); }
.circle-highlights .feature-card:nth-child(3) { z-index: 3; background: linear-gradient(145deg,#030a13 0%,#0a2238 55%,#0d3a5c 100%); }
.circle-highlights .feature-card:hover { z-index: 4; }
.circle-highlights .feature-image { min-height: 68px; }
.circle-highlights .feature-card h3 { margin-top: 8px; color: white; }
.circle-highlights .feature-card p { color: #cbd7e3 !important; }
.testimonials-section .review-card { background: linear-gradient(145deg,#02070e 0%,#071a2d 58%,#0d3a5c 100%); border-color: rgba(255,255,255,.14); box-shadow: 0 18px 40px rgba(7,17,31,.16); }
.testimonials-section .review-card:nth-child(2) { background: radial-gradient(circle at 85% 15%,rgba(249,115,22,.12),transparent 38%),linear-gradient(145deg,#06111e 0%,#0b2943 58%,#124667 100%); }
.testimonials-section .review-meta h4 { color: white; }
.testimonials-section .review-meta p { color: #aebdcb; }
.testimonials-section .review-text { color: #d6e0e9; }
.feature-section { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); align-items: center; gap: clamp(36px,7vw,84px); padding: 48px 0; border-bottom: 1px solid rgba(216,224,232,.65); }
.feature-section:last-child { border-bottom: 0; }
.feature-section.reverse { grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); }
.feature-section.reverse .feature-section-image { order: 2; }
.feature-section-content h3 { color: var(--ink) !important; font-size: clamp(1.65rem,3vw,2.25rem); line-height: 1.18; margin-bottom: 15px; }
.feature-section-content p { color: var(--steel) !important; margin-bottom: 12px; }
.feature-section-content ul { color: var(--steel) !important; padding-left: 20px; }.feature-section-content li { margin: 6px 0; }
.feature-section-image { min-height: 300px; display: grid; place-items: center; padding: 35px; border: 1px solid var(--line); border-radius: var(--radius); background: #f8fafb; }
.feature-section-image img { width: min(100%,360px); height: auto; max-height: 270px; object-fit: contain; }
.feature-section-image img.feature-photo { width: 100%; height: 300px; max-height: none; object-fit: cover; border-radius: 8px; }
.legacy-mission-graphic { display:none; }
.home-page .dashboard-mockup { display:none; }
.hero-photo { position:relative; min-height:430px; margin:0; overflow:hidden; border:1px solid rgba(255,255,255,.18); border-radius:16px; box-shadow:0 32px 80px rgba(0,0,0,.42); }
.hero-photo::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 52%,rgba(2,7,14,.9)); pointer-events:none; }
.hero-photo img { width:100%; height:430px; object-fit:cover; }
.hero-photo figcaption { position:absolute; z-index:1; left:24px; right:24px; bottom:20px; color:#d9e3ec; font-size:.9rem; }
.hero-photo figcaption span { display:block; color:#fb923c; font-size:.72rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.operations-gallery { background:#071523; color:white; }
.operations-gallery .section-title h2 { color:white!important; }
.operations-gallery .section-title p { color:#b9c8d6!important; }
.photo-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.photo-card { position:relative; min-height:300px; margin:0; overflow:hidden; border-radius:12px; background:#0b2138; }
.photo-card img { width:100%; height:100%; min-height:300px; object-fit:cover; transition:transform .45s ease; }
.photo-card::after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,rgba(2,7,14,.85)); }
.photo-card figcaption { position:absolute; z-index:1; left:20px; bottom:16px; color:white; font-weight:750; }
.photo-card:hover img { transform:scale(1.035); }
.contact-visual { position:relative; overflow:hidden; padding:0; background:#071523!important; }
.contact-visual>img { width:100%; height:100%; object-fit:cover; }
.contact-visual>div { position:absolute; right:24px; bottom:24px; padding:14px 18px; border-radius:8px; background:rgba(4,12,23,.9); color:white; }
.contact-visual>div p { color:white!important; }

.hero-stats { display: flex; gap: 35px; margin-top: 42px; padding-top: 26px; border-top: 1px solid rgba(255,255,255,.13); }
.hero-stat-number { color: white; font-size: 1.65rem; font-weight: 800; line-height: 1; }.hero-stat-suffix { color: var(--orange); }
.hero-stat-label { color: #9eafbf; font-size: .72rem; margin-top: 8px; text-transform: uppercase; letter-spacing: .08em; }
.dashboard-mockup { width: min(100%,520px); margin-left: auto; border: 1px solid rgba(255,255,255,.16); border-radius: 14px; background: #06101d; box-shadow: 0 32px 80px rgba(0,0,0,.42); overflow: hidden; }
.mockup-titlebar { min-height: 45px; padding: 0 16px; display: flex; align-items: center; gap: 14px; background: #0a1828; border-bottom: 1px solid rgba(255,255,255,.08); }
.mockup-dots { display: flex; gap: 5px; }.mockup-dots span { width: 7px; height: 7px; border-radius: 50%; background: #5c6d7e; }.mockup-dots span:first-child { background: var(--orange); }
.mockup-app-title { color: #8fa2b5; font-size: .68rem; }.mockup-body { padding: 22px; }
.mockup-kpi-row { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; }.mockup-kpi { padding: 14px; background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.07); border-radius: 8px; }
.kpi-val { color: white; font-weight: 800; }.kpi-label { color: #8496a8; font-size: .65rem; }.mockup-kpi.accent .kpi-val { color: #fb923c; }
.mockup-chart-area { height: 130px; margin: 18px 0; padding: 15px 15px 0; display: flex; align-items: flex-end; gap: 10px; background: rgba(255,255,255,.025); border-radius: 8px; }
.mbar { flex: 1; height: 58%; background: #1c476c; border-radius: 3px 3px 0 0; }.mbar:nth-child(2){height:76%}.mbar:nth-child(3){height:88%}.mbar:nth-child(4){height:48%}.mbar:nth-child(5){height:68%}.mbar:nth-child(6){height:82%}.mbar.accent{background:var(--orange)}
.mockup-list { display: grid; gap: 8px; }.mockup-list-item { min-height: 36px; display: flex; align-items: center; gap: 9px; padding: 8px 10px; border: 1px solid rgba(255,255,255,.06); border-radius: 6px; }
.mli-dot { width: 7px; height: 7px; border-radius: 50%; background: #36c98f; }.mli-dot.orange{background:var(--orange)}.mli-line{height:4px;flex:1;max-width:140px;background:rgba(255,255,255,.13);border-radius:4px}.mli-line.short{max-width:92px}.mli-badge{margin-left:auto;font-size:.58rem;padding:3px 7px;border-radius:20px}.mli-badge.done{color:#61d8a8;background:rgba(54,201,143,.12)}.mli-badge.pending{color:#fb923c;background:rgba(249,115,22,.12)}

.marquee-wrapper { overflow: hidden; padding: 6px 0; mask-image: linear-gradient(90deg,transparent,black 10%,black 90%,transparent); }.marquee-track { width: max-content; display: flex; align-items: center; gap: 18px; animation: marquee 32s linear infinite; }.marquee-wrapper:hover .marquee-track{animation-play-state:paused}.marquee-item{width:180px;height:82px;display:grid;place-items:center;padding:18px 25px;background:white;border:1px solid var(--line);border-radius:10px}.marquee-item img{max-width:125px;max-height:44px;filter:grayscale(1);opacity:.72}@keyframes marquee{to{transform:translateX(-50%)}}
.testimonial-slider{overflow:hidden}.testimonial-track{display:flex;transition:transform .45s ease}.testimonial-slide{min-width:100%;display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.review-card{padding:30px;background:white;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius)}.review-header{display:flex;gap:13px;align-items:center}.review-avatar{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:8px;background:var(--navy);color:white;font-size:.76rem;font-weight:800}.review-meta h4{color:var(--ink)}.review-meta p{color:var(--steel);font-size:.82rem}.review-stars{color:var(--orange);letter-spacing:2px;margin:18px 0 10px}.review-text{color:#334155}.slider-controls{margin-top:24px;display:flex;justify-content:center;align-items:center;gap:14px}.slider-btn{width:42px;height:42px;border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink);cursor:pointer}.slider-dots{display:flex;gap:7px}.slider-dot{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#aab5c0;cursor:pointer}.slider-dot.active{background:var(--orange)}

.contact-form{padding:30px;background:white!important;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.form-group{margin-bottom:18px}.form-group label{display:block;margin-bottom:6px;color:var(--ink);font-size:.9rem;font-weight:700}.form-group input,.form-group textarea,.form-group select{width:100%;min-height:46px;padding:11px 13px;border:1px solid #bac6d1;border-radius:7px;background:white;color:var(--ink)}.form-group textarea{min-height:130px;resize:vertical}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:3px solid rgba(249,115,22,.2);border-color:var(--orange)}
.contact-details>div,.company-info-grid>div{background:white!important;color:#334155!important;border:1px solid var(--line);box-shadow:0 7px 20px rgba(7,17,31,.05)}.contact-details>div p,.company-info-grid>div p,.company-info-grid>div li,.location-card p{color:#465568!important}.location-card{color:#465568!important;border:1px solid var(--line)}.form-msg{margin-top:14px;padding:11px 14px;border-radius:7px;font-size:.9rem}.form-msg.success{color:#065f46;background:#d1fae5}.form-msg.error{color:#991b1b;background:#fee2e2}
.products-page>section:last-of-type,.features-page>section:last-of-type,.about-page>section:last-of-type{background:linear-gradient(145deg,#040b14,#0d2e4a)!important;color:white}.products-page>section:last-of-type h2,.features-page>section:last-of-type h2,.about-page>section:last-of-type h2{color:white!important}.products-page>section:last-of-type p,.features-page>section:last-of-type p,.about-page>section:last-of-type p{color:#c7d3df!important}

footer{margin-top:0;padding:64px 20px 22px;background:#040c17!important;color:#c4cfda;border-top:1px solid rgba(255,255,255,.08)}.footer-content{width:min(100%,var(--container));margin:auto;display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:36px}.footer-section h4{color:white;font-size:.95rem;margin-bottom:14px}.footer-section p,.footer-section li{color:#9fadb9;font-size:.9rem}.footer-section ul{list-style:none}.footer-section li{margin:7px 0}.footer-section a{color:#cbd5df;text-decoration:none}.footer-section a:hover{color:#fb923c}.footer-bottom{width:min(100%,var(--container));margin:34px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.09);color:#81909e;font-size:.82rem;text-align:center}.social-links{display:flex;gap:8px}.social-links a{width:36px;height:36px;display:grid;place-items:center;border-radius:6px;background:rgba(255,255,255,.08)}
.reveal,.reveal-left,.reveal-right{opacity:0;transform:translateY(16px);transition:opacity .55s,transform .55s}.reveal-left{transform:translateX(-18px)}.reveal-right{transform:translateX(18px)}.reveal.visible,.reveal-left.visible,.reveal-right.visible{opacity:1;transform:none}

@media(max-width:900px){.header-container>nav{display:none}.menu-toggle{display:block}.nav-mobile-menu{position:absolute;inset:72px 0 auto;padding:10px 20px 20px;background:#040c17;border-bottom:1px solid rgba(255,255,255,.1)}.nav-mobile-menu.open{display:grid}.nav-mobile-menu a{min-height:46px;display:flex;align-items:center;padding:0 10px;border-bottom:1px solid rgba(255,255,255,.07)}.hero-container{grid-template-columns:1fr}.hero-image{width:100%;max-width:600px}.dashboard-mockup{margin:0}.features-grid{grid-template-columns:repeat(2,1fr)}.footer-content{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){section{padding:62px 18px}.header-container{width:calc(100% - 28px);min-height:64px}.nav-mobile-menu{top:64px}.hero{min-height:auto!important;padding-top:70px}.hero-container{gap:42px}.hero-content h1 br{display:none}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.hero-stat-number{font-size:1.35rem}.features-grid,.testimonial-slide{grid-template-columns:1fr}.feature-card{padding:24px}.feature-section,.feature-section.reverse{grid-template-columns:1fr;padding:36px 0}.feature-section.reverse .feature-section-image{order:0}.feature-section-image{min-height:230px;padding:24px}.footer-content{grid-template-columns:1fr;gap:28px}.btn-group .btn{width:100%}.marquee-item{width:145px}}
@media(max-width:680px){.circle-highlights .features-grid{flex-direction:column}.circle-highlights .feature-card{width:min(84vw,330px);height:min(84vw,330px);margin-left:0;margin-top:-28px;padding:42px}.circle-highlights .feature-card:first-child{margin-top:0}}
@media(max-width:900px){.photo-grid{grid-template-columns:1fr}.photo-card-wide{grid-column:1/-1}}
@media(max-width:680px){.photo-grid{grid-template-columns:1fr}.products-page .feature-card .feature-image{margin:-24px -24px 22px}.feature-section-image{padding:12px}.feature-section-image img.feature-photo{height:250px}.hero-photo,.hero-photo img{min-height:320px;height:320px}.photo-card,.photo-card img{min-height:240px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal,.reveal-left,.reveal-right{opacity:1;transform:none}}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.footer-logo{font-size:1.5rem;margin-bottom:.75rem}.map-link{margin-top:14px}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr;gap:2.5rem}}
.marquee-wrapper.is-static{mask-image:none;-webkit-mask-image:none}.marquee-track.is-static{width:auto;justify-content:center;flex-wrap:wrap;gap:22px;animation:none}.marquee-track.is-static .marquee-item{width:240px;height:120px;padding:22px 30px}.marquee-track.is-static .marquee-item img{max-width:170px;max-height:70px;filter:none;opacity:1}
nav a.nav-cta{min-height:40px;padding:9px 16px;color:#fff;font-size:.88rem}nav a.nav-cta:hover{color:#fff;background:var(--orange)}nav a.nav-cta.active{box-shadow:none;padding-bottom:9px}
.nav-mobile-menu a.nav-cta{justify-content:center;margin-top:14px;padding:0 16px;border-bottom:0}
@media(min-width:901px) and (max-width:1100px){nav ul{gap:20px}}
.products-more{margin-top:36px;text-align:center;color:var(--steel)}.products-more a{color:var(--orange-dark);font-weight:700;text-decoration:none}.products-more a:hover{text-decoration:underline}
.footer-bottom a{color:#cbd5df;text-decoration:none}.footer-bottom a:hover{color:#fb923c}.footer-sep{margin:0 6px}
.form-privacy{margin-top:12px;color:var(--steel);font-size:.84rem;text-align:center}.form-privacy a{color:var(--orange-dark)}
.hero.hero-short{min-height:400px}
.legal-content{max-width:780px}.legal-content h2{color:var(--ink);font-size:1.3rem;line-height:1.3;margin:34px 0 10px}.legal-content p,.legal-content li{color:var(--steel)}.legal-content p+p{margin-top:10px}.legal-content ul{margin:8px 0 10px;padding-left:22px}.legal-content li{margin:4px 0}.legal-content a{color:var(--orange-dark)}.legal-updated{font-size:.9rem;font-weight:600}
.form-heading{color:var(--ink);font-size:1.6rem;margin-bottom:1.5rem}.btn-full{width:100%}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.checkbox-group{border:0;padding:0;min-width:0}.checkbox-group legend{margin-bottom:8px;color:var(--ink);font-size:.9rem;font-weight:700}.checkbox-group label{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin:0 22px 0 0;color:var(--ink);font-weight:500;cursor:pointer}.form-group .checkbox-group input,.checkbox-group input[type=checkbox]{width:18px;height:18px;min-height:0;padding:0;accent-color:var(--orange)}
.demo-steps{list-style:none;counter-reset:demo;display:grid;gap:16px}.demo-steps li{position:relative;padding:22px 22px 22px 70px;background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 7px 20px rgba(7,17,31,.05)}.demo-steps li::before{counter-increment:demo;content:counter(demo);position:absolute;left:22px;top:22px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:white;font-weight:800;font-size:.9rem}.demo-steps h4{color:var(--ink);margin-bottom:4px}.demo-steps p{color:var(--steel);font-size:.95rem}
.demo-note{margin-top:20px;padding:18px 22px;border-left:4px solid var(--orange);background:var(--surface-2);border-radius:var(--radius)}.demo-note p{color:var(--steel)}.demo-note a{color:var(--orange-dark);font-weight:700}
@media(max-width:600px){.form-row{grid-template-columns:1fr}}
.field-hint{display:block;margin-top:6px;color:var(--steel);font-size:.8rem;line-height:1.4}
.field-hint.is-warning{color:#b45309}
/* Contact page: form and info columns end on the same line */
@media(min-width:901px){.contact-layout{align-items:stretch}.contact-form-column,.contact-details{display:flex;flex-direction:column}.contact-form-column>.contact-form,.contact-details>div{flex:1 1 auto}}
.hero-content h1 .hero-title-line{white-space:nowrap;color:inherit!important}
/* Feature section with a full-bleed 3:2 photo instead of an icon */
.feature-section-image.is-photo{padding:0;min-height:0;aspect-ratio:3/2;overflow:hidden}
.feature-section-image.is-photo img{width:100%;height:100%;max-height:none;object-fit:cover}
/* Home hero: show the whole collage image, no caption overlay */
.hero-photo.hero-photo-full{min-height:0;height:auto;aspect-ratio:1264/816;background:#fff}
.hero-photo.hero-photo-full::after{display:none}
.hero-photo.hero-photo-full img{height:100%;min-height:0;object-fit:contain}
/* Desktop: hero image spans exactly from the top of the heading to the end of the intro paragraph */
@media(min-width:901px){
.hero-container:has(.hero-photo-full){row-gap:0;align-items:start}
.hero-container:has(.hero-photo-full)>.hero-content{display:contents}
.hero-container:has(.hero-photo-full)>.hero-content>*{grid-column:1}
.hero-container:has(.hero-photo-full)>.hero-content>h1{grid-row:1}
.hero-container:has(.hero-photo-full)>.hero-content>p{grid-row:2;margin-bottom:0}
.hero-container:has(.hero-photo-full)>.hero-image{grid-column:2;grid-row:1/3;align-self:stretch;display:flex;justify-content:flex-end;max-width:none}
.hero-photo.hero-photo-full{height:100%;width:auto;max-width:100%;aspect-ratio:1264/816}
.hero-photo.hero-photo-full img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
}
/* Contact page: WhatsApp line with icon */
.whatsapp-contact{margin-top:1rem}
.whatsapp-contact span{font-size:.9rem}
.whatsapp-link{display:inline-flex;align-items:center;gap:8px;color:#f97316;font-weight:600;text-decoration:none}
.whatsapp-icon{flex:0 0 auto;color:#25d366}
