:root{--paper:#faf9f6;--ink:#20282d;--muted:#626b70;--blue:#12628b;--line:#dcdedb;--max:1320px;color-scheme:light;font-family:"Lato","Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-size:17px;line-height:1.6}img{display:block;max-width:100%;height:auto}figure,p,blockquote{margin:0}a{color:var(--blue);text-underline-offset:5px}a:hover{text-decoration-thickness:2px}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #368ab8;outline-offset:5px}.wrap{max-width:var(--max);margin:auto;padding-inline:48px}.wm{font-family:"Roboto Mono",monospace;font-weight:700;white-space:nowrap}.wm sup{font-size:.45em;vertical-align:super}.skip{position:fixed;left:16px;top:-100px;padding:12px;background:white;z-index:30}.skip:focus{top:12px}h1,h2,h3{line-height:1.1;margin:0;font-weight:500;letter-spacing:-.03em;text-wrap:balance}h1{font-size:clamp(42px,5.1vw,72px);margin:16px 0 28px}h2{font-size:clamp(32px,3.7vw,48px)}h3{font-size:24px;letter-spacing:-.025em}.lead{font-size:21px;line-height:1.55;color:#505b61}.narrow{max-width:820px}.eyebrow,.status{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--blue);margin-bottom:20px}.muted,.caption{color:var(--muted)}.caption{font-size:13px;line-height:1.5}.top{position:sticky;top:0;background:rgba(250,249,246,.97);z-index:20;border-bottom:1px solid var(--line)}.top .wrap{display:flex;align-items:center;justify-content:space-between;min-height:88px;gap:24px}.top .wm{font-size:27px;color:var(--ink);text-decoration:none}.nav{display:flex;align-items:center;gap:28px}.nav>a{font-size:14px;text-decoration:none;color:var(--ink)}.nav>a[aria-current]{color:var(--blue);text-decoration:underline}.nav .btn{color:white;padding:11px 19px}.menu-btn{display:none;background:none;border:1px solid var(--line);padding:8px 16px;min-height:44px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:48px;border:1px solid var(--blue);background:var(--blue);color:white;border-radius:3px;padding:13px 22px;text-decoration:none;font-size:15px;font-weight:500;cursor:pointer}.btn:hover{background:#0c4f73}.btn:disabled{opacity:.45;cursor:not-allowed}.text-link{display:inline-block;font-size:15px;font-weight:500;text-decoration:none;padding-block:12px}.section{padding-block:112px}.section-heading{margin-bottom:40px}.section-heading p:last-child:not(.eyebrow){margin-top:20px;max-width:620px;color:var(--muted)}.hero{padding:76px 0 70px}.hero-grid{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:42px}.hero h1{font-size:clamp(42px,4.65vw,65px)}.hero-copy .lead{max-width:480px}.actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:32px}.hero-visual img{width:100%;height:550px;object-fit:cover;object-position:54% 50%}.hero-visual figcaption{font-size:12px;color:var(--muted);margin-top:14px}.sequence{display:grid;grid-template-columns:1fr 1fr;gap:30px}.sequence img{width:100%;height:340px;object-fit:cover}.sequence figcaption{position:relative;padding:24px 0 0 42px}.sequence figcaption>span{position:absolute;left:0;top:26px;font:12px "Roboto Mono",monospace;color:var(--blue)}.sequence h3{margin-bottom:12px}.sequence p{max-width:390px;color:var(--muted)}.follow-up{display:grid;grid-template-columns:1fr 1.6fr;gap:12px 48px;margin-top:48px;padding-top:32px;border-top:1px solid var(--line)}.follow-up p{color:var(--muted)}.follow-up a{grid-column:2;font-size:14px}.hardware{background:#07162c;color:#f5f6f7;padding:64px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.hardware-image img{height:660px;width:100%;object-fit:contain}.hardware .eyebrow,.hardware a{color:#91c5df}.capability{padding-top:30px;max-width:410px}.capability h3{font-size:22px;margin-bottom:10px}.capability p{color:#bfc9d3}.hardware .text-link{margin-top:24px}.origin{margin-top:30px;color:#bfc9d3;font:12px "Roboto Mono",monospace}.team{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin:44px 0 26px}.team img{width:100%;aspect-ratio:1;object-fit:cover;filter:grayscale(1);margin-bottom:22px}.team h3{font-size:23px;margin-bottom:10px}.team p{font-size:14px;line-height:1.7}.team p:last-child{margin-top:4px}.practice,.soft{background:#eeefeb}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.case-grid h3{font-size:32px;margin-bottom:20px}.case-grid p:not(.status){color:#505b61;max-width:440px}.case-grid a{display:inline-block;margin-top:24px;font-size:14px}.recognition{border-top:1px solid #d1d6d3;padding-top:24px;margin-top:48px;font-size:13px;color:var(--muted)}.invitation{padding:112px 0}.invitation h2{max-width:760px;margin-bottom:32px}.product-render{width:100%;max-height:550px;object-fit:contain;background:#000}.split .btn{margin-top:30px}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:48px}.three-col h3{margin-bottom:18px}.three-col p{color:var(--muted)}.note{margin-top:40px;max-width:850px;font-size:14px;color:var(--muted)}details{border-bottom:1px solid var(--line);padding:26px 0}details:first-of-type{margin-top:28px}summary{font-size:20px;cursor:pointer}details p,details a{margin-top:20px}details a{display:inline-block}.specs{display:grid;grid-template-columns:1fr 2fr;gap:18px;margin:30px 0}.specs dt{font-weight:500}.specs dd{margin:0;color:var(--muted)}.experience{padding-top:50px;margin-top:60px;border-top:1px solid var(--line)}.experience p{margin-top:20px}.pricing-intro{padding-top:70px}.pricing-intro h1{font-size:clamp(40px,4vw,56px)}.pricing-intro>.wrap>.lead{max-width:720px}.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:42px}.kit{padding:40px;background:white;border:1px solid var(--line);border-radius:5px;display:flex;flex-direction:column;align-items:flex-start}.kit h2{font-size:34px}.kit .eyebrow{font-size:10px}.price{font-size:48px;letter-spacing:-.04em;margin:24px 0}.price small{display:block;font-size:13px;color:var(--muted);letter-spacing:0}.kit ul{padding-left:20px;margin:26px 0 32px}.kit li{padding:5px 0}.kit .btn{margin-top:auto}.case-row{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;padding:56px 0;border-bottom:1px solid var(--line);scroll-margin-top:100px}.case-row:first-of-type{margin-top:30px}.case-row h2{font-size:32px}.case-row blockquote{border-left:2px solid var(--blue);padding-left:22px;margin:26px 0}.case-row cite{display:block;font-size:13px;color:var(--muted);font-style:normal;margin-top:14px}.case-row a{font-size:14px}.case-row+.caption{margin-top:30px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact h1{font-size:clamp(40px,4.5vw,62px)}.contact-email{margin:32px 0}.form{display:grid;gap:20px}.form label{display:grid;gap:8px;font-size:14px}.form input,.form textarea{width:100%;border:1px solid #c4c9c8;background:white;border-radius:3px;padding:12px;color:var(--ink)}.notice{padding:18px;background:#eeefeb;font-size:14px;color:#505b61}.form .btn{justify-self:start}footer{background:#0e1923;color:#b8c1c8;font-size:13px}footer>.wrap{display:flex;justify-content:space-between;gap:40px;padding-block:40px}footer .caption{color:#b8c1c8;max-width:800px}footer nav{display:flex;gap:24px;flex-wrap:wrap;margin-top:20px}footer a{color:#d0d9df}footer .logo-black{display:none}footer .logo-white{min-width:85px;max-width:110px}.coop{padding:36px 0;border-bottom:1px solid #303b45}.coop .kicker{font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:20px}.partners{display:flex;gap:28px;align-items:center;flex-wrap:wrap;padding:0;margin:0;list-style:none}.partners img{width:auto;max-width:100px;max-height:32px;object-fit:contain}.partners .tall{max-width:58px}.partners .chip{background:white;padding:3px}.partners .name{font-size:16px}.partners li{display:flex;align-items:center}
@media(min-width:1500px){.hero-visual img{height:610px}}
@media(max-width:1000px){.wrap{padding-inline:30px}.nav{gap:18px}.hero-grid{gap:26px}.hero-visual img{height:480px}.split{gap:40px}.team{gap:18px}.team h3{font-size:20px}.contact{gap:48px}.kit{padding:28px}}
@media(max-width:760px){html{scroll-padding-top:80px}.wrap{padding-inline:22px}.top .wrap{min-height:72px}.menu-btn{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:20px 22px;border-bottom:1px solid var(--line)}.nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.nav>a{padding:14px 10px}.nav .btn{margin-top:12px}.section,.invitation{padding-block:64px}.hero{padding:28px 0 30px}.hero-grid{grid-template-columns:1fr;gap:30px}.hero-visual{grid-row:1}.hero-visual img{height:290px;object-position:50% 57%}.hero-visual figcaption{display:none}.hero h1{font-size:44px;max-width:560px}.hero .eyebrow{margin-bottom:12px}.lead{font-size:19px}.actions{gap:10px 20px}.sequence,.split,.case-grid,.pricing-grid,.contact,.three-col{grid-template-columns:1fr}.sequence{gap:34px}.sequence img{height:260px}.follow-up{grid-template-columns:1fr;gap:18px}.follow-up a{grid-column:auto}.hardware{padding:42px 0 64px}.hardware-image img{height:460px}.hardware .split{gap:30px}.team{grid-template-columns:1fr 1fr;gap:32px 18px}.team h3{font-size:20px}.team p{font-size:12px}.case-grid{gap:40px}.case-row{grid-template-columns:1fr;gap:24px;padding:40px 0}.specs{grid-template-columns:1fr;gap:12px}.specs dd{margin-bottom:12px}.three-col{gap:32px}.product-render{max-height:450px}.pricing-grid{margin-top:32px}.kit{padding:28px}.contact{gap:40px}footer>.wrap{flex-direction:column}.partners{gap:24px}.partners img{max-width:80px;max-height:28px}.experience{margin-top:40px;padding-top:40px}.status{margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Product value, adoption routes and evidence */
.proof-strip{display:flex;align-items:center;gap:48px;padding:28px 0;border-block:1px solid var(--line)}.proof-strip>div{display:grid;gap:4px}.proof-strip strong{color:var(--blue);font-size:22px;font-weight:600}.proof-strip span,.proof-strip>a{font-size:13px}.proof-strip>a{margin-left:auto;max-width:230px}.adoption{background:#eef2f3}.status{display:inline-block;background:#e0ece7;color:#285c4a;padding:5px 9px;border-radius:3px;font-size:11px;letter-spacing:.09em}.status--planned{background:#f1e9db;color:#775a23}.deployment-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;list-style:none;padding:0;counter-reset:step;margin:40px 0}.deployment-flow li{border-top:2px solid var(--blue);padding-top:18px;counter-increment:step}.deployment-flow strong{display:block;font-size:21px;margin-bottom:12px}.deployment-flow strong:before{content:counter(step) ' · ';color:var(--blue)}.deployment-flow span{display:block;color:var(--muted)}.integration-quote{border-left:3px solid var(--blue);padding-left:24px;margin-top:40px}.integration-quote p{font-size:25px}.integration-quote cite{display:block;font-size:14px;font-style:normal;margin-top:12px;color:var(--muted)}.credential-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:44px}.credential-grid article{border-top:1px solid #b8c7cb;padding-top:24px}.credential-grid strong{display:block;font-size:32px;color:var(--blue);margin-bottom:20px;letter-spacing:-.04em}.credential-grid h3{font-size:20px;margin-bottom:14px}.credential-grid p{font-size:15px;color:var(--muted)}.experience-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;margin-top:36px}.experience-stats strong{display:block;font-size:42px;color:var(--blue);line-height:1.2}.experience-stats span{display:block;margin-top:10px;font-size:14px;color:var(--muted)}
@media(max-width:1000px){.credential-grid{grid-template-columns:repeat(2,1fr)}.proof-strip{gap:28px}}
@media(max-width:760px){.proof-strip{display:grid;grid-template-columns:1fr 1fr;gap:22px}.proof-strip>a{grid-column:1/-1;margin-left:0;max-width:none}.proof-strip strong{font-size:20px}.deployment-flow{grid-template-columns:1fr 1fr;gap:24px}.credential-grid{gap:32px 20px}.credential-grid strong{font-size:27px}.experience-stats{grid-template-columns:repeat(2,1fr);gap:30px}.integration-quote p{font-size:22px}}
@media(max-width:400px){.deployment-flow,.credential-grid{grid-template-columns:1fr}}
/* Keep organisation identity beside each use-case heading. */
.case-organisation{font-size:15px;font-weight:500;margin:14px 0 20px;color:var(--muted)}
.case-grid .case-organisation{margin-top:-8px;margin-bottom:18px}
.credential-grid .patent-reference{font-family:"Roboto Mono",monospace;font-size:14px;margin-bottom:10px;overflow-wrap:anywhere}
/* Shared brand lockup and meeting navigation. */
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-decoration:none;color:var(--ink);flex-shrink:0;padding-block:12px}
.top .brand>.wm{font-size:27px;line-height:1.2}
.brand-by{display:flex;align-items:center;gap:5px;font:11px/1.1 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--muted)}
.brand-by img{width:47px;height:auto}
.nav{gap:20px}.nav>a{white-space:nowrap}
.made-finland{display:flex;align-items:center;gap:10px;margin-top:24px;font-size:15px;font-weight:500}.made-finland svg{border:1px solid #d4d9dd}
.case-label{font-weight:600;margin-top:24px;margin-bottom:8px}
.case-row>div>p:first-child>strong{display:block;margin-bottom:8px}
.pricing-notes{grid-template-columns:repeat(2,1fr)}
@media(min-width:761px) and (max-width:1000px){.top .wrap{gap:15px;padding-inline:22px}.nav{gap:13px}.nav>a{font-size:13px}.nav .btn{padding-inline:12px}}
@media(max-width:760px){.nav{gap:0}.pricing-notes{grid-template-columns:1fr}.top .brand>.wm{font-size:24px}.brand-by img{width:40px}}
/* Header lockup: the trimmed Ai2Ai logo sits on the same baseline as "by" */
.brand-by{align-items:baseline}.brand-by img{width:44px}
@media(max-width:760px){.brand-by img{width:40px}}
/* Home: Why PALL0 cards and quotes */
.why-heading{padding-bottom:28px;border-bottom:1px solid var(--line)}
.why-cards article{background:white;border:1px solid var(--line);border-radius:5px;padding:28px}
.why-cards h3{font-size:22px;margin-bottom:12px}
.voices{display:grid;grid-template-columns:1fr 1fr;gap:44px;margin-top:48px}
.voices blockquote{border-left:2px solid var(--blue);padding-left:22px}
.voices blockquote p{font-size:19px;line-height:1.5}
.voices cite{display:block;font-size:13px;color:var(--muted);font-style:normal;margin-top:14px}
/* About: exploded render first, on the navy of the platform section */
.hero-render{background:#07162c;border-radius:5px;display:flex;justify-content:center;padding:28px}
.hero-render img{height:520px;width:auto;mix-blend-mode:lighten}
.hardware-image--closeup img{height:520px;mix-blend-mode:lighten}
/* Customer cases: photo under each case title */
.case-photo{margin-top:24px}.case-photo img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:5px}
.case-photo figcaption{font-size:12px;color:var(--muted);margin-top:8px}
/* Contact: meeting booking placeholder */
.meeting-placeholder{margin:0 0 28px}.meeting-placeholder .caption{margin-top:8px}
@media(max-width:760px){.voices{grid-template-columns:1fr;gap:28px}.hero-render img{height:400px}.hardware-image--closeup img{height:340px}}
/* Home hero: recognition visible in the first screen */
.hero-proof{margin-top:30px;padding-top:24px;border-top:1px solid var(--line);display:grid;gap:14px}
.hero-award{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink)}
.hero-award img{width:64px;background:white;border:1px solid var(--line);border-radius:3px;padding:4px 6px}
.hero-award span{display:grid;font-size:13px;color:var(--muted);line-height:1.4}.hero-award strong{color:var(--ink);font-size:15px;font-weight:600}
.hero-proof ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 22px;font-size:13px;color:var(--muted)}
.hero-proof ul strong{color:var(--blue);font-weight:600}
/* Home: custom app steps */
.custom-steps{list-style:none;margin:0 0 56px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.custom-steps li{position:relative;padding:24px 0 0 42px;border-top:1px solid var(--line)}
.custom-steps span{position:absolute;left:0;top:26px;font:12px "Roboto Mono",monospace;color:var(--blue)}
.custom-steps h3{font-size:22px;margin-bottom:10px}.custom-steps p{color:var(--muted)}
.alt-route h3{font-size:26px}
/* Home: What sets PALL0 apart */
.apart-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
.apart-grid article{background:white;border:1px solid var(--line);border-radius:5px;padding:28px}
.apart-grid h3{font-size:22px;margin-bottom:12px}.apart-grid p{color:var(--muted)}
.apart-quote{background:#1d3a52;color:white;border-radius:5px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;gap:18px}
.apart-quote p{font-size:26px;line-height:1.25;letter-spacing:-.02em;color:white}
.apart-quote cite{font-style:normal;font-size:14px;color:#a9c3d6}
.apart-line{margin-top:32px;padding-top:24px;border-top:1px solid var(--line);font-weight:600}
/* Pricing: custom app next to the price */
.custom-app{background:#eef4f8;border-left:3px solid var(--blue);padding:14px 16px}
.custom-app strong{display:block;color:var(--ink);margin-bottom:4px}
@media(max-width:1000px){.apart-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.apart-grid,.custom-steps{grid-template-columns:1fr}.custom-steps{gap:22px}.apart-quote p{font-size:22px}}
@media(max-width:760px){.hero-copy{display:flex;flex-direction:column}.hero-proof{order:-1;margin:0 0 22px;padding:0 0 18px;border-top:0;border-bottom:1px solid var(--line)}}
/* Home: compact "What sets PALL0 apart" */
.why-compact{padding-block:80px}
.why-compact .section-heading{margin-bottom:28px}.why-compact h2{font-size:clamp(28px,3vw,38px)}
.apart-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line)}
.apart-list li{padding:22px 20px 0 0}.apart-list li+li{padding-left:20px;border-left:1px solid var(--line)}
.apart-list h3{font-size:17px;letter-spacing:-.01em;margin-bottom:8px}.apart-list p{font-size:14px;line-height:1.5;color:var(--muted)}
.apart-note{margin-top:28px;font-size:15px}.apart-note span{color:var(--muted);font-size:13px;margin-left:8px}
#interaction .voices{margin-top:40px}
@media(max-width:1000px){.apart-list{grid-template-columns:repeat(3,1fr);row-gap:22px}.apart-list li:nth-child(4){border-left:0;padding-left:0}}
@media(max-width:760px){.apart-list{grid-template-columns:1fr}.apart-list li,.apart-list li+li{padding:16px 0;border-left:0;border-bottom:1px solid var(--line)}}
.meeting-sub{margin-top:12px;font-size:15px;color:var(--ink);max-width:420px}
/* Pricing: custom-app story above the kits */
.custom-block{margin-top:56px;padding-top:40px;border-top:1px solid var(--line)}
.custom-block .section-heading{margin-bottom:28px}.custom-block h2{font-size:clamp(28px,3vw,38px)}
.custom-block .custom-steps{margin-bottom:8px}
.apart-list a{font-size:13px;white-space:nowrap}
/* Home hero: discreet recognition, in the style of the earlier proof strip */
.hero-proof--quiet{display:flex;align-items:center;gap:36px;flex-wrap:wrap;margin-top:32px;padding-top:22px}
.hero-proof--quiet>div{display:grid;gap:2px}.hero-proof--quiet strong{color:var(--blue);font-size:18px;font-weight:600}
.hero-proof--quiet span,.hero-proof--quiet a{font-size:13px}.hero-proof--quiet span{color:var(--muted)}
@media(max-width:760px){.hero-proof--quiet{gap:24px}}
/* Contact: meeting note in caption style, address low and quiet */
.meeting-placeholder .caption{margin-top:10px;max-width:400px}
.contact-address{margin-top:56px}
@media(max-width:760px){.hero-proof--quiet{margin:0 0 22px;padding:0 0 18px}}
/* Home: small PALL0 on its side beside the differentiation heading */
.heading-ball{display:inline-block;width:.95em;height:auto;margin-left:.35em;vertical-align:-.12em;transform:rotate(-12deg);filter:drop-shadow(0 3px 5px rgba(14,25,35,.18))}
/* Pricing: tighter custom-app paragraph */
.custom-block .section-heading p:last-child:not(.eyebrow){margin-top:12px;line-height:1.5;max-width:640px}
.heading-ball{filter:none;transform:none;width:1em;margin-left:.3em;vertical-align:-.14em}
/* Keep the small ball on the same line as "apart." */
.nowrap{white-space:nowrap}.heading-ball{height:1em;aspect-ratio:197/200}
/* Home: slim recognition strip directly under the hero, within the first screen on laptops */
.hero{padding-bottom:32px}
@media(max-width:760px){.hero{padding-bottom:24px}}
/* Home: more discreet recognition strip */
.proof-strip--quiet{padding:18px 0;gap:40px}
.proof-strip--quiet strong{font-size:15px;font-weight:600;color:var(--ink)}
.proof-strip--quiet span{font-size:12px;color:var(--muted)}
.proof-strip--quiet>a{font-size:12px}
@media(max-width:760px){.proof-strip--quiet strong{font-size:15px}}
.proof-strip--quiet strong{font-size:14px;font-weight:500}
@media(max-width:760px){.proof-strip--quiet strong{font-size:14px}}
.proof-strip>a{white-space:nowrap;max-width:none}
/* Home: give the two quotes their own clear band under "A companion between appointments" */
#interaction .voices{margin-top:64px;padding-top:40px;border-top:1px solid var(--line);gap:64px}
#interaction .voices blockquote p{font-size:18px;line-height:1.5}
@media(max-width:760px){#interaction .voices{margin-top:44px;padding-top:28px;gap:32px}}
/* Home: clearer break between the two image steps and "A companion between appointments" */
#interaction .follow-up{margin-top:80px;padding-top:44px}
@media(max-width:760px){#interaction .follow-up{margin-top:52px;padding-top:32px}}
/* Home: quotes sit closer to "A companion between appointments" */
#interaction .voices{margin-top:32px;padding-top:28px}
@media(max-width:760px){#interaction .voices{margin-top:28px;padding-top:24px}}
/* Home: three quiet practical benefits under the rehabilitation intro */
.mini-benefits{list-style:none;margin:28px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:14px 40px}
.mini-benefits li{display:grid;gap:2px;font-size:14px;color:var(--muted);padding-left:14px;border-left:2px solid var(--blue)}
.mini-benefits strong{font-size:15px;font-weight:600;color:var(--ink)}
@media(max-width:760px){.mini-benefits{flex-direction:column;gap:14px}}
#interaction .section-heading>p:not(.eyebrow){margin-top:20px;max-width:620px;color:var(--muted)}
/* Home: quiet label above the three benefits */
#interaction .section-heading>p.benefits-label{margin:36px 0 0;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--muted);max-width:none}
.benefits-label .wm{font-weight:700;letter-spacing:.06em}
.benefits-label+.mini-benefits{margin-top:14px}

/* Wider view of the seated portrait, with the device just right of center. */
.hero-photo{position:relative;overflow:hidden;aspect-ratio:5/4}
.hero-visual .hero-photo img{position:absolute;left:-45%;top:-10%;width:145%;max-width:none;height:auto}


/* Contact: consistent body copy and two clearly separated ways to get in touch. */
.contact{align-items:start}
.contact-copy h1{font-size:clamp(36px,4vw,48px);margin:0 0 24px}
.contact-intro,.contact-booking p{font-size:17px;line-height:1.65;color:var(--muted);max-width:460px}
.contact-intro p+p{margin-top:16px}
.contact-booking{margin-top:32px;padding-top:28px;border-top:1px solid var(--line)}
.contact-booking h2,.contact .form h2{font-size:21px;line-height:1.3;letter-spacing:-.02em;font-weight:500}
.contact-booking p{margin:12px 0 20px}
.contact-details{margin-top:32px;font-size:14px;line-height:1.6;color:var(--muted)}
.contact-details p+p{margin-top:16px}
.contact .form h2{margin-bottom:4px}

@media(min-width:761px){.hero-grid{grid-template-columns:1fr 1.18fr;align-items:start}}
/* Home hero: crossfade between the two photos (site.js toggles .show-alt every 8 s) */
.hero-visual .hero-photo img.hero-alt{left:0;top:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;opacity:0;transition:opacity 1s ease}
.hero-photo.show-alt img.hero-alt{opacity:1}
@media(prefers-reduced-motion:reduce){.hero-visual .hero-photo img.hero-alt{transition:none}}
