/* Partner With Us: page-scoped styles. The existing five pages are unchanged. */
:root{--p-deep:#082e34;--p-mid:#075e62;--p-bright:#4bc0bb;--p-ink:#173234;--p-muted:#547072;--p-line:#d8e5e3}
.partner-nav-link{background:#e8f4f1;border-radius:2px;padding:10px 13px!important;color:var(--p-mid)!important}
.partner-hero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 83% 2%,#0f6c6c 0%,#09383f 46%,#072930 100%)}
.partner-hero:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;background:repeating-linear-gradient(130deg,transparent 0,transparent 64px,rgba(89,205,200,.21) 65px,transparent 66px);mask-image:linear-gradient(to left,#000,transparent 76%)}
.partner-hero-grid{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:58px;align-items:center;padding-block:91px 97px}
.partner-eyebrow,.partner-kicker{display:inline-block;color:#8ce0db;font-size:11px;letter-spacing:.18em;font-weight:800;text-transform:uppercase}
.partner-eyebrow{display:flex;gap:10px;align-items:center}.partner-signal{width:8px;height:8px;border-radius:50%;background:var(--p-bright);box-shadow:0 0 0 5px #4bc0bb23}
.partner-hero h1{font-family:Georgia,serif;font-weight:700;color:white;font-size:clamp(42px,5vw,69px);letter-spacing:-.045em;line-height:1.09;max-width:740px;margin:22px 0 24px}
.partner-hero h1 span{color:#6ad6cd}
.partner-hero-intro{font-size:17px;line-height:1.8;max-width:625px;color:#d2e9e6;margin:0}
.partner-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:31px}
.partner-button{display:inline-flex;align-items:center;justify-content:center;gap:23px;padding:13px 19px;text-decoration:none;font-weight:800;font-size:13px;min-height:51px;transition:transform .18s,background .18s}
.partner-button:hover{transform:translateY(-2px)}
.partner-primary{color:#073437;background:#77d6cf;border:1px solid #77d6cf}
.partner-ghost{color:#edfafa;border:1px solid #78aba9;background:#ffffff0a}
.partner-support-line{display:flex;gap:20px;flex-wrap:wrap;margin-top:32px}
.partner-support-line span{color:#b7d9d5;font-size:12px;position:relative;padding-left:15px}
.partner-support-line span:before{content:"✓";position:absolute;left:0;color:#6cdbd0;font-weight:800}
.partner-hero-graphic{position:relative;min-height:450px;padding:27px;border:1px solid #77c1bd83;background:linear-gradient(145deg,#ffffff12,#001f2547);box-shadow:22px 23px 0 #2aa69c1c;overflow:hidden}
.partner-hero-graphic:before{content:"";position:absolute;inset:0;opacity:.3;background-image:linear-gradient(#a2e9e918 1px,transparent 1px),linear-gradient(90deg,#a2e9e918 1px,transparent 1px);background-size:32px 32px}
.partner-motif-head{position:relative;z-index:2;display:flex;justify-content:space-between;gap:10px;font-size:11px;letter-spacing:.1em;font-weight:800;color:#a1e2db}
.partner-motif-head span{color:#7de3d8}
.partner-motif-box{position:absolute;z-index:3;display:flex;flex-direction:column;gap:6px;background:linear-gradient(120deg,#edf9f6,#ffffff);color:#123d40;padding:18px 23px;border-left:5px solid var(--p-bright);width:73%;box-shadow:5px 12px 22px #001c1d45}
.partner-motif-box small{font-size:10px;font-weight:800;letter-spacing:.12em;color:#337d7a}
.partner-motif-box strong{font:700 22px Georgia,serif;color:#103d3f}
.partner-motif-box span{font-size:12px;color:#557172}
.partner-motif-a{top:78px;left:10%}.partner-motif-b{top:194px;right:7%}.partner-motif-c{top:310px;left:10%}
.diagram-lines{position:absolute;inset:0;pointer-events:none}.diagram-lines:before,.diagram-lines:after{content:"";position:absolute;left:50%;top:12%;bottom:14%;width:2px;background:repeating-linear-gradient(to bottom,#53bbb8 0 8px,transparent 8px 14px);opacity:.8;transform:rotate(11deg)}
.partner-motif-footer{position:absolute;bottom:14px;left:25px;font-size:9px;font-weight:800;letter-spacing:.17em;color:#8dd1cb}
.partner-value{background:#edf5f3;border-bottom:1px solid var(--p-line)}
.partner-value-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.partner-value-grid>div{position:relative;padding:26px 25px 22px;border-right:1px solid #c4dad6}.partner-value-grid>div:first-child{padding-left:0}.partner-value-grid>div:last-child{border:0}
.partner-value-num{display:block;color:#277e79;font-size:12px;font-weight:800;letter-spacing:.1em;margin-bottom:8px}
.partner-value strong{font-family:Georgia,serif;font-size:21px;line-height:1.3;display:block;color:var(--p-ink)}
.partner-value p{color:#456164;font-size:13px;margin:7px 0 0;max-width:270px}
.partner-section{padding:84px 0}
.partner-trades-section{background:#fff}.partner-section-top{display:grid;grid-template-columns:1.14fr .86fr;gap:50px;align-items:end;margin-bottom:29px}
.partner-section-top h2{font-size:clamp(29px,3.1vw,41px);margin:10px 0 0;line-height:1.15;max-width:660px}
.partner-section-top p{font-size:15px;line-height:1.75;max-width:465px;margin:0;color:#4b6768}
.partner-section .partner-kicker{color:#227b78}
.partner-trades-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.partner-trade-card{display:flex;flex-direction:column;background:#f9fbfa;border:1px solid #d8e5e3;padding:26px;min-height:232px;transition:box-shadow .2s,transform .2s}
.partner-trade-card:hover{box-shadow:0 9px 24px #16383816;transform:translateY(-2px)}
.partner-trade-icon{width:44px;height:44px;background:#dcefeb;color:#126565;display:grid;place-items:center;font:bold 27px Georgia,serif;margin-bottom:17px}
.partner-trade-card h3{font-size:22px;line-height:1.25;margin-bottom:11px}.partner-trade-card p{font-size:13px;line-height:1.7;margin-bottom:20px}
.partner-trade-card>span{color:#2b807c;font-size:10px;letter-spacing:.12em;font-weight:800;margin-top:auto}
.partner-trades-note{margin-top:23px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#eaf4f2;padding:18px 22px;border-left:4px solid var(--p-bright);font-size:14px;color:#476263}
.partner-trades-note strong{color:#15494a}.partner-trades-note a{color:var(--p-mid);font-weight:800}
.partner-band{background:#103c42;color:#fff;padding:54px 0}.partner-band-inner{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}
.partner-band h2{color:#fff;font-size:37px;margin:13px 0}.partner-band p{color:#c9e6e2;font-size:14px;line-height:1.8;max-width:540px}
.partner-band .partner-kicker{color:#8ce0db}.partner-territory-panel{padding:27px;background:#ffffff0d;border:1px solid #79c8be70}
.partner-territory-title{display:block;color:#b0e6e0;font-size:10px;letter-spacing:.15em;font-weight:800;margin-bottom:16px}
.partner-territory-items{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.partner-territory-items span{padding:17px 10px;text-align:center;background:#dff4f0;color:#114547;font-size:12px;font-weight:800}
.partner-territory-panel p{font-size:12px;margin:17px 0 0;color:#badbd7}
.partner-process{background:#f4f8f7}.partner-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.partner-process-grid article{background:#fff;border:1px solid #d9e6e3;padding:27px 26px;box-shadow:0 6px 13px #123d3e0a}
.partner-process-grid b{display:block;color:var(--p-mid);font:700 28px Georgia,serif;margin-bottom:17px}
.partner-process-grid h3{font-size:22px;margin-bottom:12px}.partner-process-grid p{font-size:13px;line-height:1.75;margin:0}
.partner-form-area{background:#fff}.partner-inquiry-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:start}
.partner-inquiry-copy h2{font-size:clamp(31px,3.4vw,47px);margin:13px 0 21px}
.partner-inquiry-copy>p{font-size:15px;line-height:1.85}
.partner-inquiry-facts{margin-top:28px;border-top:1px solid var(--p-line)}
.partner-inquiry-facts div{display:flex;flex-direction:column;gap:4px;padding:18px 0;border-bottom:1px solid var(--p-line)}
.partner-inquiry-facts strong{color:#1d494b;font-family:Georgia,serif;font-size:19px}
.partner-inquiry-facts span{font-size:13px;color:#566c6b}
.partner-inquiry-note{font-size:12px!important;color:#637776;line-height:1.7!important;margin-top:25px}
.partner-form{background:#f5f9f8;border-top:5px solid var(--p-mid)}
.partner-form h3{font-size:31px;margin-bottom:7px}
.partner-form-lede{font-size:13px;color:#536d6c;margin-bottom:15px}
.partner-submit{width:100%;min-height:54px;padding:14px 19px;background:#075e62;color:#fff;border:0;font-weight:800;font-size:14px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;margin-top:25px}
.partner-submit:hover{background:#03494c}
.partner-form-explain{font-size:12px;color:#526d6c;line-height:1.65;margin-top:14px}
.partner-form .form-direct{font-size:13px;margin-top:17px}
.partner-form a{color:#075e62;font-weight:700}
.partner-faq{background:#eaf3f1}
.partner-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.partner-faq details{background:#fff;border:1px solid #d8e4e2;padding:18px 22px;align-self:start}
.partner-faq summary{font-family:Georgia,serif;font-size:18px;font-weight:700;cursor:pointer;color:var(--p-ink);padding-right:16px}
.partner-faq details p{font-size:14px;color:#536e6c;margin:16px 0 0;line-height:1.75}
.partner-hero a:focus-visible,.partner-section a:focus-visible,.partner-section button:focus-visible{outline:2px solid #4bc0bb;outline-offset:3px}
@media(max-width:1100px){.partner-hero-grid{grid-template-columns:1fr;gap:36px}.partner-hero-graphic{max-width:650px;width:100%}.partner-trades-grid{grid-template-columns:repeat(2,1fr)}.partner-inquiry-grid{grid-template-columns:1fr;gap:30px}.partner-form{max-width:850px}}
@media(max-width:760px){.partner-hero-grid{padding:55px 0}.partner-hero h1{font-size:clamp(39px,9vw,56px)}.partner-hero-intro{font-size:16px}.partner-hero-graphic{min-height:430px}.partner-value-grid{grid-template-columns:1fr}.partner-value-grid>div,.partner-value-grid>div:first-child{padding:16px 0;border-right:0;border-bottom:1px solid #c4dad6}.partner-value-grid>div:last-child{border:0}.partner-value strong{font-size:19px}.partner-section{padding:58px 0}.partner-section-top,.partner-band-inner{grid-template-columns:1fr;gap:16px}.partner-trades-grid,.partner-process-grid,.partner-faq-grid{grid-template-columns:1fr}.partner-trade-card{min-height:0}.partner-band h2{font-size:30px}.partner-form{padding:25px 18px}.partner-hero-graphic{box-shadow:12px 12px 0 #2aa69c1c}}
@media(max-width:480px){.partner-hero-graphic{min-height:390px;padding:20px}.partner-motif-box{width:82%;padding:14px}.partner-motif-a{left:4%;top:70px}.partner-motif-b{right:3%;top:168px}.partner-motif-c{left:4%;top:267px}.partner-motif-box strong{font-size:19px}.partner-motif-footer{font-size:8px;left:15px}.partner-territory-items{grid-template-columns:1fr}.partner-hero-graphic{display:none}.partner-actions{flex-direction:column;align-items:stretch}.form-pair{grid-template-columns:1fr}.partner-nav-link{background:transparent!important;padding:12px!important}}


/* Contractor form hardening for builder rendering */
.partner-form{padding:34px 34px 30px;background:#f5f8f8;border:1px solid #d8e5e3;border-top:4px solid var(--p-mid);box-shadow:0 10px 26px rgba(8,46,52,.06)}
.partner-form .form-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start;margin:0 0 2px}
.partner-form .form-pair>div,.partner-form .partner-field{display:flex;flex-direction:column;min-width:0}
.partner-form label{display:block;width:100%;font-size:13px;font-weight:700;line-height:1.35;color:#173234;margin:14px 0 8px}
.partner-form label span{color:#8d4f43}
.partner-form input,.partner-form select,.partner-form textarea{display:block;width:100%;max-width:100%;box-sizing:border-box;appearance:none;-webkit-appearance:none;background:#fff;border:1px solid #b9cdca;border-radius:3px;padding:13px 14px;font:15px/1.45 Arial,sans-serif;color:#173234;box-shadow:none;margin:0}
.partner-form input::placeholder,.partner-form textarea::placeholder{color:#758786;opacity:1}
.partner-form textarea{min-height:118px;resize:vertical}
.partner-form select{padding-right:42px;background-image:linear-gradient(45deg,transparent 50%,#4d6667 50%),linear-gradient(135deg,#4d6667 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% - 3px),calc(100% - 12px) calc(50% - 3px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}
.partner-form input:focus,.partner-form select:focus,.partner-form textarea:focus{border-color:#0b6a6f;outline:none;box-shadow:0 0 0 3px rgba(75,192,187,.16)}
.partner-form .partner-field{margin-top:2px}
.partner-form-explain,.form-direct,#contractor-status{max-width:100%}
@media (max-width:760px){.partner-form .form-pair{grid-template-columns:1fr;gap:0}.partner-form{padding:24px 20px}}
