/* ORBIT / Market Investigation Agreement. One paper, one form group, no framework. */
:root{
  --paper:#fff;
  --background:#f1f2f4;
  --text:#182027;
  --copy:#424b53;
  --muted:#68747d;
  --line:#e3e7e9;
  --line-strong:#c7cfd4;
  --input:#fff;
  --panel:#f8f9fa;
  --orange:#ff4510;
}
*{box-sizing:border-box}
html{color-scheme:light}
body{margin:0;padding:0;background:var(--background);color:var(--text);font-family:var(--orbit-font-web, 'DM Sans', 'Segoe UI', Arial, sans-serif);font-size:14px;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:#9a3a24;text-underline-offset:3px;text-decoration-thickness:1px}
button,input{font:inherit}
button{touch-action:manipulation}
.document{width:min(884px,calc(100% - 44px));margin:38px auto 64px;padding:58px 72px 43px;background:var(--paper);border:1px solid #e2e6e9;border-radius:4px;box-shadow:0 9px 34px rgba(17,27,35,.035)}
/* Formal, restrained letterhead */
.brand-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 0 24px;border-bottom:1px solid #cbd3d8}
.logo{display:block;width:240px;max-width:49%;height:auto;object-fit:contain;object-position:left center}
.company-block{text-align:right;display:flex;flex-direction:column;gap:3px;font-size:11px;line-height:1.45;color:#717b82}
.company-block strong{font-weight:700;font-size:11.7px;color:#353f47}
.title-block{text-align:center;padding:37px 0 24px}
.title-block h1{margin:0;font-size:24px;line-height:1.28;font-weight:750;letter-spacing:.035em;text-transform:uppercase;color:#12191f}
.title-block p{display:none}
.reference-row{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:22px;padding:13px 0 21px;margin:0 0 36px;border-bottom:1px solid var(--line)}
.reference-row>div{min-width:0;display:flex;flex-direction:column;gap:4px}
.reference-row>div:last-child{text-align:right}
.meta-label{color:#79828b;font-size:10.5px;font-weight:600;letter-spacing:.015em}
.reference-row strong{font-weight:700;font-size:13px;line-height:1.45;color:#222b33;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
/* Each section is a typographic rhythm, not an independent card */
.section{margin:0 0 41px}
.section h2,.privacy-body h2{margin:0 0 20px;padding:0 0 13px;border-bottom:1px solid var(--line);font-size:15.3px;line-height:1.4;letter-spacing:-.08px;font-weight:750;color:#172028}
.client-box{background:var(--panel);border:1px solid #e4e8ea;border-radius:8px;padding:26px 27px 27px}
.fields{display:flex;flex-wrap:wrap;gap:19px 18px}
.field{min-width:0;flex:0 1 calc(50% - 9px);display:flex;flex-direction:column;gap:6px}
.field.wide{flex-basis:100%}
.field label{font-size:11.8px;font-weight:700;line-height:1.45;color:#39454e}
.field label span{font-weight:400;color:#7b858e}
.field i,.signature-label i{font-style:normal;color:#a8412a}
.field input{width:100%;min-width:0;height:43px;background:var(--input);border:1px solid #d7dde1;border-radius:5px;padding:11px 12px;color:var(--text);font-size:12.8px;line-height:1.4;outline:none;transition:border-color .15s,box-shadow .15s}
.field input::placeholder{color:#a0a9b0}
.field input:focus-visible{border-color:#c65a3c;box-shadow:0 0 0 3px rgba(255,69,16,.10)}
.field input:invalid:not(:placeholder-shown){border-color:#cf705e}
.field small{font-size:10.8px;line-height:1.5;color:#7b858d}
.print-text{display:none}
/* Price schedule: clean rows, no coloured tiles */
.payments{border-collapse:collapse;width:100%;table-layout:auto;margin:2px 0 18px;font-size:12.9px}
.payments th,.payments td{text-align:left;vertical-align:top;padding:13px 0;border-bottom:1px solid var(--line);font-weight:450;line-height:1.5}
.payments td{text-align:right;padding-left:20px;white-space:nowrap;font-weight:700;font-variant-numeric:tabular-nums}
.payments .total th,.payments .total td{font-weight:750;color:#19222b;background:transparent;border-bottom:1px solid var(--line-strong)}
.fact{font-size:12.8px;margin:8px 0;color:#4b555d;line-height:1.65}
.fact strong{color:#1c2630}
.parties{font-size:12.9px;color:#465059;line-height:1.76;margin:0 0 27px}
.clause{margin:0 0 24px;break-inside:avoid-page;page-break-inside:avoid}
.clause h3{font-size:13.2px;line-height:1.48;font-weight:750;letter-spacing:0;margin:0 0 7px;color:#1e2830}
.clause p{font-size:12.85px;line-height:1.78;color:#465059;margin:0 0 9px}
.clause p:last-child{margin-bottom:0}
/* Signing is the conclusion to the same continuous document */
.sign-copy{font-size:12.8px;line-height:1.72;color:#4d5760;margin:0 0 17px}
.consent{display:flex;align-items:flex-start;gap:11px;margin:12px 0;font-size:12.6px;line-height:1.55;color:#465059;cursor:pointer}
.consent input{margin:2px 0 0;flex:0 0 16px;width:16px;height:16px;accent-color:#222f39;cursor:pointer}
.consent span{flex:1}
.signature-label{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:27px 0 9px;font-size:12px;color:#37434b}
.text-button{padding:3px 0;border:0;background:transparent;color:#9f422c;font-size:12px;cursor:pointer}
.text-button:hover{text-decoration:underline}
.signature-box{height:154px;position:relative;overflow:hidden;background:#fff;border:1px solid #cfd7dc;border-radius:6px}
.signature-box canvas{height:100%;width:100%;display:block;touch-action:none;cursor:crosshair}
.signature-box span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:12px;color:#9fa9b0;pointer-events:none;white-space:nowrap}
.signature-box span[hidden]{display:none}
.signature-box img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:none}
.signature-details{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 20px;margin:12px 0 0;font-size:11.8px;color:#68737b}
.signature-details strong{color:#1b2630;font-weight:700;font-variant-numeric:tabular-nums}
.workflow-note{margin:25px 0 14px;font-size:12px;line-height:1.7;color:#67717a}
.actions{display:flex;gap:10px}
.primary-button{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;min-height:43px;background:#19242c;border:1px solid #19242c;border-radius:5px;font-weight:700;font-size:12.4px;color:#fff;cursor:pointer;transition:background .16s}
.primary-button:hover{background:#33404a}
.primary-button:focus-visible,.text-button:focus-visible{outline:3px solid rgba(255,69,16,.32);outline-offset:3px}
.message{font-size:12px;line-height:1.5;margin:10px 0 0;min-height:19px;color:#b63e32}
.message.good{color:#30634c}
.footer{display:flex;justify-content:space-between;gap:8px 25px;flex-wrap:wrap;margin-top:42px;padding-top:17px;border-top:1px solid var(--line);font-size:10.8px;color:#747e86}
/* Bilingual notice uses same paper / letterhead visual language */
.privacy-body .title-block{padding-bottom:14px}
.privacy-body section h2{margin-top:28px;margin-bottom:12px}
.privacy-body section p,.privacy-body section li{font-size:12.8px;line-height:1.78;color:#465059}
.privacy-body section ul{padding-left:21px}
.notice-version{text-align:center;color:#7c858c;font-size:11.7px;margin:0 0 34px}
.privacy-lang{margin-top:42px;padding-top:10px;border-top:1px solid #d7dfe2}
@media(max-width:720px){
  body{background:#fff}
  .document{width:100%;margin:0;padding:27px 21px 30px;border:0;border-radius:0;box-shadow:none}
  .brand-header{gap:12px;padding-bottom:18px}
  .logo{width:200px;max-width:48%}
  .company-block,.company-block strong{font-size:10px}
  .title-block{padding:34px 0 18px}
  .title-block h1{font-size:20px;letter-spacing:.025em}
  .reference-row{margin-bottom:29px}
  .client-box{padding:19px 18px}
  .fields{flex-direction:column;gap:16px}
  .field,.field.wide{flex-basis:auto}
  .field input{font-size:16px}
  .payments{font-size:12.3px}
  .payments td{white-space:normal}
  .footer{font-size:10.5px}
}
@media(max-width:420px){
 .brand-header{align-items:flex-start;flex-direction:column;gap:10px}
 .logo{max-width:205px;width:205px}
 .company-block{text-align:left}
 .reference-row{gap:12px}
 .reference-row strong{font-size:11.6px}
 .signature-details{flex-direction:column}
}
@media print{
  @page{size:A4;margin:16mm 19mm 17mm}
  html,body{background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .document{width:100%;max-width:none;margin:0;padding:0;border:0;border-radius:0;box-shadow:none}
  .brand-header{padding-bottom:14px}
  .logo{width:215px;max-width:none}
  .title-block{padding:26px 0 17px}
  .title-block h1{font-size:21px}
  .reference-row{padding:9px 0 17px;margin-bottom:25px}
  .section{margin-bottom:27px}
  .section h2{margin-bottom:13px;padding-bottom:9px;font-size:14px}
  .client-box{padding:13px 17px;background:#f8f9fa!important;border:1px solid #e3e7e9}
  .fields{gap:10px 15px}
  .field{gap:1px;position:relative;flex-basis:calc(50% - 8px)}
  .field.wide{flex-basis:100%}
  .field label{font-size:10.5px}
  .field input{height:28px;padding:0 0 1px;opacity:0;border:0;border-bottom:1px solid #d1d8dd;border-radius:0}
  .field input::placeholder{color:transparent}
  .field small{display:none}
  .field .print-text{display:block;position:absolute;left:0;right:0;bottom:2px;max-height:34px;overflow:visible;overflow-wrap:anywhere;line-height:1.32;color:#222c34;font-size:11px}
  .payments{font-size:11.5px}
  .payments th,.payments td{padding:8px 0}
  .fact{font-size:11.4px;margin:5px 0}
  .parties{font-size:11.6px;margin-bottom:18px}
  .clause{margin-bottom:16px}
  .clause h3{font-size:12px;margin-bottom:5px}
  .clause p{font-size:11.4px;line-height:1.55;margin-bottom:6px}
  .sign-copy,.consent{font-size:11.3px}
  .signature-box{height:101px}
  .signature-box canvas,.signature-box span{display:none!important}
  /* Only print a real, available signature image (never a broken-image placeholder). */
  .signature-box img{display:none!important}
  .signature-box.has-print-signature img:not([hidden])[src^="data:image/png;base64,"]{display:block!important}
  .signature-box:not(.has-print-signature)::after{content:"Signature not yet provided";position:absolute;inset:0;display:grid;place-items:center;color:#98a1a8;font-size:11px}
  .signature-box.has-print-signature:not(.is-signed)::after{content:"DRAFT — signature not submitted";position:absolute;right:6px;bottom:4px;color:#ad603f;font-size:9px;background:#fff}
  .workflow-note,.actions,.message,#clearSignature{display:none!important}
  .terms-section{break-before:page;page-break-before:always}
  .sign-section{break-inside:avoid-page;page-break-inside:avoid}
  .footer{margin-top:22px}
  a{color:#303c44;text-decoration:none}
}

.agreement-nav{width:min(884px,calc(100% - 44px));margin:28px auto -16px;display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:12px;color:#74808a}.agreement-nav a{color:#1c2931;font-weight:700;text-decoration:none}.agreement-nav a:hover{text-decoration:underline}.secondary-print{background:#fff;color:#1a2832;border-color:#ccd5da;margin-left:8px}.secondary-print:hover{background:#f7f8f9}.signed-notice{margin:15px 0;padding:10px 14px;background:#eff8f2;color:#286343;font-size:12px;border-radius:5px}.field input:read-only{background:#f7f8f9}.signature-box.is-signed canvas{display:none}.signature-box.is-signed img{display:block}@media(max-width:720px){.agreement-nav{padding:0 21px;width:100%;margin:16px auto -8px}}@media print{.agreement-nav,.signed-notice,.secondary-print{display:none!important}}
