/* MDTech Transcripts shared form appearance and slim green scrollbars. */
html,body,*{scrollbar-width:thin!important;scrollbar-color:#204b38 transparent!important}
*::-webkit-scrollbar{width:6px!important;height:6px!important;background:transparent!important}
*::-webkit-scrollbar-thumb{background:#204b38!important;border:0!important;border-radius:20px!important}
*::-webkit-scrollbar-track,*::-webkit-scrollbar-track-piece,*::-webkit-scrollbar-corner{background:transparent!important;border:0!important;box-shadow:none!important}
*::-webkit-scrollbar-button,*::-webkit-scrollbar-button:single-button,*::-webkit-scrollbar-button:vertical,*::-webkit-scrollbar-button:horizontal{display:none!important;width:0!important;height:0!important;min-width:0!important;min-height:0!important;background:transparent!important;border:0!important}
html{scrollbar-gutter:stable}
body:has(dialog[open]){overflow:hidden}
dialog{background:#fffaf6;color:#633620;border:1px solid #dbc3b5;border-radius:18px;padding:40px;width:min(600px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain;box-shadow:0 18px 65px #2f180f2b}
dialog::backdrop{background:#1d302780;backdrop-filter:blur(4px)}
dialog h2{color:#633620;font-family:Poppins,'Segoe UI',sans-serif;font-size:26px;font-weight:700;line-height:1.3;margin-bottom:24px;padding-right:30px}
dialog .eyebrow{color:#633620}
dialog form,dialog form :is(input,select,textarea,button,label,a){font-family:Poppins,'Segoe UI',sans-serif!important}
dialog form{gap:20px}
dialog form label{font-size:15px;font-weight:600;color:#633620;line-height:1.5;gap:8px}
dialog form :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select,textarea){width:100%;min-width:0;max-width:100%;box-sizing:border-box;background:#fff;color:#000;-webkit-text-fill-color:#000;border:1px solid #dacfc8;border-radius:999px;padding:12px 18px;font-size:16px!important;font-style:normal;font-weight:400!important;line-height:1.5}
dialog form :is(input,select){min-height:52px}
dialog form textarea{border-radius:20px;min-height:130px;resize:vertical}
dialog form :is(input,textarea)::placeholder{color:#000;opacity:1;font-weight:400}
dialog form :is(input,select,textarea):focus-visible{outline:2px solid #204b38;outline-offset:2px;border-color:#204b38}
dialog form .button,dialog>.button{background:#204b38;color:#f7eadd;border:1px solid #204b38;border-radius:999px;padding:14px 24px;font-size:16px;font-weight:600;min-height:52px}
dialog form .button:hover,dialog>.button:hover{background:#153626}
dialog form .button:disabled{opacity:.6;cursor:wait}
dialog .close{position:absolute;top:14px;right:16px;display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:50%;background:transparent;color:#633620;font:400 28px/1 Poppins,sans-serif}
dialog .close:hover{background:#f1e4d9;color:#204b38}
dialog .form-note{color:#755846;font-size:12px!important;font-weight:400;line-height:1.6;overflow-wrap:anywhere}
#enquiry-result:empty{display:none}
#enquiry-result:not(:empty){padding:12px 16px;border:1px solid #dbc3b5;border-radius:12px;background:#f7eadd;color:#633620}
@media(max-width:600px){dialog{padding:32px 24px;width:calc(100% - 24px);max-height:calc(100dvh - 24px)}dialog h2{font-size:24px}dialog form{gap:18px}}
/* Short, staged enquiries replace the scrolling long form. */
#contact-dialog.stepped-dialog{overflow:hidden;width:min(600px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:30px 34px}
#contact-dialog.stepped-dialog h2{margin:0 32px 16px 0;font-size:26px}
.stepped-dialog form{display:flex;flex-direction:column;gap:16px}
.step-progress{order:-1}
.step-progress p{margin:0 0 12px;font-size:13px;color:#633620;line-height:1.4}
.step-bars{display:flex;gap:7px}.step-bars span{height:6px;flex:1;border-radius:999px;background:#eee1d8}.step-bars span.active{background:#204b38}
.enquiry-step{display:grid;gap:18px;background:#fff;border-radius:18px;padding:22px}
.enquiry-step h3{font-size:17px;margin:0;color:#633620;line-height:1.4}
.stepped-dialog .step-actions{display:flex;justify-content:flex-end;gap:12px}
.stepped-dialog .step-actions .button{min-width:110px}
.stepped-dialog .step-actions .step-back{background:transparent;color:#204b38}
.stepped-dialog .step-privacy{margin:0;font-size:11px;line-height:1.5;color:#755846}
.stepped-dialog #enquiry-result:not(:empty){margin:0;padding:10px 12px;line-height:1.4;font-size:12px!important}
#contact-dialog.stepped-dialog textarea{height:100px;min-height:70px;max-height:100px;resize:none}
@media(max-width:600px){#contact-dialog.stepped-dialog{padding:26px 20px}.enquiry-step{padding:18px;gap:14px}}
@media(max-height:650px){#contact-dialog.stepped-dialog{padding:18px 22px}.stepped-dialog form{gap:10px}#contact-dialog.stepped-dialog h2{font-size:22px;margin-bottom:10px}.enquiry-step{gap:10px;padding:14px}.enquiry-step h3{font-size:15px}.stepped-dialog form label{font-size:13px;gap:4px}.stepped-dialog form :is(input,select){min-height:42px;height:42px;padding:8px 14px}.stepped-dialog .step-actions .button{min-height:42px;padding:9px 18px}.step-progress p{margin-bottom:7px}}
@media(max-height:430px){#contact-dialog.stepped-dialog{padding:12px 20px}#contact-dialog.stepped-dialog h2{font-size:18px;margin:0 35px 6px 0}.stepped-dialog form{gap:7px}.step-progress p{font-size:11px;margin-bottom:5px}.step-bars span{height:4px}.enquiry-step{padding:10px;gap:6px}.enquiry-step h3{display:none}.stepped-dialog form label{font-size:12px;gap:3px}.stepped-dialog form :is(input,select){height:36px;min-height:36px;padding:5px 12px}.stepped-dialog .step-actions .button{min-height:36px;padding:6px 16px;font-size:14px}#contact-dialog.stepped-dialog textarea{height:65px;min-height:65px}.stepped-dialog .step-privacy{font-size:10px;line-height:1.3}}

#contact-dialog.stepped-dialog textarea[name="message"] {
    border-radius: 20px !important;
}

#contact-dialog.stepped-dialog select[name="service"] {
    height: 64px !important;
    min-height: 64px !important;
    padding: 16px 20px !important;
    line-height: 1.5 !important;
}

.service .text-link[data-service] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 11px 26px;
    border: 1px solid #204b38;
    border-radius: 999px;
    background: transparent;
    color: #204b38;
    text-decoration: none;
    font-size: 14px;
    line-height: 1.5;
}
.service .text-link[data-service]:hover {
    background: #204b3810;
}

.about-lead {
    font-weight: 500;
}

.company-team-card {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.company-team-card .team-instagram {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: auto;
    position: relative;
    top: 16px;
    margin-bottom: 16px;
    padding: 10px 24px;
    border: 1px solid #204b38;
    border-radius: 999px;
    background: transparent;
    color: #204b38;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
}
.company-team-card .team-instagram:hover {
    background: #204b3810;
}

html { scroll-behavior: smooth; }

.motion-reveal {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .6s ease, transform .6s ease;
}
.motion-reveal.motion-visible {
    opacity: 1;
    transform: none;
}
.company-team-card, .product-card {
    transition: transform .25s ease, box-shadow .25s ease;
}
@media (hover: hover) {
    .company-team-card:hover, .product-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 12px 28px #321b1212;
    }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .motion-reveal {
        opacity: 1;
        transform: none;
        transition: none;
    }
    .company-team-card, .product-card {
        transition: none;
    }
    .company-team-card:hover, .product-card:hover {
        transform: none;
    }
}

#about .about-lead {
    font-size: clamp(24px, 2.4vw, 36px);
    line-height: 1.6;
    font-weight: 500;
}
