.interior-page .hero { background:#f3faff; min-height:0; padding:70px 0; }
.interior-page .hero__content { grid-template-columns:1.12fr .88fr; gap:55px; }
.interior-page .hero__title { font-size:clamp(34px,4.2vw,58px); font-weight:750; letter-spacing:-.045em; line-height:1.15; margin-bottom:25px; }
.interior-page .hero__subtitle { font-size:19px; line-height:1.65; max-width:640px; }
.interior-page .hero__actions { margin-top:28px; gap:16px; }
.interior-page .hero__content > div > img,.interior-page .hero__content > div > picture > img { width:100%; max-width:380px; max-height:300px; background:transparent!important; object-fit:contain; border:0; box-shadow:none; }
.interior-page .hero__content > div > picture:has(.foodpilot-preview) { display:block; }
.interior-page .hero__content img.foodpilot-preview { max-width:650px; max-height:none; }
.interior-page .card { border:1px solid #dfebf2; border-radius:16px; background:#fff; box-shadow:none; padding:26px; }
.interior-page .card:hover { transform:none; }
.interior-page .cards .card { padding:10px; }
.interior-page .card__thumb { background:#f6faff; border:0; box-shadow:none; border-radius:12px; }
.interior-page .card__thumb img { object-fit:contain; }
.interior-page .grid-2,.interior-page .grid-3 { gap:35px; }
.interior-page .list { color:#526887; font-size:16px; padding:0; line-height:1.85; }
.interior-page .list li { display:block; position:relative; padding-inline-start:30px; margin-bottom:12px; overflow-wrap:anywhere; }
.interior-page .list li::before { content:''; position:absolute; inset-inline-start:0; top:5px; width:20px; height:20px; margin:0; background:url('../img/icons/check.svg') center / contain no-repeat; filter:invert(38%) sepia(98%) saturate(1868%) hue-rotate(177deg) brightness(93%) contrast(102%); }
.interior-page .services-grid { gap:24px; }
.interior-page .service-item { background:#fff; border:1px solid #e0eaf2; box-shadow:none; padding:28px; border-radius:16px; }
.interior-page .tech-icons { gap:22px; }
.interior-page .tech-icon { background:#f4faff; box-shadow:none; }
.legal-page main > .section { max-width:930px; margin:auto; padding:32px 24px 64px; }
.legal-page main > .section .container { padding:0; }
.legal-page main > .section p,.legal-page main > .section li { font-size:16px; line-height:1.9; color:#51627a; }
.legal-page main > .section .section__title { font-size:28px; margin-top:20px; letter-spacing:-.03em; }
.legal-page .hero { padding:65px 0; }
.legal-page .hero .container { max-width:980px; }
.legal-page .hero__title { font-size:clamp(32px,4vw,52px); }
.legal-page p,.legal-page li,.legal-page h1,.legal-page h2,.legal-page h3 { overflow-wrap:anywhere; }
.contact-page .hero__content { display:block; text-align:center; }
.contact-page .hero__content > div:last-child { display:none; }
.contact-page .hero__subtitle { margin-inline:auto; }
.contact-page .hero__actions { justify-content:center; }
.contact-page #form { padding-top:60px; }
.contact-page #contactForm { padding:32px; max-width:780px!important; border-color:#dae7f0; box-shadow:0 12px 45px #0b284708; }
form label { font-size:14px; font-weight:550; color:#294664; }
form input,form select,form textarea { font:inherit; border-radius:10px!important; border:1px solid #c7d6e3!important; padding:13px 15px!important; background:#fff!important; color:#142b45!important; min-height:48px; width:100%; }
form input:focus,form select:focus,form textarea:focus { outline:2px solid #008ee4; outline-offset:2px; }
form textarea { min-height:150px; resize:vertical; }
form input::placeholder,form textarea::placeholder { color:#8292a6; }
form button[disabled] { cursor:wait; opacity:.65; transform:none; }
.quote-page .quote-hero { background:#f3faff; padding:65px 0 50px; }
.quote-page .quote-hero__title { font-size:clamp(34px,4vw,55px); font-weight:750; letter-spacing:-.045em; margin:0 0 22px; line-height:1.15; text-transform:none; }
.quote-page .quote-hero__subtitle { font-size:18px; color:var(--muted-foreground); max-width:650px; margin:0 auto; }
.quote-page .quote-form-section { background:#fff; padding:50px 0 80px; }
.quote-page .quote-form { max-width:780px; padding:32px; margin:auto; border:1px solid #dae7f0; border-radius:18px; box-shadow:0 12px 45px #0b284708; }
.quote-page .form-group label { font-size:14px; font-weight:550; letter-spacing:0; text-transform:none; }
.quote-page .form-row { gap:24px; }
.quote-page .quote-submit-btn { font-size:15px; padding:17px; text-transform:none; letter-spacing:0; }
.quote-page .form-group { margin-bottom:24px; }
.quote-page #quoteFormStatus { max-width:780px; margin:0 auto 24px; }
.screenshot-gallery { display:flex; gap:16px; overflow-x:auto; padding:10px 4px 20px; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:#9cc9e5 #eef6fc; }
.screenshot-trigger { flex:0 0 auto; scroll-snap-align:start; padding:0; border:1px solid #c9dce9; background:#fff; border-radius:14px; overflow:hidden; max-width:100%; box-shadow:0 5px 15px #102d4910; cursor:zoom-in; }
.screenshot-trigger img { height:360px; width:auto; object-fit:contain; max-width:none; }
.screenshot-gallery--wide .screenshot-trigger { flex-basis:calc(100% - 24px); }
.screenshot-gallery--wide img { width:100%; height:auto; max-height:440px; object-fit:contain; }
.screenshot-gallery--tablet img { height:430px; }
.screenshot-gallery--single { justify-content:center; }
.ecosystem-page #apps > .container > article { padding:55px 0; border-top:1px solid #d9e7ee; }
.ecosystem-page #apps article .grid-2 { grid-template-columns:.85fr 1.15fr; align-items:start; gap:50px; }
.ecosystem-page #apps article .section__title { font-size:32px; }
.ecosystem-page #apps article .section__subtitle { font-size:17px; }
.nearbeam-page .nb-hero { background:#f0f8ff; color:var(--foreground); padding:70px 0; }
.nearbeam-page .nb-hero__title { font-size:clamp(34px,4vw,58px); color:var(--foreground); letter-spacing:-.045em; }
.nearbeam-page .nb-hero__title span { background:none; color:var(--primary); -webkit-text-fill-color:var(--primary); }
.nearbeam-page .nb-hero__tagline { color:#0073bf; }
.nearbeam-page .nb-hero__desc { color:var(--muted-foreground); font-size:18px; }
.nearbeam-page .nb-hero__badge { background:#fff; border:1px solid #cddfeb; color:#355977; }
.nearbeam-page .nb-hero__img img { max-width:none; width:100%; border-radius:16px; border:1px solid #c9dce9; filter:none; box-shadow:0 12px 30px #244b7210; }
.nearbeam-page .nb-privacy { background:#edf7ff; color:var(--foreground); }
.nearbeam-page .nb-privacy__text { color:var(--muted-foreground); }
.nearbeam-page .nb-screen-share__visual { background:#edf7ff; color:var(--foreground); border:1px solid #d5e6f1; }
.nearbeam-page .nb-screen-share__visual-sub,.nearbeam-page .nb-screen-share__latency small { color:var(--muted-foreground); }
.nearbeam-page .nb-screen-share__latency { background:#fff; color:#0073bf; }
.nearbeam-page .nb-download { background:#10263f; }
.nearbeam-page .nb-stat { color:#0073bf; }
.core-hero { background:#f2f9ff; }
.screenshot-dialog { position:fixed; inset:0; width:100vw; height:100dvh; max-width:none; max-height:none; margin:0; padding:70px 24px 28px; border:0; background:#0d1934ed; color:#fff; overflow:auto; }
.screenshot-dialog::backdrop { background:#0d1934; }
.screenshot-dialog__content { display:flex; flex-direction:column; align-items:center; min-height:100%; justify-content:center; }
.screenshot-dialog__image { max-width:100%; max-height:calc(100dvh - 140px); object-fit:contain; border-radius:8px; box-shadow:0 10px 40px #0004; }
.screenshot-dialog__caption { margin:20px 0 0; text-align:center; font-size:14px; color:#e8f4ff; }
.screenshot-dialog__close { position:fixed; top:18px; right:18px; z-index:2; width:44px; height:44px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:#fff; box-shadow:0 4px 25px #0004; }
.screenshot-dialog__close img { width:22px; height:22px; }
@media(max-width:900px) {
 .interior-page .hero__content,.ecosystem-page #apps article .grid-2 { grid-template-columns:1fr; }
 .interior-page .hero__content > div:last-child { max-width:600px; margin:auto; }
 .interior-page .grid-2,.interior-page .grid-3 { grid-template-columns:1fr; }
 .ecosystem-page #apps article .grid-2 { gap:24px; }
}
@media(max-width:600px) {
 .interior-page .hero,.nearbeam-page .nb-hero { padding:50px 0; }
 .interior-page .hero__title { font-size:36px; }
 .interior-page .hero__subtitle { font-size:17px; }
 .interior-page .section__title { font-size:30px; }
 .interior-page .hero__content { gap:30px; }
 .quote-page .quote-hero { padding:48px 0 36px; }
 .quote-page .quote-form { padding:22px; }
 .quote-page .quote-form-section { padding:30px 0 55px; }
 .quote-page .form-row { grid-template-columns:1fr; gap:0; }
 .contact-page #contactForm { padding:22px; }
 .contact-page #contactForm > div:first-child { grid-template-columns:1fr!important; gap:18px!important; }
 .screenshot-trigger img { height:350px; }
 .screenshot-gallery--tablet img { height:380px; }
 .screenshot-gallery--wide img { height:auto; }
 .ecosystem-page #apps > .container > article { padding:40px 0; }
 .nearbeam-page .nb-hero__grid { grid-template-columns:1fr; gap:30px; }
 .nearbeam-page .nb-hero__title { font-size:36px; }
 .screenshot-dialog { padding:75px 12px 24px; }
 .screenshot-dialog__image { max-height:calc(100dvh - 150px); }
}
