/* Completion layer: restrained editorial layout, equipment-first hierarchy. */
[hidden]{display:none!important}
.completed-ui{overflow-wrap:break-word}
.completed-ui header{position:relative}
.completed-ui .review{font-size:11px;padding:7px 16px}
.completed-ui header nav{gap:0}
.completed-ui header nav>a{min-width:118px}
.completed-ui .hero-secondary{display:inline-flex;gap:22px;margin-left:25px;color:#fff;border-bottom:1px solid #aaa;padding:10px 0;font-size:13px}
.completed-ui .generated-caption{max-width:calc(100% - 70px)}
.completed-ui .equipment-list article{min-width:0}
.completed-ui .catalog-photo.supplied-equipment-photo{height:320px;background:#202526}
.photo-link{display:block;width:100%;height:100%}
.photo-link:focus-visible{outline-offset:-5px}
.completed-ui .equipment-detail{border-top:1px solid #ddd;margin-top:14px;padding:12px 0;font-size:12px}
summary{cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:18px;list-style:none}
summary::-webkit-details-marker{display:none}
summary:after{content:"＋";font-weight:400;flex-shrink:0;color:#a35309}
details[open]>summary:after{content:"−"}
summary:focus-visible{outline:3px solid #296b9a;outline-offset:4px}
.equipment-detail p{margin:0 0 10px;line-height:1.9}
.completed-ui .equipment-list button{margin-top:12px;min-height:48px}
.completed-ui .photo-edit-note{position:static!important;display:block;background:#252b2d!important;min-height:33px}
.completed-ui .edited-equipment-photo{overflow:visible!important;margin-bottom:42px!important}
.completed-ui .three-pillars .service-guide-link{font-size:12px;text-decoration:underline;text-underline-offset:5px;margin:6px 0 20px;align-self:flex-start}
.completed-ui .three-pillars article{border:0;border-left:1px solid #d5d7d9;background:transparent}
.completed-ui .three-pillars article:first-child{border-left:0;padding-left:0}
.completed-ui .three-pillars article:last-child{padding-right:0}
.service-detail-row{display:grid;grid-template-columns:55px 1fr 1fr;gap:35px;padding:45px 0;border-top:1px solid #d8dde0;scroll-margin-top:30px}
.detail-index{font-size:28px;font-weight:500;color:#a35309}
.service-detail-row h3{font-size:25px;margin:0 0 16px}
.service-detail-row h4{margin:5px 0 12px;font-size:14px}
.service-detail-row p{font-size:14px;color:#4d555b;line-height:2}
.service-detail-row ul{margin:0;padding-left:20px;font-size:14px;line-height:2}
.case-links{display:flex;flex-wrap:wrap;gap:8px}
.case-links button{border:1px solid #ccc;background:white;padding:10px 12px;min-height:44px;font-size:12px;text-align:left}
.case-links button:hover{border-color:#a35309;background:#fff9ef}
.completed-ui .process{padding-top:65px;padding-bottom:65px;background:#f7f5f1;max-width:none}
.completed-ui .process>h2,.completed-ui .process>.eyebrow,.completed-ui .process>ol{max-width:1120px;margin-left:auto;margin-right:auto}
.completed-ui .process ol{grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}
.completed-ui .process li{min-width:0}
.completed-ui .process h3{font-size:17px}
.completed-ui .faq{max-width:1000px}
.faq details{border-bottom:1px solid #d5dadd;padding:12px 0}
.faq summary{font-size:16px;font-weight:600;padding:8px 0}
.faq details p{font-size:14px;color:#53606a;margin:6px 35px 20px 0}
.completed-ui .contact{background:#eef1f2}
.completed-ui .contact-grid{grid-template-columns:.8fr 1.3fr;gap:65px}
.completed-ui input,.completed-ui textarea{background:white;min-width:0}
.completed-ui .radio-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.completed-ui .radio-options label{border:1px solid #c6cdd1;background:white;padding:12px;font-size:12px;min-height:48px;display:flex;align-items:center;gap:9px}
.completed-ui .radio-options label:has(input:checked){border-color:#98500b;background:#fff5e5}
.completed-ui input[type=radio]{accent-color:#a35309}
.form-steps{list-style:none;padding:0;display:flex;gap:25px;margin:25px 0;color:#687278;font-size:13px}
.form-steps li{padding-bottom:10px;border-bottom:2px solid #d1d6d8;flex:1}
.form-steps li[aria-current]{color:#8c4405;border-color:#a35309;font-weight:600}
.form-steps span{margin-right:10px}
.selection-status{font-size:12px;line-height:1.7;color:#75420e;min-height:0}
.selection-status:empty{display:none}
.service-hint{font-size:12px;line-height:1.8;background:#fff9ef;padding:12px 15px;margin:0 0 25px}
.form-errors{padding:16px;border-left:4px solid #a83226;background:#fff5f3;color:#86281f;font-size:13px;margin-bottom:20px}
.form-errors a{display:block;text-decoration:underline;text-underline-offset:3px;padding:5px 0}
.field-error{display:block;color:#a12e22;font-size:12px;margin-top:5px}
[aria-invalid=true]{border-color:#a12e22!important;background:#fffafa!important}
.completed-ui .result{background:white;padding:25px;border:1px solid #ccd2d5}
.completed-ui .result h3{margin-top:0;font-size:21px}
.completed-ui .result>p{font-size:13px}
.completed-ui .result-actions{display:flex;flex-wrap:wrap;gap:10px}
.completed-ui .result-actions button{min-height:44px;padding:10px 14px;background:white;color:#263238;border:1px solid #aab4b9;font-size:12px}
.completed-ui .result-actions #copy{background:#a35309;border-color:#a35309;color:white}
.menu-toggle{background:white;border:1px solid #ccc;padding:10px 13px;font-size:12px;min-height:44px;align-items:center;gap:12px}
.site-footer{display:block!important;max-width:none!important;padding:0!important;background:#222a2e;color:#f2f4f5}
.footer-main{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-top:55px;padding-bottom:45px}
.site-footer .brand strong{color:#fff}
.site-footer .brand-dot{color:#efb24d}
.site-footer p{font-size:13px}
.site-footer .company-link{font-size:12px;border-bottom:1px solid #839097}
.site-footer nav{display:grid;grid-template-columns:1fr 1fr;gap:18px 25px;align-items:start;font-size:12px;font-weight:400}
.footer-bottom{border-top:1px solid #465056;padding-top:20px;padding-bottom:25px;font-size:11px;display:flex;justify-content:space-between;gap:25px}
.review-options{max-width:500px}
.review-options summary{min-height:30px}
.review-options p{font-size:11px;color:#ccd3d7}
.archive-links{display:flex;flex-wrap:wrap;gap:16px}
.archive-links a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:1000px){
.completed-ui header nav>a{min-width:95px;padding-left:16px;padding-right:16px}
.completed-ui .contact-grid{gap:35px;grid-template-columns:1fr 1.4fr}
.service-detail-row{gap:22px;grid-template-columns:40px 1fr 1fr}
.completed-ui .process ol{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
.completed-ui header{padding:20px 22px;display:flex;flex-wrap:wrap}
.completed-ui header .brand{flex:1;min-width:0}
.completed-ui header .brand strong{font-size:26px}
.completed-ui header .brand small{font-size:8px;letter-spacing:0}
.completed-ui .menu-toggle:not([hidden]){display:flex}
.completed-ui header nav{width:100%;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #ddd;margin-top:12px}
.completed-ui header nav>a{padding:13px 12px;min-height:58px;min-width:0}
.completed-ui .hero-secondary{margin:12px 0 0;display:flex;justify-content:center;width:100%;border:0;min-height:44px}
.completed-ui .generated-caption{max-width:none}
.completed-ui .section{padding-top:48px;padding-bottom:48px}
.completed-ui #equipment{padding-top:35px}
.completed-ui .equipment-list article{display:block;padding:20px;margin-bottom:22px}
.completed-ui .catalog-photo.supplied-equipment-photo{height:330px;min-height:0;margin-bottom:22px}
.completed-ui .supplied-equipment-photo img{min-height:0}
.completed-ui .equipment-heading{margin-bottom:13px}
.completed-ui .equipment-heading h3{font-size:23px}
.completed-ui .equipment-content>p{font-size:14px}
.completed-ui .equipment-list button{width:100%;font-size:13px}
.completed-ui .edited-equipment-photo{margin-bottom:50px!important}
.completed-ui .edited-equipment-photo .photo-edit-note{font-size:10px;padding:7px}
.completed-ui .three-pillars{display:block}
.completed-ui .three-pillars article,.completed-ui .three-pillars article:first-child,.completed-ui .three-pillars article:last-child{border:0;border-top:1px solid #d5d7d9;padding:26px 0}
.service-detail-row{grid-template-columns:35px 1fr;gap:12px 18px;padding:28px 0}
.service-detail-row>div:last-child{grid-column:2}
.service-detail-row h3{font-size:22px}
.detail-index{font-size:24px}
.completed-ui .process{padding:45px 22px}
.completed-ui .process ol{grid-template-columns:1fr;gap:25px}
.completed-ui .process h3{font-size:19px}
.completed-ui .faq summary{font-size:14px}
.completed-ui .contact-grid{display:block}
.completed-ui .contact-title{margin-bottom:30px}
.completed-ui .radio-options{grid-template-columns:1fr}
.completed-ui .result{padding:18px}
.completed-ui .result-actions button{flex:1 1 130px}
.footer-main{display:block;padding-top:40px;padding-bottom:30px}
.site-footer nav{margin-top:30px}
.footer-bottom{display:block}
.review-options{margin-top:15px}
.completed-ui .back-top{bottom:16px;right:14px;width:42px;height:42px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.completed-ui .catalog-photo.edited-equipment-photo{display:block}
.site-footer p{color:#dce2e5}

.concert-service-photo{margin:24px 0 0;background:#22282b}
.concert-service-photo a{display:block}
.concert-service-photo img{display:block;width:100%;height:430px;object-fit:contain}
@media(max-width:700px){.concert-service-photo img{height:350px}}

.meeting-service-photo{margin:24px 0 0;background:#22282b}
.meeting-service-photo a,.meeting-service-photo img{display:block;width:100%}
.meeting-service-photo img{height:auto}
.meeting-service-photo figcaption{color:#edf1f3;font-size:10px;line-height:1.7;padding:9px 12px}

.festival-intro{margin-top:26px;padding-top:18px;border-top:1px solid #d8dde0}
.festival-service-photo{margin:14px 0;background:#22282b}
.festival-service-photo a{display:block}
.festival-service-photo img{display:block;width:100%;height:340px;object-fit:contain}
.festival-intro .text-button{font-size:12px;min-height:44px}

/* LINE contact: public account details are configured in line-config.js. */
.line-contact{padding:26px;margin-bottom:28px;background:#f0faf3;border:1px solid #b7dec5;border-radius:4px;color:#183c28}
.line-contact .line-kicker{font-size:11px;font-weight:700;letter-spacing:.12em;color:#276443;margin:0 0 10px}
.line-contact h3{font-size:25px;line-height:1.5;margin:0 0 12px}
.line-contact>p{font-size:14px;line-height:1.9}
.completed-ui .line-button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:48px;padding:13px 20px;margin:10px 0;background:#067d39;color:#fff;border:0;border-radius:4px;font-size:14px;font-weight:700;text-decoration:none;line-height:1.6}
.completed-ui .line-button:hover{background:#05632e}
.completed-ui .line-button:focus-visible{outline:3px solid #183c28;outline-offset:4px}
.completed-ui .line-button[hidden],[hidden].line-help{display:none!important}
.line-contact .line-help{font-size:12px;margin:12px 0 0;color:#365b44}
@media(max-width:700px){.line-contact{padding:20px}.line-contact h3{font-size:22px}.completed-ui .line-button{width:100%}}
.line-category-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0 12px}
.line-category-links[hidden]{display:none}
.line-category-links a{padding:14px 12px;min-height:48px;border:1px solid #067d39;border-radius:4px;color:#075f31;background:#fff;text-decoration:none;font-size:13px;font-weight:700;line-height:1.6}
.line-category-links a:hover{background:#e1f6e8}
.urgent-notice{border-left:3px solid #a94b13;padding:12px 16px;background:#fff6e9;font-size:13px;line-height:1.8}
.urgent-notice[hidden]{display:none}
@media(max-width:420px){.line-category-links{grid-template-columns:1fr}}
