/*
Theme Name: M2S Works Studio
Description: Navy and soft-blue engineering identity with the approved M2S works logo.
Version: 2.0.0
Requires PHP: 8.1
*/
@font-face{font-family:Manrope;src:url('assets/Manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}
:root{--blue:#173e68;--blue-accent:#608fb8;--blue-deep:#08284c;--button-base:#173e68;--button-marked:#08284c;--ink:#112d47;--muted:#607080;--line:#dce3e7;--paper:#f6f7f4}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.75 Manrope,Arial,sans-serif}a{color:var(--blue)}.wrap{width:min(1180px,88%);margin:auto}header{position:sticky;top:0;background:#fff;z-index:50;border-bottom:1px solid var(--line)}header .wrap{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:block;line-height:1}.brand img{display:block;width:248px;height:auto}nav{display:flex;align-items:center;gap:27px}nav a{font-size:13px;text-decoration:none;color:var(--ink);font-weight:500;padding:12px 0}nav a:hover{color:#5984ac}nav a:last-child{border-left:1px solid var(--line);padding-left:23px}section{padding:95px 0}h1,h2,h3{font-weight:500;line-height:1.18;letter-spacing:-.045em;margin:0}h1{font-size:clamp(44px,4.8vw,66px);max-width:680px}h2{font-size:clamp(32px,3.5vw,46px);max-width:720px;margin:18px 0 40px}h3{font-size:23px;letter-spacing:-.025em}.eyebrow{color:#577d9e;font-size:10px;font-weight:650;letter-spacing:.17em;text-transform:uppercase}.hero{padding:62px 0 68px;background:var(--paper)}.hero-grid{display:grid;grid-template-columns:1.14fr 1fr;gap:64px;align-items:center}.hero-copy{padding:15px 0}.hero h1{margin:25px 0}.lead{font-size:17px;line-height:1.85;color:var(--muted);max-width:630px}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:32px}.button,button{display:inline-flex;justify-content:space-between;align-items:center;gap:22px;background:var(--blue);color:#fff;text-decoration:none;border:0;border-radius:3px;font:500 13px/1.5 Manrope,Arial,sans-serif;padding:13px 19px;cursor:pointer}.button:hover,button:hover{background:var(--blue-deep)}.text-link{font-size:13px;text-decoration:none;border-bottom:1px solid #a5b4c0;padding:10px 0}.text-link span{padding-left:15px}.hero-note{font-size:11px;color:#75818b;margin-top:37px;padding-top:20px;border-top:1px solid #dce2df;letter-spacing:.02em}.technical-panel{background:#0b2d50;color:#d9e7f4;position:relative;min-width:0;border-radius:4px;overflow:hidden;box-shadow:18px 18px 0 #e4e9e7}.technical-panel img{display:block;width:100%;height:440px;object-fit:contain;opacity:.85}.panel-top,.panel-bottom{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.14em;padding:20px 24px}.panel-top{border-bottom:1px solid #ffffff20}.panel-bottom{border-top:1px solid #ffffff20;font-size:8px}.panel-bottom i{width:24px;height:1px;background:#7c9db9}.discipline-strip{border-bottom:1px solid var(--line);background:#fff}.discipline-strip .wrap{display:flex;justify-content:space-between;gap:20px;padding-top:22px;padding-bottom:22px;color:#526b80;font-size:11px;letter-spacing:.04em}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}.card{padding:30px 28px 32px 0;margin-right:30px;border-bottom:1px solid var(--line)}.card:nth-child(3n){margin-right:0}.number{font-size:10px;color:#7c9ab4;letter-spacing:.12em;display:block;margin-bottom:25px}.card h3{color:var(--blue)}.card p{font-size:14px;color:var(--muted);margin-top:16px}.wash{background:#edf2f5}.wash .narrow{max-width:900px}.wash .lead{max-width:830px;font-size:19px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;border-top:1px solid var(--line);padding-top:30px}.steps h3{font-size:20px}.steps p{font-size:14px;color:var(--muted)}#meeting{background:var(--paper);border-top:1px solid var(--line)}#meeting>.wrap{max-width:920px;background:#fff;padding:50px 58px;border:1px solid var(--line);border-radius:4px}#meeting h2{margin-bottom:22px}#meeting p{font-size:14px;color:var(--muted)}label{display:block;margin:18px 0 7px;font-size:13px;font-weight:600}input,select,textarea{width:100%;border:1px solid #c9d4dc;border-radius:3px;padding:12px;font:inherit;font-size:14px;background:#fff;color:var(--ink)}fieldset{border:1px solid var(--line);padding:24px;margin:27px 0;background:#f9fbfc}legend{padding:0 10px;font-size:13px;color:var(--blue)}.inline{display:flex;align-items:flex-start;gap:10px;font-weight:400}.inline input{width:auto;margin-top:6px;accent-color:var(--blue)}.trap{position:absolute;left:-10000px}.notice{padding:16px;border:1px solid #a2bacb;background:#eff6fa}.narrow{max-width:850px}footer{background:#092844;color:#c5d5e2;padding:32px 0;font-size:11px;letter-spacing:.04em}.skip{position:absolute;left:-10000px}.skip:focus{left:10px;top:10px;background:#fff;padding:12px;z-index:100}:focus-visible{outline:2px solid #628fb7;outline-offset:4px}.m2s-proposal h3{font-size:15px}.m2s-calendar button:disabled{background:#f0f2f3;color:#b4bdc5}.m2s-calendar-grid button[aria-pressed=true],.m2s-combo-times button[aria-pressed=true]{background:var(--blue)!important;color:#fff}.m2s-combo-enhanced>.m2s-calendar-trigger{font-family:Manrope,Arial,sans-serif;background:#fff!important;color:var(--ink)!important;font-size:13px;min-height:46px;border-color:#c9d4dc}.m2s-combo-enhanced>.m2s-calendar-trigger::after{color:#608fb8}.m2s-combo-clear{background:transparent;color:var(--blue);font-size:11px;padding:4px 0}.m2s-combo-clear:hover{background:transparent}.m2s-calendar-grid button:hover:not(:disabled),.m2s-combo-times button:hover{background:#e7eff5!important;color:var(--ink)}
@media(max-width:1000px){header .wrap{gap:20px}.brand img{width:205px}nav{gap:19px}nav a{font-size:12px}.hero-grid{gap:36px}.technical-panel img{height:365px}.hero h1{font-size:48px}.hero .lead{font-size:15px}.hero-actions{gap:17px}.card{margin-right:20px;padding-right:15px}}
@media(max-width:760px){html{scroll-padding-top:135px}header .wrap{align-items:flex-start;flex-direction:column;gap:8px;padding:15px 0}.brand img{width:200px}nav{gap:19px;flex-wrap:wrap}nav a{font-size:11px;padding:6px 0}nav a:last-child{padding-left:15px}.hero{padding:38px 0 48px}.hero-grid{grid-template-columns:1fr;gap:35px}.hero h1{font-size:44px;max-width:550px}.hero .lead{font-size:16px}.hero-note{margin-top:25px}.technical-panel{box-shadow:9px 9px 0 #e4e9e7}.technical-panel img{height:330px}.discipline-strip .wrap{flex-wrap:wrap;justify-content:flex-start;gap:12px 23px}.discipline-strip span{font-size:10px}section{padding:58px 0}.grid,.steps{grid-template-columns:1fr}.card,.card:nth-child(3n){margin:0;padding:25px 0}.number{margin-bottom:13px}.steps{gap:20px}.steps article{border-bottom:1px solid var(--line);padding-bottom:15px}.wash .lead{font-size:17px}#meeting>.wrap{padding:30px 20px}fieldset{padding:15px}.hero-actions .button{font-size:12px}h2{margin-bottom:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Compact digital business card */
body{background:#f5f7f8}header{position:relative;background:#fff}header .wrap{min-height:90px;width:min(960px,88%)}nav a:last-child{border:0;padding-left:0}.business-main{min-height:calc(100svh - 166px);padding:44px 6%;display:flex;align-items:center;justify-content:center}.business-card{width:960px;max-width:100%;display:grid;grid-template-columns:minmax(0,1fr) 245px;background:#fff;border:1px solid #dbe3e9;box-shadow:0 16px 60px #08284c08;border-radius:5px}.business-content{padding:42px 44px 28px}.business-content h1{font-size:clamp(32px,3.5vw,44px);line-height:1.17;letter-spacing:-.045em;margin:21px 0}.business-intro{font-size:15px;line-height:1.8;color:var(--muted);max-width:510px}.business-services{list-style:none;display:flex;flex-wrap:wrap;gap:8px 17px;padding:0;margin:23px 0}.business-services li{font-size:11px;color:var(--navy);border-bottom:1px solid #c9d9e6;padding-bottom:4px}.business-caption{font-size:12px;color:var(--muted);margin:25px 0 0}.business-art{background:#08284c;position:relative;display:flex;align-items:center;border-radius:0 4px 0 0;overflow:hidden}.business-art img{width:140%;max-width:none;opacity:.75;margin-left:-20%}.business-art span{position:absolute;bottom:25px;left:24px;font-size:8px;letter-spacing:.18em;color:#a9c5df}.business-contact{grid-column:1/-1}#meeting.business-contact{background:#fff;border-top:1px solid var(--line)}.business-contact summary{list-style:none;cursor:pointer;padding:18px 44px;font-size:13px;font-weight:600;color:var(--navy);display:flex;align-items:center;justify-content:space-between}.business-contact summary::-webkit-details-marker{display:none}.business-contact summary:hover{background:#edf3f8}.business-contact summary:focus-visible{outline:2px solid #608fb8;outline-offset:-4px}.business-contact summary span{font-size:19px;font-weight:400}.business-contact[open] summary span{transform:rotate(90deg)}.business-form{padding:12px 44px 36px;border-top:1px solid var(--line)}.business-form h2{font-size:26px;margin-top:20px}footer{background:transparent;color:#718195;text-align:center;padding:20px 0;font-size:10px}footer .wrap{display:block!important}
@media(max-width:760px){header .wrap{flex-direction:row;min-height:78px;padding:0;gap:12px}.brand img{width:190px}nav{gap:0}.business-main{padding:24px 6%;min-height:calc(100svh - 150px)}.business-card{grid-template-columns:1fr}.business-content{padding:30px 26px 24px}.business-content h1{font-size:35px}.business-art{display:none}.business-contact summary{padding:17px 26px}.business-form{padding:12px 20px 28px}.business-services{gap:8px 13px}.business-intro{font-size:14px}}
/* Quiet contact layout */
.business-form{padding:28px 44px 36px;background:#fbfcfd}.business-form h2{font-size:30px;font-weight:500;letter-spacing:-.035em;margin:4px 0 8px!important}.business-form>p{margin:0 0 30px;font-size:13px!important}.m2s-meeting-form{max-width:690px;margin:auto}.m2s-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.business-form label{font-size:11px;font-weight:500;letter-spacing:.02em;margin:14px 0 8px}.business-form input:not([type=checkbox]),.business-form textarea,.business-form select{border:1px solid #d8e1e8;border-radius:4px;background:#fff;padding:11px 13px;font-size:14px;box-shadow:none;box-sizing:border-box}.business-form input:focus,.business-form textarea:focus{outline:2px solid #608fb850;outline-offset:1px}.business-form fieldset{border:0;border-top:1px solid #dce5ec;background:transparent;padding:20px 0 0;margin:30px 0 20px;min-width:0}.business-form legend{font-size:10px;text-transform:uppercase;letter-spacing:.14em;padding:0 14px 0 0;color:#60809a}.business-form #m2s-date-help{font-size:11px;line-height:1.7;margin:0 0 16px}.business-form .inline{display:flex;align-items:flex-start;gap:10px;font-size:11px;font-weight:400;letter-spacing:0;line-height:1.65}.business-form .inline input{margin:3px 0 0;accent-color:#08284c;flex-shrink:0;width:14px;height:14px}.business-form .m2s-proposal{margin:20px 0 12px}.business-form .m2s-proposal h3{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:#778b9b;margin:0 0 8px}.business-form .m2s-combo-enhanced>.m2s-calendar-trigger{border:1px solid #d8e1e8;min-height:48px;border-radius:4px;font-size:13px!important;padding:12px 14px}.business-form .m2s-calendar-trigger:after{color:#608fb8}.m2s-alternatives{margin:12px 0 0}.m2s-alternatives>summary{display:flex;justify-content:space-between;list-style:none;font-size:11px;color:#60809a;cursor:pointer;padding:10px 0;max-width:260px}.m2s-alternatives>summary::-webkit-details-marker{display:none}.m2s-alternatives[open]>summary span{transform:rotate(45deg)}.business-form .m2s-calendar{box-sizing:border-box;border:1px solid #d9e3ec;box-shadow:0 14px 40px #08284c14;border-radius:6px;padding:20px;top:calc(100% + 7px)}.business-form .m2s-calendar-heading strong{font-size:13px;font-weight:500}.business-form .m2s-weekday{font-size:10px;font-weight:500;color:#8193a3}.business-form .m2s-calendar button{font-size:12px;font-weight:400}.business-form .m2s-calendar-grid button{background:#f0f5f9;color:#25465f;min-height:32px}.business-form .m2s-calendar button:disabled{background:transparent;color:#c3ccd3}.business-form .m2s-combo-date{font-size:13px;font-weight:500}.business-form .m2s-combo-times button{background:#f3f7fa;border-color:#e1e9ef;color:#25465f;padding:9px}.business-form .m2s-calendar-hint{font-size:11px!important}.business-form .m2s-meeting-form>p{font-size:10px!important;line-height:1.7;color:#8594a0!important;max-width:590px}.business-form .m2s-meeting-form>p:last-child{margin:23px 0 0}.business-form button[type=submit]{font-size:12px;padding:12px 23px;font-weight:500;border-radius:4px}.business-form textarea{resize:vertical;min-height:90px}.business-form .m2s-combo-clear{font-size:10px!important}
@media(max-width:600px){.business-form{padding:25px 24px 30px}.m2s-contact-grid{grid-template-columns:1fr;gap:0}.business-form .m2s-calendar{padding:14px}.business-form h2{font-size:27px}}

.business-form>h2,.business-form>p{max-width:690px;margin-left:auto!important;margin-right:auto!important}.business-form .m2s-combo-date{text-transform:none}

/* Balanced type and control proportions */
.business-form label{font-size:12px;line-height:1.5}.business-form input:not([type=checkbox]),.business-form select{height:40px;padding:8px 12px;font-size:14px;line-height:1.4}.business-form textarea{font-size:14px;line-height:1.55;padding:10px 12px;min-height:86px}.business-form .m2s-combo-enhanced>.m2s-calendar-trigger{min-height:40px;padding:9px 12px;font-size:14px!important;line-height:1.4}.business-form .m2s-meeting-form>.inline{font-size:12px}.business-form button[type=submit]{font-size:13px;line-height:1.4;padding:10px 20px}.business-art{background:#edf3f7}.business-art img{width:100%;height:100%;object-fit:cover;max-width:100%;opacity:1;margin:0}.business-form .m2s-proposal h3{font-size:11px}.business-form .m2s-alternatives>summary{font-size:12px}
/* Approved P&ID to 3D artwork — show the entire composition */
.business-card{grid-template-columns:minmax(0,1fr)}.business-content{padding:32px 44px 8px}.business-content h1{margin:14px 0;font-size:clamp(30px,3.5vw,40px)}.business-intro{max-width:740px;margin:12px 0}.business-services{margin:18px 0 0}.business-caption{margin-top:16px}.business-art{display:block;background:#fff;border-radius:0;padding:12px 24px 20px;overflow:visible}.business-art img{display:block;width:100%;height:auto;object-fit:contain;margin:0;max-width:100%}.business-main{padding-top:28px;padding-bottom:28px}
@media(max-width:760px){.business-content{padding:26px 25px 8px}.business-content h1{font-size:32px}.business-art{display:block;padding:14px 8px 18px}.business-caption{font-size:12px}}
/* Supporting illustration with restrained scale */
.business-content{padding:30px 40px 8px}.business-art{width:min(560px,100%);justify-self:center;padding:8px 12px 14px}.business-card{width:900px}.business-content h1{max-width:740px}.business-caption{display:none}
@media(max-width:760px){.business-content{padding:26px 25px 8px}.business-art{width:270px;max-width:100%;padding:4px 8px 12px}}
/* Illustration provides context beside the message */
.business-card{width:960px;grid-template-columns:minmax(0,1fr) 290px;align-items:center}.business-content{padding:38px 12px 36px 38px}.business-content h1{font-size:36px;max-width:580px;line-height:1.18}.business-intro{font-size:14px;line-height:1.8}.business-art{width:100%;padding:18px 12px 18px 0;align-self:center;justify-self:end}.business-art img{opacity:.78}.business-services{gap:8px 14px}.business-contact{align-self:stretch}
@media(max-width:760px){.business-card{grid-template-columns:minmax(0,1fr)}.business-content{padding:28px 26px 22px}.business-content h1{font-size:32px}.business-art{display:none}}

.business-content h1{font-size:32px}.business-intro{font-size:13px}@media(max-width:760px){.business-content h1{font-size:29px}.business-intro{font-size:13px}}
/* Airy white background with a restrained blue wash */
body{background:#fcfdff;background-image:radial-gradient(ellipse at 50% 46%,#ffffff 0%,#ffffff 24%,#f7faff 65%,#f0f5fb 100%);background-attachment:fixed}.business-card{box-shadow:0 10px 38px #163f6805;border-color:#e2e9f0}header{border-bottom-color:#e9eef4}
/* Open stationery-inspired composition */
body{background:#fff;background-image:none}.business-card{border:0;border-radius:0;box-shadow:none;background:transparent}.business-content{padding:24px 22px 36px 0}.business-content .eyebrow::before{content:'';display:block;width:42px;height:2px;background:#608fb8;margin-bottom:22px}.business-art{padding-right:0}.business-contact{border-top:1px solid #dce6ee!important}.business-contact summary{padding:22px 0}.business-contact summary:hover{background:transparent;color:#608fb8}header{border-bottom-color:transparent}.business-form{border-top:1px solid #edf1f5;background:#fff;padding-left:0;padding-right:0}footer{color:#8a9aa7}
@media(max-width:760px){.business-content{padding:20px 0 28px}.business-contact summary{padding:20px 0}.business-form{padding:22px 0}}

/* White center fading toward the logo's steel blue at window edges */
body{background:#fff;background-image:radial-gradient(ellipse at 50% 48%,#fff 0%,#fff 36%,#f1f6fa 62%,#c5d8e7 85%,#608fb8 125%);background-attachment:fixed}header{background:transparent}.business-art{background:transparent}.business-card{background:transparent}

.brand img,.business-art img{mix-blend-mode:multiply}#meeting.business-contact{background:transparent}

header{mix-blend-mode:multiply}
/* Separate wordmark and full-width foundation line */
header{padding-top:28px;position:relative}header .wrap{min-height:90px}.brand img{clip-path:inset(0 0 12% 0)}header::after{content:'';display:block;height:1px;width:100%;background:linear-gradient(90deg,transparent 0%,#608fb845 12%,#08284c 40%,#08284c 60%,#608fb845 88%,transparent 100%)}.business-main{min-height:calc(100svh - 194px)}.business-contact summary{justify-content:flex-start;gap:14px}.business-contact summary span{font-size:17px}.business-contact summary:hover span{transform:translate(2px,-2px)}.business-contact[open] summary span{transform:rotate(90deg)}
@media(max-width:760px){header{padding-top:18px}header .wrap{min-height:78px}.business-main{min-height:calc(100svh - 172px)}}
/* Expanded contact continues the open page layout */
.business-contact .business-form{background:transparent;border:0;padding:20px 0 32px}.business-form>h2,.business-form>p{margin-left:0!important;margin-right:0!important}.business-form .m2s-meeting-form{max-width:690px;margin:0}.business-form input:not([type=checkbox]),.business-form textarea,.business-form select{background:#ffffffb3}.business-form>h2{font-size:27px}.business-form>p{margin-bottom:24px}.business-contact[open]{scroll-margin-top:30px}
@media(max-width:760px){.business-contact .business-form{padding:14px 0 24px}.business-form>h2{font-size:25px}}

.brand-custom img{clip-path:none}.public-contact{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 24px;padding:0 0 22px;font-size:12px;color:var(--muted)}.public-contact a{color:inherit;text-decoration:none}.public-contact a:hover{text-decoration:underline}

footer .public-contact{justify-content:center;gap:6px 22px;font-size:11px;line-height:1.7;padding:0 0 12px;color:#657e92}footer .footer-credit{font-size:10px;color:#8a9aa7}@media(max-width:760px){footer .public-contact{gap:7px 18px}footer{padding:22px 0}}

.privacy-info{max-width:690px;margin:12px auto 0;text-align:left;font-size:11px;line-height:1.8}.privacy-info>summary{text-align:center;cursor:pointer;list-style:none;color:#657e92}.privacy-info>div{padding:20px 0}.privacy-link{font-size:11px!important;margin:8px 0 20px!important}
