/* ADAM — reversible premium layer. Loaded last. Homepage hero/comparison untouched.
   Route attributes prevent inner-page composition rules leaking into the hero. */
:root{--pr-ink:#1c2229;--pr-blue:#1f4f86;--pr-ice:#edf5fd;--pr-rule:#dce7f1;--pr-muted:#596573}
body:not([data-page="/"]) {--mist:#f4f8fd;--mist-2:#e7f0fa;--rule:#dce7f1;--rule-2:#cbd9e8;--peri-50:#f4f8fd;--peri-100:#e5effa;--peri-300:#bfd6ef;--peri-500:#6b9aca;--peri-700:#356a9d;--max:1280px}
body:not([data-page="/"]) h1,body:not([data-page="/"]) h2,body:not([data-page="/"]) h3{font-stretch:100%;text-wrap:balance}
body:not([data-page="/"]) .d1,body:not([data-page="/"]) .phero h1{font-size:clamp(38px,4.25vw,61px);line-height:1.065;letter-spacing:-.045em;font-weight:500;max-width:16em}
body:not([data-page="/"]) .h-lg,body:not([data-page="/"]) .d2{line-height:1.13;letter-spacing:-.035em}
body:not([data-page="/"]) .phero{padding-top:55px;padding-bottom:64px}
body:not([data-page="/"]) .phero .lede{font-size:19px;line-height:1.58;max-width:40em}
body:not([data-page="/"]) .section{padding:clamp(56px,6.5vw,92px) 0}
body:not([data-page="/"]) .section.tight{padding:44px 0 60px}
body:not([data-page="/"]) .sect{padding-top:clamp(64px,6.5vw,100px)}
body:not([data-page="/"]) .p-hero{padding-top:48px;position:relative;isolation:isolate;gap:64px;min-height:490px}
body:not([data-page="/"]) .p-hero:before{content:"";position:absolute;z-index:-1;inset:-70px -5vw -20px;background:radial-gradient(ellipse at 78% 40%,#dcecfb90,transparent 64%);pointer-events:none}
body:not([data-page="/"]) .p-hero .actions{gap:16px}
body:not([data-page="/"]) .p-hero .btn-quiet{background:transparent;box-shadow:none;padding-left:0;padding-right:0;border-radius:0;border-bottom:1px solid #9bb6d0;min-height:42px}
body:not([data-page="/"]) .p-hero .btn-quiet:hover{color:var(--pr-blue);border-bottom-color:var(--pr-blue)}
/* Official product: studio lighting across an open field, not a blue tile. */
body[data-page="/hub/"] .p-visual{background:radial-gradient(ellipse at 50% 57%,#cfe4f999 0%,#e9f4ff66 44%,transparent 72%);border-radius:0;aspect-ratio:1.2;overflow:visible}
body[data-page="/hub/"] .p-visual:before{content:"";position:absolute;left:8%;right:8%;top:70%;height:18%;background:radial-gradient(ellipse,#8caed72b,transparent 68%);transform:scaleY(.45);pointer-events:none}
body[data-page="/hub/"] .p-visual .hub{width:62%;max-width:360px;margin-top:-3%;position:relative;z-index:1}
body[data-page="/hub/"] .p-visual img{width:100%;height:auto}
body[data-page="/hub/"] .p-visual figcaption{bottom:6px;left:0;right:0;gap:0;font-size:13px;color:#526b83;line-height:1.45}
body[data-page="/hub/"] .p-visual figcaption span{flex:1;padding:0 12px;text-align:center;border-left:1px solid #c7daed}
body[data-page="/hub/"] .p-visual figcaption span:first-child{border-left:0}
.routine{gap:30px}.routine li{border-top-color:#cadced}.routine .when{color:var(--pr-blue)}
.why .ans-list li:before{background:var(--pr-blue)}
/* Reading anatomy: actual semantic dl stays intact, never a printed-book asset. */
body[data-page="/integration/"] .anat{border-radius:14px;background:#ffffffee;box-shadow:0 1px 0 #ffffff,0 0 0 1px #d8e6f3,0 22px 45px -25px #4876a44a;transform:none}
body[data-page="/integration/"] .anat-top{padding:24px 24px 19px;background:linear-gradient(150deg,#f9fcff,#e7f1fc);border-bottom:1px solid var(--pr-rule)}
body[data-page="/integration/"] .anat-top p{font-size:13px;color:#45698c;margin-bottom:14px}
body[data-page="/integration/"] .anat dl{padding:7px 24px 14px}
body[data-page="/integration/"] .anat dl>div{padding:14px 0;font-size:14px;grid-template-columns:1fr 1.8fr;gap:18px}
body[data-page="/integration/"] .anat dd{font-weight:400;line-height:1.55;color:var(--pr-ink)}
body[data-page="/integration/"] .anat-note{padding:0 24px 22px;line-height:1.55}
body[data-page="/integration/"] .sec2{gap:22px}.sec2>div{padding:28px;border:1px solid var(--pr-rule);border-radius:14px}.sec2 .sec-now{background:#f0f6fd}
.split:not(.rev)>div:has(>h3){border-top:1px solid #c9daeb;padding-top:22px}
.matrix{font-size:15px}.matrix thead th{background:#f4f8fd;color:#44637f}.matrix th,.matrix td{border-color:var(--pr-rule)}
.matrix .both{color:var(--pr-blue)}
/* Distinct open illustrations for Company / Devices / Solutions overview. */
.pr-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:48px;align-items:center}
.pr-art{position:relative;min-height:330px;isolation:isolate;pointer-events:none}
.pr-art:before{content:"";position:absolute;inset:-25px;background:radial-gradient(ellipse at 65% 58%,#cde3f977,transparent 67%);z-index:-1}
.pr-art img{position:absolute;width:190px;height:auto;left:8%;bottom:16px;filter:drop-shadow(0 10px 15px #688eb31c)}
.pr-art .pr-sheet{position:absolute;right:0;top:18px;width:66%;padding:20px 22px 14px;background:#fffffff5;border:1px solid #d5e5f3;border-radius:12px;box-shadow:0 15px 28px -19px #597b9d55}
.pr-art .pr-sh{font-size:13px;font-weight:500;color:var(--pr-blue);margin:0 0 8px}
.pr-art .pr-sheet ul{list-style:none;margin:0;padding:0}
.pr-art .pr-sheet li{font-size:15px;color:var(--pr-ink);padding:9px 0 9px 18px;border-top:1px solid #e3edf7;position:relative}
.pr-art .pr-sheet li:before{content:"";position:absolute;left:0;top:50%;width:6px;height:6px;margin-top:-3px;border-radius:50%;background:#7fa6cf}
.pr-art img{z-index:2}
.pr-art.pr-device{min-height:310px}
.pr-device img{width:115%;max-width:none;left:-10%;bottom:0;filter:none;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
body[data-page="/solutions/"] .rows a{grid-template-columns:1fr 1.35fr 32px;min-height:120px;padding:26px 12px;transition:background .2s}
body[data-page="/solutions/"] .rows a:hover{background:#f6faff}
/* Solutions: grounded product and client destination on one continuous surface. */
.sol-visual{position:relative;min-height:345px;background:radial-gradient(ellipse at 48% 63%,#d6e8fa99,transparent 69%);border:0;border-radius:0}
.sol-visual .sol-hub{position:absolute;bottom:13%;left:7%;width:35%;max-width:190px;z-index:2}
.sol-visual .sol-hub img{filter:none;width:100%;height:auto}
.sol-visual .sol-card{position:absolute;top:10%;right:0;width:68%;border:1px solid #cbdeef;background:#fffffff5;border-radius:12px;box-shadow:0 19px 29px -25px #537aa766;z-index:1}
.sol-row{border-color:#e3edf7}.sol-f{color:var(--pr-blue)}
/* Resource hub: an editorial feature, with real product art and intact article text. */
body[data-page="/resources/"] .phero{padding-bottom:35px}
body[data-page="/resources/"] .res{gap:26px 32px}
body[data-page="/resources/"] .res a.feature{position:relative;isolation:isolate;overflow:hidden;min-height:300px;padding:42px 44px;grid-template-columns:1.3fr .8fr;gap:12px 35%;background:linear-gradient(115deg,#f3f8fe,#e2effc);border-radius:18px}
body[data-page="/resources/"] .res a.feature>*:not(.pr-resource-art){position:relative;z-index:2;grid-column:1;grid-row:auto;align-self:auto}
body[data-page="/resources/"] .res a.feature h3{max-width:21em;font-size:32px}
body[data-page="/resources/"] .res a.feature p{font-size:16px;line-height:1.6;max-width:30em}
.pr-resource-art{position:absolute;right:5%;top:50%;transform:translateY(-50%);width:27%;height:78%;max-height:300px;pointer-events:none;background:url('/assets/hub/hub-white.png') center/contain no-repeat;filter:drop-shadow(0 12px 13px #789dc422)}
.pr-resource-art:before{content:"";position:absolute;inset:13% 0 24%;z-index:-1;background:radial-gradient(ellipse,#bcdaf88a,transparent 70%)}
body[data-page="/resources/"] .res>a:not(.feature){padding:23px 0 28px;gap:12px}
body[data-page="/resources/"] .res .cat{font-size:12px;letter-spacing:.035em}
body[data-page="/resources/"] .res h3{font-size:21px;line-height:1.3;font-weight:500}
/* Long-form: preserve every paragraph, source, heading and table. */
body[data-page^="/resources/"]:not([data-page="/resources/"]) .phero{padding-bottom:46px}
.article .toc{padding:15px 0;border-top:1px solid #ccdeee}
.article .toc a{min-height:40px;padding-top:10px;padding-bottom:10px}
.article .prose{font-size:18px;line-height:1.78;max-width:720px}
.article .prose h2{padding-top:12px;border-top:1px solid #e2ebf4;line-height:1.2}
.article .prose table{font-size:15px}.article .prose th{background:#f4f8fd;padding:14px}.article .prose td{padding:14px}
.keypoint{background:linear-gradient(125deg,#f3f8fe,#eaf3fc);box-shadow:inset 2px 0 0 #5684b2;border-radius:10px}
.qa-list{border-top-color:#cadbec}.qa-list .qa summary{min-height:58px;line-height:1.45}.qa-group{margin-top:40px}
/* Contact: premium through calm proportions and field clarity, not added promises. */
body[data-page="/contact/"] .contact-grid{gap:34px 72px;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
body[data-page="/contact/"] .c-intro h1{max-width:10em}
body[data-page="/contact/"] .c-next{max-width:430px}
body[data-page="/contact/"] .c-next .steps li{grid-template-columns:32px 1fr;gap:6px 14px;padding:20px 0}.c-next .steps .num{grid-column:1;grid-row:1/span 2}.c-next .steps h3,.c-next .steps p{grid-column:2}
.form{border-radius:16px;box-shadow:0 0 0 1px #dce8f4,0 25px 50px -40px #4875a266;padding:32px;gap:20px}
.field input,.field select,.field textarea{min-height:48px;border-radius:8px;border-color:#cadbeb}
.seg2 label{background:#fbfdff;border-color:#d4e3f0;border-radius:10px}.seg2 label:has(input:checked){background:#edf5ff;border-color:#719cc6}.seg2 input{accent-color:var(--pr-blue)}
body[data-page^="/legal/"] .prose{max-width:760px;font-size:17px}
body:not([data-page="/"]) .cta-band,body:not([data-page="/"]) .final{background:linear-gradient(125deg,#f4f9fe,#e9f3fd);border-top:1px solid #e1ebf6}
body:not([data-page="/"]) .footer{margin-top:70px}
body:not([data-page="/"]) main:has(> .cta-band:last-child)+.footer,body:not([data-page="/"]) main:has(> .final:last-child)+.footer{margin-top:0}
.footer a{display:inline-block;min-height:28px}.footer-base a{min-height:32px}
@media(max-width:1050px){.pr-hero-grid{gap:28px;grid-template-columns:1.2fr .8fr}.pr-art img{width:150px}.sol-visual{min-height:300px}body:not([data-page="/"]) .p-hero{gap:36px}body[data-page="/resources/"] .res a.feature{gap:12px 20%;padding:32px}.pr-resource-art{right:0;width:31%}}
@media(max-width:900px){.pr-hero-grid{grid-template-columns:1fr}.pr-art{display:none}body[data-page="/devices/"] .pr-art{display:block;min-height:230px;max-width:480px;width:100%;margin:auto}body[data-page="/devices/"] .pr-device img{position:relative;width:100%;left:0;bottom:auto}body:not([data-page="/"]) .p-hero{grid-template-columns:1fr;gap:28px;min-height:0}body[data-page="/hub/"] .p-visual{width:100%;max-width:540px;margin:auto;aspect-ratio:1.6}body[data-page="/integration/"] .anat{max-width:630px;width:100%;margin:auto}.sol-visual{max-width:540px;width:100%;margin:auto}body[data-page="/contact/"] .contact-grid{grid-template-columns:1fr}.form{padding:26px}body[data-page="/resources/"] .res a.feature{gap:12px 0;grid-template-columns:1fr}.pr-resource-art{right:3%;width:30%}body[data-page="/resources/"] .res a.feature h3,body[data-page="/resources/"] .res a.feature p{max-width:64%}}
@media(max-width:640px){body:not([data-page="/"]) .d1,body:not([data-page="/"]) .phero h1{font-size:38px;line-height:1.08;letter-spacing:-.04em}body:not([data-page="/"]) .phero{padding-top:34px;padding-bottom:40px}body:not([data-page="/"]) .phero .lede{font-size:17px}body:not([data-page="/"]) .p-hero{padding-top:32px}body[data-page="/hub/"] .p-visual .hub{width:47%;max-width:220px}body[data-page="/hub/"] .p-visual figcaption{font-size:11px}body[data-page="/hub/"] .p-visual figcaption span{padding:0 6px}body[data-page="/integration/"] .anat dl>div{grid-template-columns:1fr 1.65fr;font-size:13px;gap:12px}.sol-visual{min-height:260px}.sol-visual .sol-card{width:70%;top:4%}.sol-visual .sol-hub{bottom:7%;left:3%;width:33%}body[data-page="/resources/"] .res a.feature{padding:28px 24px;min-height:270px}body[data-page="/resources/"] .res a.feature h3{font-size:27px;max-width:100%}body[data-page="/resources/"] .res a.feature p{max-width:100%}.pr-resource-art{display:none}.form{padding:24px 20px}.sec2>div{padding:22px}.article .prose{font-size:17px}.article .toc{position:relative;top:auto}.footer a{min-height:36px}.routine{gap:24px}body[data-page="/solutions/"] .rows a{grid-template-columns:1fr 28px;gap:9px 20px}.rows a>span{grid-column:1;grid-row:2}.rows a>i{grid-column:2;grid-row:1/span 2}}
@media(prefers-reduced-motion:reduce){.pr-art,.sol-card{animation:none!important}.rows a{transition:none}}
/* Company / Solutions overview: list card top right, product grounded bottom left, no overlap with text. */
.pr-art:not(.pr-device){min-height:370px}
.pr-art:not(.pr-device) .pr-sheet{top:0;width:62%}
.pr-art:not(.pr-device) img{left:0;bottom:0;width:170px}
@media(max-width:1050px){.pr-art:not(.pr-device) .pr-sheet{width:72%}.pr-art:not(.pr-device) img{width:130px}}
@media(max-width:900px){body[data-page="/hub/"] .p-visual .hub{width:44%;max-width:260px}}
/* Homepage: why organizations choose TEMORA (purchase decision, not the patient journey). */
.lev-head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:28px 72px;align-items:end;margin-bottom:44px}
.lev-head h2{max-width:13em}
.lev-chain{list-style:none;margin:0;padding:0;display:grid;gap:0;counter-reset:c}
.lev-chain li{position:relative;padding:12px 0 12px 44px;font-size:16px;color:var(--ink-2);border-top:1px solid #dce7f1;counter-increment:c}
.lev-chain li:last-child{border-bottom:1px solid #dce7f1}
.lev-chain li:before{content:counter(c);position:absolute;left:0;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:600;color:var(--deep);background:#e8f1fb}
.lev-chain b{font-weight:600;color:var(--ink)}
.lev-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.lev-ax{display:flex;flex-direction:column;padding:0 0 4px}
.lev-vis{height:132px;border-radius:16px;background:linear-gradient(160deg,#f5f9fe,#e4effb);display:flex;align-items:center;justify-content:center;gap:8px;padding:16px 18px;margin-bottom:22px}
.lev-vis-1{flex-wrap:wrap;align-content:center;gap:7px}
.lev-vis-1 span{font-size:12.5px;color:#6a7e93;padding:5px 10px;border-radius:999px;background:#ffffffb0;box-shadow:0 0 0 1px #d3e2f0;text-decoration:none}
.lev-vis-1 em{flex-basis:100%;text-align:center;font-style:normal;font-size:12.5px;font-weight:600;color:var(--deep);margin-top:4px}
.lev-vis-2{flex-direction:column;gap:5px}
.lev-vis-2 .mini{max-width:250px;box-shadow:0 0 0 1px #d3e2f0}
.lev-vis-3{flex-wrap:wrap;align-content:center;gap:12px 22px}
.lev-vis-3 img{height:18px;width:auto}
.lev-k{font-size:13px;font-weight:600;color:var(--deep);letter-spacing:.01em;margin:0 0 8px}
.lev-ax h3{font-size:21px;line-height:1.25;letter-spacing:-.02em;font-weight:500;margin:0 0 16px;max-width:17em}
.lev-ax dl{margin:0;display:grid;gap:0;border-top:1px solid #dce7f1}
.lev-ax dl>div{padding:12px 0;border-bottom:1px solid #e6eef6}
.lev-ax dt{font-size:12.5px;font-weight:600;color:#5b6f84;margin-bottom:3px}
.lev-ax dd{margin:0;font-size:15px;line-height:1.55;color:var(--ink-2)}
@media(max-width:1000px){.lev-head{grid-template-columns:1fr;gap:22px}.lev-grid{grid-template-columns:1fr;gap:40px}.lev-ax{max-width:620px}.lev-vis{height:112px}}
@media(max-width:640px){.lev-chain li{font-size:15px}.lev-ax h3{font-size:19px}}
/* Integration: wider text column so the H1 sits on three lines, not four short ones. */
@media(min-width:901px){body[data-page="/integration/"] .int-hero{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px}body[data-page="/integration/"] .int-hero h1{max-width:12.5em}}
/* Company: TEMORA's place between device makers and the client organization. */
.eco3{list-style:none;margin:44px 0 0;padding:0;display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:0;position:relative}
.eco3>li{padding:28px 30px 30px;border-top:1px solid #cfdeed;border-bottom:1px solid #cfdeed;position:relative}
.eco3>li+li{border-left:1px solid #dce7f1}
.eco3 .eco-us{background:linear-gradient(160deg,#f2f8ff,#e1eefb);border-radius:16px;border:1px solid #c3d8ee;margin:-14px 0;padding-top:42px;padding-bottom:44px;z-index:1;box-shadow:0 24px 44px -34px #3f6f9f66}
.eco3 .eco-us+li{border-left:0}
.eco-k{font-size:13px;font-weight:600;color:var(--deep,#1f4f86);margin:0 0 10px}
.eco3 h3{font-size:22px;letter-spacing:-.02em;font-weight:500;margin:0 0 14px}
.eco3 ul{list-style:none;margin:0;padding:0}
.eco3 ul li{font-size:15px;line-height:1.5;color:var(--ink-2,#3b434b);padding:8px 0 8px 16px;position:relative;border-top:1px solid #e3edf7}
.eco3 ul li:before{content:"";position:absolute;left:0;top:17px;width:5px;height:5px;border-radius:50%;background:#7fa6cf}
.eco3>li:not(.eco-us):after{content:"";position:absolute;top:50%;width:10px;height:10px;border-top:1.5px solid #7fa6cf;border-right:1.5px solid #7fa6cf;transform:translateY(-50%) rotate(45deg);z-index:2}
.eco3>li:first-child:after{right:-8px}
.eco3>li:last-child:after{left:-30px;display:none}
@media(max-width:900px){.eco3{grid-template-columns:1fr}.eco3>li+li{border-left:0;border-top:0}.eco3 .eco-us{margin:0;padding:28px 24px}.eco3>li:first-child:after{right:auto;left:50%;top:auto;bottom:-8px;transform:translateX(-50%) rotate(135deg)}}
body:not([data-page="/"]) .sh .lede{margin-top:18px}
/* Footer: columns on desktop; collapsible sections on phones (all links kept, open without JS). */
.footer .fcol summary{list-style:none;font-size:14px;font-weight:600;margin-bottom:12px;color:var(--ink,#1c2229)}
.footer .fcol summary::-webkit-details-marker{display:none}
@media(min-width:641px){.footer .fcol summary{pointer-events:none}}
@media(max-width:640px){
  .footer{padding-top:40px}
  .footer-grid{gap:0}
  .footer-brand{padding-bottom:22px}
  .footer nav{border-top:1px solid #dce7f1}
  .footer nav:last-of-type{border-bottom:1px solid #dce7f1}
  .footer .fcol summary{cursor:pointer;margin:0;min-height:52px;display:flex;align-items:center;justify-content:space-between;font-size:15px}
  .footer .fcol summary:after{content:"";width:8px;height:8px;border-right:1.5px solid #5b6f84;border-bottom:1.5px solid #5b6f84;transform:rotate(45deg) translateY(-3px);transition:transform .2s}
  .footer .fcol[open] summary:after{transform:rotate(-135deg) translateY(-2px)}
  .footer .fcol ul{padding:0 0 14px}
  .footer .fcol li+li{margin-top:0}
  .footer .fcol a{display:flex;align-items:center;min-height:40px}
  .footer-base{margin-top:28px}
}
@media(prefers-reduced-motion:reduce){.footer .fcol summary:after{transition:none}}
.form-status a{color:var(--deep,#1f4f86);text-decoration:underline;text-underline-offset:3px}.form-status.ok{color:var(--deep,#1f4f86)}
