/* Murphy Thompson Moore LLP: styling for the company formations system (formations.mtmllp.co.uk).
   Matches the new website (mtmllp.co.uk): deep ink and royal blue, Cormorant Garamond headings, Inter text.
   CSS only. It changes how the eFiling pages look and nothing about how they work.

   HOW IT IS LOADED: eFiling's Web Builder loads this after its own stylesheets (see formations/README.md).
   Palette: primary #11499E, ink #0B2550, raised ink #12326B, ice #DCE4F0 / #EEF2F8, silver #C3CAD6 / #9AA5B8. */

@font-face{font-family:"Cormorant Garamond";src:url("https://mtmllp.co.uk/assets/fonts/cormorant-garamond.woff2") format("woff2");font-weight:300 700;font-style:normal;font-display:swap;}
@font-face{font-family:"Cormorant Garamond";src:url("https://mtmllp.co.uk/assets/fonts/cormorant-garamond-italic.woff2") format("woff2");font-weight:300 700;font-style:italic;font-display:swap;}
@font-face{font-family:"Inter";src:url("https://mtmllp.co.uk/assets/fonts/inter.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap;}

:root{
  --mtm-blue:#11499E; --mtm-blue-deep:#0D3B82; --mtm-ink:#0B2550; --mtm-ink-raised:#12326B;
  --mtm-ice:#DCE4F0; --mtm-ice-2:#EEF2F8; --mtm-silver:#C3CAD6; --mtm-silver-strong:#9AA5B8; --mtm-muted:#44537A;
  --mtm-display:"Cormorant Garamond","Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  --mtm-body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}

/* ---------- Page ---------- */
html body{
  background:var(--mtm-ink) !important;
  background-image:linear-gradient(120deg,#0B2550 35%,#12326B 100%) !important;
  background-attachment:fixed !important;
  color:var(--mtm-ink);
  font-family:var(--mtm-body) !important;
  -webkit-font-smoothing:antialiased;
}
html body a{color:var(--mtm-blue);text-decoration-thickness:1px;text-underline-offset:3px;}
html body a:hover{color:var(--mtm-ink);}
html body :focus-visible{outline:3px solid var(--mtm-blue);outline-offset:2px;}
html body .ftco-section{padding:clamp(32px,6vw,72px) 0 !important;min-height:100vh;display:flex;align-items:center;}
html body .ftco-section > .container{max-width:1000px;}

/* Logo: the old black logo is replaced by the MTM lock-up in white, without touching the page HTML */
html body .ftco-section .col-md-6.mb-4{
  height:clamp(30px,8.5vw,46px);margin-bottom:34px !important;
  background:url("https://mtmllp.co.uk/brand/mtm-lockup-white.svg") center/contain no-repeat;
}
html body .ftco-section .col-md-6.mb-4 img{visibility:hidden;height:clamp(30px,8.5vw,46px) !important;width:100%;}

/* ---------- The two-panel card ---------- */
html body .wrap{border-radius:2px !important;overflow:hidden;box-shadow:0 30px 60px -30px rgba(0,0,0,.6) !important;}
html body .login-wrap{background:#fff !important;border-top:3px solid var(--mtm-blue);padding:clamp(28px,4vw,48px) !important;}
html body .login-wrap h3,html body .login-wrap h3.mb-4{
  font-family:var(--mtm-display) !important;font-weight:600 !important;font-size:2.15rem !important;line-height:1.1 !important;color:var(--mtm-ink) !important;margin:0 0 14px !important;
}

/* Register panel (right): raised ink instead of black, white serif heading, ghost button */
html body .text-wrap{
  background:linear-gradient(160deg,#12326B 0%,#0B2550 100%) !important;color:#fff !important;
}
html body .text-wrap h2{font-family:var(--mtm-display) !important;font-weight:500 !important;font-size:2.2rem !important;line-height:1.1;color:#fff !important;margin-bottom:12px !important;}
html body .text-wrap p{color:#DCE4F0 !important;font-size:1rem;margin-bottom:22px !important;}
html body .btn.btn-white,html body .btn.btn-white.btn-outline-white{
  background:transparent !important;border:1px solid rgba(220,228,240,.6) !important;color:#fff !important;
  border-radius:2px !important;padding:14px 28px !important;font:600 .95rem/1.2 var(--mtm-body) !important;letter-spacing:.02em;transition:background .2s,color .2s,border-color .2s;
}
html body .btn.btn-white:hover,html body .btn.btn-white.btn-outline-white:hover{background:#fff !important;border-color:#fff !important;color:var(--mtm-ink) !important;}

/* ---------- Form ---------- */
html body #efLoginContainer p{margin:0 0 16px !important;}
html body #efLoginContainer label,html body .efPanelContent label{
  display:block;font:600 .8rem/1.3 var(--mtm-body) !important;color:var(--mtm-ink) !important;margin:0 0 6px !important;
}
html body input.efTextInput,html body .efTextInput,html body input[type="text"].form-control,html body input[type="email"],html body input[type="password"],html body select.form-control,html body select{
  font:400 1rem/1.3 var(--mtm-body) !important;color:var(--mtm-ink) !important;background:#fff !important;
  border:1px solid var(--mtm-silver-strong) !important;border-radius:2px !important;padding:12px 14px !important;height:auto !important;box-shadow:none !important;
}
html body input.efTextInput:focus,html body .efTextInput:focus,html body input[type="password"]:focus,html body input[type="text"]:focus,html body select:focus{
  border-color:var(--mtm-blue) !important;outline:3px solid var(--mtm-blue) !important;outline-offset:1px !important;
}
/* Primary button */
html body input.efButton,html body .efButton,html body .btn-primary,html body button.efButton{
  background:var(--mtm-blue) !important;border:1px solid var(--mtm-blue) !important;color:#fff !important;
  border-radius:2px !important;font-family:var(--mtm-body) !important;font-weight:600 !important;letter-spacing:.02em;
  text-shadow:none !important;box-shadow:none !important;cursor:pointer;transition:background .2s;
}
/* Normal buttons everywhere else: a comfortable size, not stretched */
html body .efButton,html body a.efButton,html body input.efButton,html body button.efButton,html body .btn-red{
  display:inline-block;padding:9px 18px !important;font-size:.9rem !important;line-height:1.25 !important;width:auto;
}
/* The big full-width Submit is for the sign-in form only; buttons elsewhere keep eFiling's own size and layout */
html body #efLoginBoxContent input.efButton{padding:15px 22px !important;font-size:1rem !important;line-height:1.2 !important;float:none !important;width:100%;}
html body input.efButton:hover,html body .efButton:hover,html body .btn-primary:hover{background:var(--mtm-ink) !important;border-color:var(--mtm-ink) !important;}
/* Submit first, "Forgotten Password?" under it */
html body #efLoginBoxContent p:last-child{display:flex !important;flex-direction:column;gap:16px;overflow:visible !important;}
html body #efLoginBoxContent p:last-child input.efButton{order:1;}
html body #efLoginBoxContent p:last-child > span{order:2;float:none !important;text-align:center;}
html body #efLoginBoxContent p:last-child > span a{color:var(--mtm-blue) !important;font-size:.95rem;}
/* Remove eFiling's inner panel chrome so the card looks like the website's sign-in card */
html body #efLoginContainer .efPanel,html body #efLoginContainer .ui-widget-content{border:0 !important;background:transparent !important;box-shadow:none !important;}
html body #efLoginContainer .efPanelContent{padding:0 !important;}

/* ---------- Messages ---------- */
html body .efWidget.ui-state-error,html body .ui-state-error,html body .alert-danger{
  background:#FDECEA !important;border:0 !important;border-left:3px solid #8F2410 !important;border-radius:2px !important;color:#7A2410 !important;
  padding:12px 14px !important;margin:0 0 20px !important;font:400 .95rem/1.5 var(--mtm-body) !important;
}
html body .ui-state-error .ui-icon,html body .ui-icon-alert{filter:none;}
html body .alert-success,html body .ui-state-highlight{background:var(--mtm-ice-2) !important;border:0 !important;border-left:3px solid var(--mtm-blue) !important;color:var(--mtm-ink) !important;border-radius:2px !important;}

/* ---------- Other eFiling pages: headings, tables, panels pick up the same look ---------- */
html body h1,html body h2,html body h3,html body .efPanelHeader{font-family:var(--mtm-display);color:var(--mtm-ink);}
html body .efPanelHeader.ui-widget-header{background:var(--mtm-ice-2) !important;border:0 !important;border-bottom:1px solid var(--mtm-silver) !important;color:var(--mtm-ink) !important;font-weight:600;}
html body table th{background:var(--mtm-ice-2);color:var(--mtm-ink);font-weight:600;}


/* ---------- Register page: the stock desk photo becomes the MTM navy with the faded figure from the website ---------- */
html body .half .bg{
  position:relative;background:linear-gradient(160deg,#12326B 0%,#0B2550 100%) !important;background-image:linear-gradient(160deg,#12326B 0%,#0B2550 100%) !important;
}
html body .half .bg::before{
  content:"";position:absolute;inset:0;opacity:.22;pointer-events:none;
  background:url("https://mtmllp.co.uk/assets/img/hero-figure-1100.png") no-repeat right top/auto 108%;
}
html body .half .bg::after{
  content:"Murphy Thompson Moore LLP";position:absolute;left:clamp(24px,5vw,56px);bottom:clamp(24px,5vw,48px);
  font:500 .78rem/1 var(--mtm-body);letter-spacing:.22em;text-transform:uppercase;color:#B9C7E0;
}


/* =====================================================================================================
   ORDERING PAGES (name check, packages, extras and checkout, company details) and the ACCOUNT AREA
   eFiling's own custom stylesheet (styles-3.css) makes these black and red; this section re-colours them.
   ===================================================================================================== */

html body,html body button,html body input,html body select,html body textarea,html body .accordion-button{font-family:var(--mtm-body) !important;}
html body h1,html body h2{font-family:var(--mtm-display) !important;font-weight:600 !important;letter-spacing:-.005em;}
html body h3,html body h4{font-family:var(--mtm-display) !important;font-weight:600 !important;}
html body .text-primary{color:var(--mtm-ink) !important;}

/* Header: lock-up logo and the two buttons */
html body header .navbar,html body header .navbar.bg-body-tertiary{background:transparent !important;}
html body header .navbar-brand{display:block;width:min(300px,62vw);height:34px;background:url("https://mtmllp.co.uk/brand/mtm-lockup-white.svg") left center/contain no-repeat;}
html body header .navbar-brand img{visibility:hidden;height:34px !important;width:100%;}
html body header .btn.btn-light{background:#fff !important;color:var(--mtm-ink) !important;border:1px solid #fff !important;border-radius:2px !important;font:600 .8rem/1.2 var(--mtm-body) !important;letter-spacing:.06em;text-transform:uppercase;padding:10px 16px !important;}
html body header .btn.btn-light:hover{background:var(--mtm-ice) !important;}
html body header .btn.btn-white,html body header .btn-outline-secondary{background:transparent !important;border:1px solid rgba(220,228,240,.6) !important;color:#fff !important;border-radius:2px !important;font:600 .8rem/1.2 var(--mtm-body) !important;letter-spacing:.06em;text-transform:uppercase;padding:10px 16px !important;}
html body header .btn.btn-white:hover{background:rgba(255,255,255,.1) !important;border-color:#fff !important;}

/* The four steps (Choose name, Select package, Checkout, Enter details) */
html body section.container .text-red,html body section.container a.text-red{color:#9DB6DD !important;}
html body section.container .text-white{color:#fff !important;}
html body section.container h4{font-family:var(--mtm-body) !important;font-weight:600 !important;font-size:.9rem !important;letter-spacing:.02em;}

/* The white content card */
html body .row.card{border:0 !important;border-radius:2px !important;box-shadow:0 30px 60px -30px rgba(0,0,0,.6);border-top:3px solid var(--mtm-blue) !important;}
html body .ui-widget.ui-widget-content{border:1px solid var(--mtm-silver) !important;border-radius:2px !important;}

/* Every primary button (eFiling lists dozens of selectors; these are the same ones) */
html body .btn-red,html body .efButton,html body a.efButton,html body #ef-namecheck-button,html body #nextstep,html body .ef-btn.nextstep,html body #prevstep,
html body .ef-btn.ef-primary-btn.ef-submit-btn,html body .ef-btn.ef-primary-btn,html body .ef-btn.ef-cancel-btn,html body .ef-add-officer.person,html body .ef-add-officer.corporate,
html body .ef-btn,html body .ef-16-item-btn,html body .ef-16-accept-advert{
  background-color:var(--mtm-blue) !important;border:1px solid var(--mtm-blue) !important;border-color:var(--mtm-blue) !important;color:#fff !important;
  border-radius:2px !important;font-family:var(--mtm-body) !important;font-weight:600 !important;letter-spacing:.02em;text-shadow:none !important;box-shadow:none !important;
}
html body .btn-red:hover,html body .efButton:hover,html body a.efButton:hover,html body #ef-namecheck-button:hover,html body #nextstep:hover,html body .ef-btn.nextstep:hover,html body .ef-btn.nextstep:focus,
html body #prevstep:hover,html body .ef-btn.ef-primary-btn:hover,html body .ef-btn.ef-primary-btn:focus,html body .ef-btn.ef-primary-btn.ef-submit-btn:hover,html body .ef-btn.ef-cancel-btn:hover,
html body .ef-add-officer.person:hover,html body .ef-add-officer.corporate:hover,html body .ef-btn:hover,html body .ef-16-item-btn:hover,html body .ef-16-accept-advert:hover{
  background-color:var(--mtm-ink) !important;border-color:var(--mtm-ink) !important;
}
html body .ef-16-selected{box-shadow:0 0 0 4px var(--mtm-blue) !important;}
/* Link-style buttons inside the package panels stay compact */
html body .efNameCheckPackage a.efButton{float:right;padding:8px 14px !important;font-size:.8rem !important;}
/* Destructive actions keep a warning colour, deliberately */
html body .deleteButton{background-color:#8F2410 !important;border-color:#8F2410 !important;color:#fff !important;}
html body .deleteButton:hover{background-color:#6E1B0B !important;border-color:#6E1B0B !important;}

/* Panel headers, table headers, tabs: black becomes ink */
html body .efPanelHeader,html body .efPanelHeader.ui-widget-header,html body h3.efPanelHeader,html body .efTable .ui-widget-header,html body tfoot,html body #efOrderOverview .efWidgetHeader,
html body .ef-primary-table th,html body .ef-tab-link.w--current,html body .ef-info-modal-header,html body #ef-cart .ui-widget-header,
html body #efEverythingInTheOrderContainer table thead,html body #efOptionalIncludedTable .ui-widget-header td,
html body .ef-nav-section-link.current,html body .ef-order-form-nav-step-wrapper{
  background:var(--mtm-ink) !important;background-color:var(--mtm-ink) !important;border-color:var(--mtm-ink) !important;color:#fff !important;
}
html body .efPanelHeader{font-family:var(--mtm-display) !important;font-weight:600 !important;}
html body #efEverythingInTheOrderContainer table{border:3px solid var(--mtm-ink) !important;}
html body .ef-order-form-nav-wrapper{background:var(--mtm-ice-2) !important;}
html body .efTableSubheader,html body #efOptionalTable .efTableSubheader td{background:var(--mtm-ice-2) !important;border-bottom:1px solid var(--mtm-blue) !important;color:var(--mtm-ink) !important;}
html body .efEven{background-color:var(--mtm-ice-2) !important;}
html body #efEverythingInTheOrderContainer #efOptionalIncludedTable .efOptionalTrProduct input{background-color:var(--mtm-blue) !important;border-color:var(--mtm-blue) !important;}
html body #efEverythingInTheOrderContainer #efOptionalIncludedTable .efOptionalTrProduct input:hover{background-color:var(--mtm-ink) !important;border-color:var(--mtm-ink) !important;}
html body .ui-dialog .ui-dialog-titlebar-close{background-color:var(--mtm-blue) !important;}
html body .ui-dialog .ui-dialog-titlebar-close:hover{background-color:var(--mtm-ink) !important;}
html body .ui-dialog{border-radius:2px !important;border:0 !important;box-shadow:0 30px 60px -30px rgba(0,0,0,.6);}
html body .ui-dialog .ui-dialog-titlebar{background:var(--mtm-ink) !important;border:0 !important;color:#fff !important;border-radius:0 !important;}

/* Forms inside the ordering pages */
html body .efTextInput,html body .ui-dialog .efTextInput{border:1px solid var(--mtm-silver-strong) !important;border-radius:2px !important;color:var(--mtm-ink) !important;font-size:.95rem !important;}
html body #efNameCheckSearch form{border:1px solid var(--mtm-silver-strong) !important;border-radius:2px !important;background:#fff;}
html body #name-check-section p{color:var(--mtm-ink);}
html body #namecheck-results a{color:var(--mtm-blue) !important;}

/* FAQ accordion: black open panel becomes ink; red chevron becomes blue */
html body .accordion-item{border:0 !important;border-radius:2px !important;box-shadow:0 10px 30px -18px rgba(11,37,80,.45) !important;}
html body .accordion-item button{border-radius:2px !important;font-size:1.05rem !important;font-weight:500 !important;padding:1.4rem 1.6rem !important;background-color:var(--mtm-ice-2) !important;color:var(--mtm-ink) !important;}
html body .accordion-button:focus,html body .accordion-button:not(.collapsed){background-color:var(--mtm-ink) !important;border:0 !important;box-shadow:none !important;color:#fff !important;}
html body .accordion-collapse{background-color:var(--mtm-ink) !important;color:#E9EEF7 !important;border-radius:0 0 2px 2px !important;}
html body .accordion-button:after{background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2311499E'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>") !important;}
html body .accordion-button:not(.collapsed):after{background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23DCE4F0'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>") !important;}
html body .accordion-collapse a,html body .accordion-body a{color:#9DB6DD !important;}

/* Footer: black becomes ink, lower strip raised ink, headings in the serif */
html body footer{background-color:var(--mtm-ink) !important;color:#E9EEF7 !important;}
html body footer p,html body footer a{color:#E9EEF7 !important;}
html body footer h3{font-family:var(--mtm-display) !important;font-weight:600 !important;font-size:1.3rem !important;color:#fff !important;}
html body footer a:hover{color:#fff !important;text-decoration:underline;}
html body .additional-footer{background-color:var(--mtm-ink-raised) !important;}
html body .additional-footer p{font-size:.78rem !important;color:#B9C7E0 !important;}
html body .additional-footer .col-md-2{background:url("https://mtmllp.co.uk/brand/mtm-lockup-white.svg") left center/contain no-repeat;min-height:30px;}
html body .additional-footer .col-md-2 img{visibility:hidden;}

/* Cart / account pages: the same panel look as the ordering pages */
html body #ef-cart .efTableSubheader{border-bottom:1px solid var(--mtm-silver) !important;}
html body #account-section a{color:var(--mtm-blue);}
html body #account-section .efButton{color:#fff !important;}



/* ---------- Account area: the menu bar (My Account, Orders, Companies, Services, Finances) and its drop-downs ---------- */
html body div.efAccountMenu,html body .efAccountMenu.ui-widget-header{
  background:var(--mtm-ink) !important;background-color:var(--mtm-ink) !important;border:0 !important;border-radius:2px !important;box-shadow:none !important;
}
html body .efAccountMenu a.efAccountMainMenuItem{
  background:transparent !important;background-image:none !important;border:0 !important;border-radius:0 !important;
  color:#fff !important;font:500 .92rem/1.2 var(--mtm-body) !important;text-shadow:none !important;letter-spacing:.01em;
}
html body .efAccountMenu a.efAccountMainMenuItem:hover,html body .efAccountMenu a.efAccountMainMenuItem:focus,
html body .efAccountMenu a.efAccountMainMenuItem.ui-state-hover,html body .efAccountMenu a.efAccountMainMenuItem.ui-state-active,html body .efAccountMenu a.efAccountMainMenuItem.ui-state-focus{
  background:var(--mtm-ink-raised) !important;color:#fff !important;
}
/* Drop-down panel and its items (the container's exact class is not known, so match any efAccountSubMenu*) */
html body [class*="efAccountSubMenu"]:not(a){background:#fff !important;border:1px solid var(--mtm-silver) !important;border-radius:0 0 2px 2px !important;box-shadow:0 18px 40px -18px rgba(11,37,80,.5) !important;}
html body a.efAccountSubMenuItem,html body a[class*="efAccountMenuItem_"]{
  background:#fff !important;background-image:none !important;border:0 !important;border-bottom:1px solid var(--mtm-ice) !important;border-radius:0 !important;
  color:var(--mtm-ink) !important;font:400 .9rem/1.4 var(--mtm-body) !important;text-shadow:none !important;
}
html body a.efAccountSubMenuItem:hover,html body a.efAccountSubMenuItem:focus,html body a.efAccountSubMenuItem.ui-state-hover,html body a.efAccountSubMenuItem.ui-state-focus{
  background:var(--mtm-ice-2) !important;color:var(--mtm-blue) !important;
}
html body .efAccountMenu input[type="text"]{border:0 !important;border-radius:2px !important;}

/* Header "Account" button (red in eFiling's version) */
html body header a.btn:not(.btn-light):not(.btn-white):not(.btn-outline-secondary){
  background:var(--mtm-blue) !important;border:1px solid var(--mtm-blue) !important;color:#fff !important;border-radius:2px !important;
  font:600 .8rem/1.2 var(--mtm-body) !important;letter-spacing:.06em;text-transform:uppercase;padding:10px 16px !important;
}
html body header a.btn:not(.btn-light):not(.btn-white):not(.btn-outline-secondary):hover{background:#fff !important;border-color:#fff !important;color:var(--mtm-ink) !important;}

/* "My Account" page title and welcome panel */
html body #account-section h1,html body #account-section h2{font-size:clamp(2rem,3vw,2.8rem) !important;}


/* ---------- Small screens ---------- */
@media (max-width:767.98px){
  html body .wrap{display:flex !important;flex-direction:column;}   /* sign-in first, register second */
  html body .text-wrap,html body .login-wrap{width:100% !important;}
  html body .text-wrap{order:2;padding:28px !important;}
  html body .login-wrap{order:1;}
  html body .login-wrap h3{font-size:1.9rem !important;}
}
@media (prefers-reduced-motion:reduce){html body *{transition:none !important;}}
