.booth-planner{background:#f7f8f5;color:#102b46;padding-bottom:70px}
.bp-wrap{width:min(1380px,calc(100% - 64px));margin-inline:auto}
.bp-hero{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding-block:50px 65px}
.bp-hero h1{font-size:clamp(44px,5vw,74px);line-height:1.03;letter-spacing:-.05em;margin:0;font-weight:650}
.bp-hero h1 em{color:#cf5b25;font-style:normal}
.bp-hero p{max-width:520px;font-size:17px;line-height:1.8;color:#60717b;margin:24px 0}
.bp-primary{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-height:50px;padding:16px 22px;background:#cf5b25;border:0;border-radius:5px;color:#fff;text-decoration:none;font-size:13px;font-weight:650;cursor:pointer}
.bp-primary:hover{background:#b84b1c}.bp-primary:disabled{background:#667780;cursor:wait}
.bp-primary span{font-size:20px}.bp-hero-note{display:block;margin-top:20px;font-size:10px;color:#657782;letter-spacing:.04em}
.bp-hero figure{margin:0;border-radius:12px;overflow:hidden;background:#102b46}
.bp-hero img{width:100%;height:370px;object-fit:cover}
.bp-hero figcaption{padding:17px 22px;font-size:11px;color:#c4d1da;line-height:1.6}
.bp-config{scroll-margin-top:110px}.bp-heading{border-top:1px solid #d6dfe1;padding-top:45px;display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:32px}
.bp-heading h2,.bp-explain>h2{font-size:clamp(28px,3vw,40px);letter-spacing:-.035em;line-height:1.15;margin:0}
.bp-heading p{font-size:14px;color:#687985;line-height:1.7;margin:14px 0 0}
.bp-example{flex:none;border:1px solid #cbd5d9;border-radius:5px;background:#fff;padding:12px 16px;color:#102b46;cursor:pointer;font-size:12px}
.bp-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:32px;align-items:start}
.bp-fields{display:grid;gap:26px;min-width:0}
.bp-fields fieldset{margin:0;padding:25px 28px 28px;border:1px solid #dce3e4;border-radius:10px;background:#fff;min-width:0}
.bp-fields legend{float:left;width:100%;display:flex;align-items:center;gap:12px;margin:0 0 22px;padding:0;font-size:19px;font-weight:650;letter-spacing:-.025em;line-height:1.35}
.bp-fields legend+*{clear:both}
.bp-fields .bp-step-title{display:block;min-width:0}
.bp-fields .bp-step-number{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;margin:0;background:#102b46;color:#fff;border-radius:50%;font-size:11px;font-weight:700;letter-spacing:0;line-height:1;font-variant-numeric:tabular-nums}
.bp-help{font-size:12px;color:#6c7e89;line-height:1.7;margin:0 0 14px}
.bp-fields h3{font-size:13px;font-weight:650;margin:23px 0 8px}
.bp-two,.bp-three{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.bp-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.bp-field{display:flex;flex-direction:column;gap:8px;margin:10px 0 16px;min-width:0}
.bp-field>span{font-size:12px;font-weight:600;color:#344f60;line-height:1.4}
.bp-field input,.bp-field select,.bp-field textarea{width:100%;min-width:0;min-height:45px;padding:11px 12px;border:1px solid #cad5db;border-radius:5px;background:#fafbf9;color:#102b46;font-size:14px}
.bp-field textarea{resize:vertical;line-height:1.6}.bp-field input::placeholder,.bp-field textarea::placeholder{color:#85949d;font-size:12px}
.bp-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-block:18px}
.bp-options label{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.6;padding:12px;border:1px solid #dce3e4;border-radius:5px;cursor:pointer}
.bp-options input{width:17px;height:17px;margin:1px 0 0;flex:none;accent-color:#cf5b25}.bp-options label:has(input:disabled){opacity:.55}
.bp-summary{position:sticky;top:110px;padding:28px;background:#102b46;border-radius:10px;color:#fff;min-width:0;max-height:calc(100dvh - 130px);overflow-y:auto}
.bp-summary .eyebrow{color:#efaa80;font-size:10px;margin-bottom:12px}.bp-summary h2{font-size:26px;margin:0;letter-spacing:-.03em}.bp-summary>p{font-size:12px;color:#b6c8d4;line-height:1.7;margin:14px 0}
.bp-summary dl{margin:22px 0}.bp-summary dl>div{padding:11px 0;border-bottom:1px solid #ffffff22}.bp-summary dt{font-size:10px;color:#a9becd;margin-bottom:5px}.bp-summary dd{font-size:13px;margin:0;line-height:1.6;white-space:pre-line;overflow-wrap:anywhere}
.bp-summary .bp-technical-note{font-size:11px;padding-left:12px;border-left:2px solid #cf5b25}
.bp-summary .bp-primary{width:100%;font-size:12px;padding-inline:16px}.bp-copy{width:100%;padding:12px;background:transparent;border:0;color:#d5e1e9;font-size:11px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.bp-fit{padding:12px 15px;border:1px solid #e4c5a9;background:#fff6eb;border-radius:5px;font-size:12px;line-height:1.7;color:#815426}
.bp-explain{padding-top:65px}.bp-explain>div{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:32px}.bp-explain article{border-top:1px solid #ccd7db;padding-top:20px}.bp-explain article>span{font-size:10px;color:#b94b19;letter-spacing:.05em}.bp-explain h3{font-size:20px;margin:20px 0 12px;letter-spacing:-.02em}.bp-explain p{font-size:14px;color:#647783;line-height:1.75}
.booth-planner [hidden]{display:none!important}
.bp-layout>*,.bp-heading>*,.bp-two>*,.bp-three>*,.bp-options>*{min-width:0;max-width:100%}
.bp-step-title,.bp-field>span,.bp-options label,.bp-primary{overflow-wrap:anywhere}
.bp-primary>span{flex:none}
.bp-fields legend{max-width:100%}
.bp-embedded{padding-block:30px 60px}
.bp-embedded .bp-config{scroll-margin-top:165px}
.bp-embedded .bp-summary{top:170px;max-height:calc(100dvh - 190px)}
.cabinet-page .bp-heading h2{font-size:clamp(28px,3vw,40px)}
.cabinet-page .bp-summary h2{font-size:26px;color:#fff}
.cabinet-page .bp-help{font-size:12px;margin-bottom:14px;line-height:1.7}
.cabinet-page .bp-heading p{font-size:14px;margin-top:14px}
.cabinet-page .bp-summary>p{color:#b6c8d4;font-size:12px;margin:14px 0}
.cabinet-page .bp-summary .bp-technical-note{font-size:11px}
.cabinet-page .bp-fit{font-size:12px;color:#815426}
.cabinet-page .bp-fields h3{font-size:13px;margin:23px 0 8px}
@media(max-width:800px){.bp-embedded .bp-summary{position:static;max-height:none}}
@media(max-width:1000px){.bp-hero{gap:30px}.bp-layout{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:22px}.bp-fields fieldset{padding:18px}.bp-two,.bp-three{gap:10px}.bp-summary{padding:22px}.bp-heading{align-items:flex-start}.bp-example{max-width:190px}}
@media(max-width:800px){.bp-wrap{width:calc(100% - 40px)}.bp-hero,.bp-layout{grid-template-columns:1fr}.bp-hero{padding-block:35px 45px}.bp-hero img{height:300px}.bp-heading{flex-direction:column;gap:18px}.bp-example{max-width:none}.bp-summary{position:static;max-height:none}.bp-explain>div{grid-template-columns:1fr;gap:24px}.bp-hero p{max-width:none}.bp-fields legend{font-size:17px}}
@media(max-width:440px){.bp-two,.bp-three,.bp-options{grid-template-columns:1fr;gap:0}.bp-field{margin-bottom:12px}.bp-options{gap:10px}.bp-fields fieldset{padding:18px 14px}.bp-fields legend{font-size:15px;padding:0;gap:10px;margin-bottom:18px}.bp-fields .bp-step-number{flex-basis:28px;width:28px;height:28px}.bp-hero h1{font-size:48px}.bp-hero img{height:235px}}

/* Keep the form wide enough to read on tablets and when browser zoom is used. */
@media(max-width:1100px){
 .bp-layout{grid-template-columns:minmax(0,1fr);gap:26px}
 .bp-summary,.bp-embedded .bp-summary{position:static;max-height:none;overflow:visible}
 .bp-heading{flex-direction:column;align-items:flex-start;gap:18px}
 .bp-example{max-width:100%;min-height:44px}
 .bp-summary dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
 .bp-fields fieldset{padding:24px}
}
@media(max-width:700px){
 .bp-wrap{width:calc(100% - 32px)}
 .bp-embedded{padding-block:20px 40px}
 .bp-heading{padding-top:28px;margin-bottom:24px}
 .cabinet-page .bp-heading h2{font-size:clamp(26px,6.5vw,34px);line-height:1.15}
 .bp-field input,.bp-field select,.bp-field textarea{font-size:16px;min-height:48px}
 .bp-field>span{font-size:13px}
 .bp-field input::placeholder,.bp-field textarea::placeholder{font-size:13px}
 .bp-fields legend{font-size:17px;gap:10px;align-items:center}
 .bp-fields fieldset{padding:20px 16px}
 .bp-options label{min-height:48px;font-size:13px;align-items:center}
 .bp-copy{min-height:44px;font-size:12px}
 .bp-primary{width:100%;min-height:50px}
 .bp-fields{gap:20px}
}
@media(max-width:560px){
 .bp-two,.bp-three,.bp-options{grid-template-columns:minmax(0,1fr);gap:0}
 .bp-options{gap:10px}
 .bp-summary dl{grid-template-columns:minmax(0,1fr)}
 .bp-summary{padding:22px 18px}
 .bp-fields legend{font-size:16px}
}
