/* ALT Construct — dedicated showroom partnership page. No external font or animation dependencies. */
.partner-page{--p-gold:#d9bd90;--p-cream:#f7f3ec;--p-dark:#111918;--p-grey:#aab2ab;overflow:hidden}
.partner-page p{margin-top:0}
.partner-page .partner-chapter,.partner-page .partner-overline{font:700 10px/1.5 'Helvetica Neue',Arial,sans-serif;letter-spacing:.23em;text-transform:uppercase}
.partner-page .partner-chapter{color:#907953}
.partner-page .partner-h2{font-size:clamp(43px,5.2vw,85px);line-height:1.025;letter-spacing:-.055em;font-weight:400;margin:22px 0 26px;text-wrap:balance}
.partner-page .partner-h2 em{font-style:italic;color:#a38a65}
.partner-pad{padding:clamp(85px,9vw,145px) 0}
.partner-hero{min-height:775px;min-height:min(900px,100svh);background:#141c1b;position:relative;color:#fff;isolation:isolate;display:flex;align-items:center}
.partner-hero-media{position:absolute;inset:0;overflow:hidden;z-index:-1}
.partner-hero-media img{width:100%;height:100%;object-fit:cover;object-position:56% 53%;filter:saturate(.85) contrast(1.05)}
.partner-hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,17,16,.95) 0%,rgba(8,17,16,.88) 33%,rgba(8,17,16,.5) 66%,rgba(8,17,16,.28) 100%),linear-gradient(0deg,rgba(4,12,11,.75),transparent 36%)}
.partner-hero-shell{display:grid;grid-template-columns:minmax(0,790px) 1fr;gap:30px;align-items:center;min-height:inherit;padding-top:122px;padding-bottom:110px;position:relative}
.partner-hero-copy{max-width:800px}
.partner-hero-overline{color:#f2d9ad;display:flex;align-items:center;gap:14px;line-height:1.8;margin:0 0 45px;animation:partnerFadeUp .7s both}
.partner-gold-dot{width:8px;height:8px;flex:0 0 8px;display:inline-block;border:1px solid var(--p-gold);transform:rotate(45deg)}
.partner-display{font-size:clamp(64px,8.1vw,130px);line-height:.99;letter-spacing:-.065em;margin:0 0 36px;color:#fff}
.partner-line-mask{overflow:hidden;display:block;padding-bottom:.075em;margin-bottom:-.075em}
.partner-line-mask>span{display:block;animation:partnerTitleUp 1s cubic-bezier(.2,.7,.2,1) both}
.partner-line-mask:nth-child(2)>span{animation-delay:.18s}
.partner-gold{color:#dfc5a0;font-style:italic}
.partner-display .partner-gold{position:relative;display:inline-block}
.partner-display .partner-gold:after{content:'';position:absolute;left:4%;bottom:0;height:1px;background:linear-gradient(90deg,transparent,#d8ba89);width:92%;transform:scaleX(0);transform-origin:left;animation:partnerLine 1.25s .85s both}
.partner-hero-intro{max-width:620px;font-size:clamp(16px,1.35vw,19px);line-height:1.8;color:#e3e8e2;margin:0 0 30px;animation:partnerFadeUp .9s .38s both}
.partner-hero-actions{display:flex;align-items:center;gap:32px;flex-wrap:wrap;animation:partnerFadeUp .9s .55s both}
.partner-hero-actions .btn,.partner-final-actions .btn{min-height:58px}
.partner-text-link{font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:700;color:#f9ecdb;border-bottom:1px solid #c9b48e;padding-bottom:8px;transition:color .2s,border-color .2s}
.partner-text-link:hover{color:white;border-color:white}
.partner-hero-edge{justify-self:end;writing-mode:vertical-rl;display:flex;align-items:center;gap:18px;color:#e4d9c5;letter-spacing:.18em;text-transform:uppercase;font-size:9px;opacity:.8}
.partner-edge-rule{height:70px;width:1px;background:#d8bd92}
.partner-hero-bottom{position:absolute;bottom:0;left:0;right:0;z-index:2;border-top:1px solid #ffffff42}
.partner-bottom-inner{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:18px;color:#c8cec9;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.partner-bottom-inner a{color:#e7d1ac;transition:color .2s}.partner-bottom-inner a:hover{color:#fff}
.partner-statement{background:#f8f7f2}
.partner-statement-grid{display:grid;grid-template-columns:minmax(180px,.35fr) minmax(0,1fr);gap:clamp(45px,6vw,110px)}
.partner-small-intro{padding-top:19px;display:flex;flex-direction:column;align-items:flex-start;gap:22px}
.partner-rule{width:56px;height:1px;background:#ac9671}
.partner-margin-note{font-size:13px;color:#777a72;line-height:1.7}
.partner-statement .partner-h2{max-width:1060px;font-size:clamp(45px,5.5vw,91px);margin-top:0;margin-bottom:36px}
.partner-lead-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(25px,5vw,80px)}
.partner-lead-grid p{font-size:16px;line-height:1.9;color:#616960;margin:0}
.partner-lead-grid strong{font-weight:600;color:#26362e}
.partner-roles{background:#ebe8df}
.partner-section-heading{display:grid;grid-template-columns:1.1fr .7fr;column-gap:70px;align-items:end;margin-bottom:48px}
.partner-section-heading .partner-chapter{grid-column:1/-1}
.partner-section-heading .partner-h2{margin-bottom:0}
.partner-section-heading>p{font-size:16px;color:#63675f;line-height:1.9;max-width:420px;margin:0 0 5px}
.partner-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:stretch}
.partner-role-card{padding:clamp(35px,4vw,70px);min-height:610px;display:flex;flex-direction:column;position:relative}
.partner-role-design{background:#f7f5ee;border:1px solid #d2c8b7}
.partner-role-install{background:#1c2825;color:#f7f7f0;border:1px solid #40544b}
.partner-role-meta{display:flex;justify-content:space-between;gap:10px;font-size:10px;letter-spacing:.17em;color:#967e59;font-weight:700}
.partner-role-install .partner-role-meta{color:#dcc39b}
.partner-role-card h3{font-size:clamp(43px,4.2vw,71px);line-height:1.03;margin:42px 0 18px;letter-spacing:-.055em}
.partner-role-card h3 em{color:#a48b66}
.partner-role-install h3 em{color:#e4c99c}
.partner-role-intro{font-size:16px;line-height:1.8;max-width:480px;color:#657067}
.partner-role-install .partner-role-intro{color:#c4cdc5}
.partner-clean-list{margin:17px 0 42px;padding:0;list-style:none}
.partner-clean-list li{position:relative;padding:13px 0 13px 27px;border-bottom:1px solid #c6c5bb;font-size:13px;line-height:1.65;letter-spacing:.01em}
.partner-role-install .partner-clean-list li{border-color:#455650}
.partner-clean-list li:before{content:'↗';position:absolute;left:0;top:13px;color:#a58860;font-size:15px}
.partner-role-install .partner-clean-list li:before{color:#dfc89f}
.partner-role-foot{margin-top:auto;font-size:10px;letter-spacing:.17em;color:#867653;line-height:1.7}
.partner-role-install .partner-role-foot{color:#d7c39d}
.partner-roles-note{border-left:2px solid #a78e66;padding-left:20px;font-size:13px;color:#677067;line-height:1.8;margin:30px 0 0;max-width:880px}
.partner-image-story{display:grid;grid-template-columns:1fr 1fr;min-height:780px;background:#131c1a;color:white}
.partner-image-story-photo{min-height:640px;position:relative;overflow:hidden}
.partner-image-story-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;object-position:45% 50%;transition:transform 1s}
.partner-image-story-photo:hover img{transform:scale(1.035)}
.partner-image-story-photo:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(0deg,#0007,transparent);pointer-events:none}
.partner-image-caption{position:absolute;bottom:26px;left:clamp(25px,4vw,60px);z-index:2;color:#f4e5ca;font-size:10px;letter-spacing:.18em}
.partner-image-story-copy{padding:clamp(65px,7.5vw,132px) clamp(36px,6vw,115px);display:flex;align-items:center}
.partner-image-story-copy>div{max-width:600px}
.partner-image-story .partner-chapter{color:#d8ba89}
.partner-image-story .partner-h2 em{color:#e5c69b}
.partner-image-story-copy>div>p{color:#bfc9c2;font-size:16px;line-height:1.85;max-width:540px;margin-bottom:40px}
.partner-fine-points>div{border-top:1px solid #ffffff35;display:grid;grid-template-columns:38px 1fr;column-gap:18px;padding-top:17px;padding-bottom:15px}
.partner-fine-points span{font-size:11px;color:#d6b88b;grid-row:span 2}
.partner-fine-points strong{font-size:16px;font-weight:500}
.partner-fine-points p{grid-column:2;color:#aab7ae;font-size:13px;line-height:1.7;margin:7px 0 0}
.partner-capabilities{background:#f8f7f2}
.partner-capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.partner-capability{background:white;border:1px solid #e0ddd5;overflow:hidden;transition:transform .3s,box-shadow .3s}
.partner-capability:hover{transform:translateY(-5px);box-shadow:0 20px 60px #14201a14}
.partner-capability-media{height:320px;overflow:hidden;background:#d1d0c8}
.partner-capability-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.partner-capability:hover img{transform:scale(1.045)}
.partner-capability-content{padding:34px 33px 43px}
.partner-cap-no{font-size:10px;letter-spacing:.18em;color:#a48962}
.partner-capability h3{font-size:clamp(30px,3vw,46px);line-height:1.05;letter-spacing:-.04em;margin:20px 0 18px}
.partner-capability p{font-size:14px;color:#677067;line-height:1.8;margin-bottom:0}
.partner-capability-note{font-size:11px;color:#858a80;max-width:780px;margin:21px 0 0;line-height:1.7}
.partner-journey{background:#e8e4da}
.partner-journey-heading{display:grid;grid-template-columns:1.3fr .7fr;gap:60px;align-items:end;margin-bottom:55px}
.partner-journey-heading .partner-h2{margin-bottom:0}
.partner-journey-heading>p{max-width:420px;color:#636b62;font-size:15px;line-height:1.9;margin:0}
.partner-timeline{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;counter-reset:step}
.partner-timeline li{border-top:1px solid #a5a79e;padding-top:25px;display:flex;flex-direction:column}
.partner-timeline-number{height:65px;font:italic 38px/1 Georgia,serif;color:#a58b65}
.partner-timeline h3{font-size:clamp(29px,2.9vw,40px);line-height:1.07;margin:0 0 17px}
.partner-timeline p{font-size:13px;line-height:1.85;color:#626b62;margin:0}
.partner-portfolio-panel{background:#111918;color:white;display:grid;grid-template-columns:1.15fr 1fr;min-height:590px}
.partner-portfolio-image{position:relative;min-height:480px;overflow:hidden}
.partner-portfolio-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.partner-portfolio-content{padding:clamp(62px,7vw,115px);display:flex;align-items:center}
.partner-portfolio-content .partner-chapter{color:#d8bd96}
.partner-portfolio-content .partner-h2{font-size:clamp(49px,5.4vw,78px)}
.partner-portfolio-content .partner-h2 em{color:#dbc096}
.partner-portfolio-content p{color:#b9c5ba;max-width:450px;font-size:16px;line-height:1.85}
.partner-portfolio-links{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:34px}
.partner-plain-link{font-size:11px;font-weight:700;color:#e1c79f;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #e1c79f;padding-bottom:7px}
.partner-faq{background:#f6f4ee}
.partner-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,8vw,125px);align-items:start}
.partner-faq-grid>div:first-child>p{font-size:15px;max-width:410px;color:#687069;line-height:1.9}
.partner-faq-items{border-top:1px solid #c9cbc2}
.partner-faq-items details{border-bottom:1px solid #c9cbc2}
.partner-faq-items summary{list-style:none;display:flex;gap:20px;align-items:center;justify-content:space-between;cursor:pointer;padding:22px 0;font-weight:600;font-size:15px;line-height:1.5;color:#28352e;transition:color .2s}
.partner-faq-items summary::-webkit-details-marker{display:none}
.partner-faq-items summary span{font-size:25px;line-height:1;color:#b1966c;transition:transform .25s}
.partner-faq-items details[open] summary span{transform:rotate(45deg)}
.partner-faq-items summary:hover{color:#977b4f}
.partner-faq-items details p{color:#626b61;font-size:14px;line-height:1.85;padding-right:32px;margin:0 0 25px}
.partner-final{background:#16231f;color:white;padding:clamp(95px,9vw,155px) 0}
.partner-final-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:clamp(40px,8vw,125px);align-items:center}
.partner-final .partner-chapter{color:#dfbd86}
.partner-final-heading{font-size:clamp(53px,6.3vw,105px);line-height:.98;letter-spacing:-.055em;margin:23px 0 29px}
.partner-final-heading em{color:#e1c49c}
.partner-final-grid>div>p{font-size:16px;max-width:590px;line-height:1.85;color:#bac5bc;margin-bottom:31px}
.partner-final-actions{display:flex;gap:27px;align-items:center;flex-wrap:wrap}
.partner-final-card{padding:44px 35px;background:#ffffff08;border:1px solid #ffffff35;display:flex;flex-direction:column;gap:13px;min-width:0}
.partner-final-card>p{font-size:clamp(32px,3.2vw,50px);line-height:1.1;margin:32px 0 20px}
.partner-final-card>a{font-size:12px;color:#e3ceab;line-height:1.5;word-break:break-word;padding:7px 0;display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #ffffff30}
.partner-final-card>a:hover{color:#fff}
/* Text and section reveal effects: they never hide content without JavaScript. */
@keyframes partnerTitleUp{from{transform:translateY(115%);opacity:.25}to{transform:translateY(0);opacity:1}}
@keyframes partnerFadeUp{from{transform:translateY(17px);opacity:0}to{transform:translateY(0);opacity:1}}
@keyframes partnerLine{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.partner-motion-ready [data-partner-reveal]:not(.partner-visible){opacity:0;transform:translateY(22px)}
.partner-motion-ready [data-partner-reveal]{transition:opacity .7s ease,transform .85s cubic-bezier(.2,.75,.2,1)}
.partner-motion-ready [data-partner-reveal].partner-visible{opacity:1;transform:translateY(0)}
@media (max-width:1100px){.partner-role-card{padding:40px}.partner-capability-media{height:270px}.partner-image-story-copy{padding:70px 45px}.partner-capability-content{padding:30px 25px}}
@media (max-width:860px){.partner-hero{min-height:740px;min-height:82svh}.partner-hero-shell{grid-template-columns:1fr}.partner-hero-edge{display:none}.partner-hero-media:after{background:linear-gradient(90deg,#0a1210ed,#0a1210ad 70%,#0a12108a),linear-gradient(0deg,#0a1210a0,transparent)}.partner-statement-grid{grid-template-columns:1fr;gap:33px}.partner-small-intro{gap:13px;padding:0}.partner-margin-note{display:none}.partner-section-heading{grid-template-columns:1fr;gap:21px}.partner-section-heading>p{max-width:620px}.partner-role-grid{gap:14px}.partner-role-card{padding:32px;min-height:550px}.partner-image-story{grid-template-columns:1fr}.partner-image-story-photo{min-height:580px}.partner-image-story-copy{padding:85px 40px}.partner-capability-grid{grid-template-columns:1fr 1fr}.partner-journey-heading{grid-template-columns:1fr;gap:22px}.partner-timeline{grid-template-columns:1fr 1fr;row-gap:45px}.partner-portfolio-panel{grid-template-columns:1fr 1fr}.partner-portfolio-content{padding:55px 34px}.partner-faq-grid{gap:55px;grid-template-columns:1fr}.partner-final-grid{grid-template-columns:1fr}}
@media (max-width:620px){.partner-pad{padding:78px 0}.partner-hero{min-height:760px;min-height:90svh}.partner-hero-media img{object-position:65% center}.partner-hero-shell{padding-top:132px;padding-bottom:105px}.partner-hero-overline{font-size:9px;letter-spacing:.14em;margin-bottom:26px;max-width:350px}.partner-display{font-size:clamp(59px,13vw,88px);line-height:1}.partner-hero-intro{font-size:15px;line-height:1.75;max-width:520px}.partner-hero-actions{align-items:flex-start;gap:21px;flex-direction:column}.partner-hero-actions .btn{min-height:49px}.partner-hero-bottom .partner-bottom-inner{min-height:54px}.partner-bottom-inner>span:nth-child(2){display:none}.partner-bottom-inner{font-size:9px;letter-spacing:.05em}.partner-statement .partner-h2{font-size:clamp(43px,10.7vw,63px)}.partner-lead-grid{grid-template-columns:1fr;gap:18px}.partner-lead-grid p{font-size:15px}.partner-h2{font-size:clamp(43px,10.7vw,65px)}.partner-role-grid{grid-template-columns:1fr;gap:15px}.partner-role-card{min-height:0;padding:36px 28px 38px}.partner-role-card h3{font-size:50px;margin:35px 0 18px}.partner-clean-list{margin-bottom:37px}.partner-image-story-photo{min-height:430px}.partner-image-story-copy{padding:75px 24px}.partner-capability-grid{grid-template-columns:1fr}.partner-capability-media{height:320px}.partner-capability h3{font-size:41px}.partner-timeline{grid-template-columns:1fr;gap:24px}.partner-timeline li{display:grid;grid-template-columns:65px 1fr;column-gap:15px;align-items:start}.partner-timeline-number{grid-row:1/3}.partner-timeline h3{margin:0 0 8px}.partner-timeline p{grid-column:2}.partner-portfolio-panel{grid-template-columns:1fr}.partner-portfolio-image{min-height:400px}.partner-portfolio-content{padding:77px 25px}.partner-faq-items summary{font-size:14px}.partner-final-grid{gap:40px}.partner-final-heading{font-size:clamp(50px,11vw,67px)}.partner-final-card{padding:32px 26px}.partner-final-actions{align-items:flex-start;flex-direction:column}.partner-final-actions .btn{min-height:51px}.partner-portfolio-links{gap:20px}}
@media (max-width:390px){.partner-display{font-size:56px}.partner-role-card h3{font-size:45px}.partner-bottom-inner a{max-width:145px;text-align:right}.partner-hero-intro{font-size:14px}.partner-capability-media{height:280px}}
@media (prefers-reduced-motion:reduce){.partner-line-mask>span,.partner-hero-overline,.partner-hero-intro,.partner-hero-actions,.partner-display .partner-gold:after{animation:none!important}.partner-motion-ready [data-partner-reveal]{opacity:1!important;transform:none!important;transition:none!important}.partner-capability:hover,.partner-image-story-photo:hover img{transform:none}}
