/* am-home-blocks-v1: custom content and independently positioned gallery sections. */
.home-display-block{min-width:0;border-top:1px solid #d6dccf;padding-top:28px;margin-top:28px}.home-display-block[hidden],.home-gallery-block[hidden]{display:none}.home-block-copy{white-space:pre-line;overflow-wrap:anywhere;line-height:1.8;max-width:100%}.home-block-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.home-block-images>a{display:block;min-width:0;border:1px solid #d6dccf;border-radius:8px;background:#fff;overflow:hidden}.home-block-images img{display:block;width:100%;height:auto;max-height:440px;object-fit:contain}.home-gallery-block{margin:28px 0;padding:24px;border:1px solid #d6dccf;border-radius:10px;background:#f3f4ed;min-width:0}.home-block-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;background:#173d32;color:white;padding:10px 18px;border-radius:7px;overflow-wrap:anywhere;max-width:100%}.home-block-action{margin:18px 0}.home-block-button:focus-visible{outline:3px solid #82a451;outline-offset:3px}.company-layout>div:only-child{grid-column:1/-1}
@media(max-width:680px){.home-block-images{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.home-gallery-block{padding:16px;margin:20px 0}.home-display-block{margin-top:22px;padding-top:22px}.home-display-block h2{overflow-wrap:anywhere}}
@media(max-width:420px){.home-block-images{grid-template-columns:1fr}}

/* am-block-fields-v1: hidden content keeps its data; extra fields are readonly display. */
[data-home-component][hidden]{display:none!important}.home-extra-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}.home-extra-fields>div{min-width:0;padding:16px;border:1px solid var(--am-border,#d8dece);border-radius:8px;background:var(--am-surface,#f0f2e9)}.home-extra-fields dt{font-weight:700;font-size:14px;line-height:1.6;overflow-wrap:anywhere}.home-extra-fields dd{margin:7px 0 0;line-height:1.8;white-space:pre-line;overflow-wrap:anywhere}.home-extra-fields a{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}.home-extra-fields img{display:block;width:auto;height:auto;max-width:100%;max-height:260px;object-fit:contain;background:#fff;border-radius:6px}.contact-panel[data-contact-layout]{grid-template-columns:1fr}.contact-panel[data-contact-layout=qr]>.wechat{justify-self:center;margin-inline:auto}.company-layout[data-company-layout]{grid-template-columns:1fr}.company-layout[data-company-layout=image]>.factory-photo{width:100%}
@media(max-width:680px){.home-extra-fields{grid-template-columns:1fr;gap:10px;margin:18px 0}.home-extra-fields>div{padding:14px}}

/* am-field-editor-v2: ordered native contact fields follow their saved reading order. */
#contact .contact-managed-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;margin:0}#contact .contact-managed-fields>div{display:block;min-width:0;margin:0}#contact .contact-managed-fields dt{font-size:12px;color:var(--am-muted,#6a7666);line-height:1.5;overflow-wrap:anywhere}#contact .contact-managed-fields dd{margin:3px 0 0;font-size:16px;line-height:1.6;white-space:pre-line;overflow-wrap:anywhere}#contact .contact-managed-fields a{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}
@media(max-width:680px){#contact .contact-managed-fields{grid-template-columns:1fr;gap:10px}}

/* am-home-block-buttons-v1: optional icons precede the translated button text. */
.home-block-button-list{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.home-block-button-list>.home-block-button{gap:8px;min-width:0}.home-block-button-list>.home-block-button>span{min-width:0;overflow-wrap:anywhere}.home-block-button .home-block-button-icon{width:22px;height:22px;object-fit:contain;flex-shrink:0;max-width:none}
@media(max-width:680px){.home-block-button-list{gap:8px}.home-block-button .home-block-button-icon{width:20px;height:20px}}

/* am-banner-ratio-v1: same ratio on desktop/mobile; never rewrite uploaded originals. */
#site-banner[data-banner-ratio] .home-block-images{grid-template-columns:minmax(0,1fr)}
#site-banner[data-banner-ratio]>img,#site-banner[data-banner-ratio] .home-block-images img{width:100%;height:auto;max-height:none;aspect-ratio:var(--am-banner-ratio);object-fit:cover}

/* am-banner-fill-original-v1: Banner images fill their block; other galleries keep their grid. */
#site-banner .home-block-images{grid-template-columns:minmax(0,1fr);margin:0}
#site-banner .home-block-images>a{border:0;border-radius:0;background:transparent}
#site-banner>img,#site-banner .home-block-images img{display:block;width:100%;height:auto;max-height:none}
#site-banner:not([data-banner-ratio])>img,#site-banner:not([data-banner-ratio]) .home-block-images img{aspect-ratio:auto;object-fit:cover}

/* am-banner-carousel-v1: full-width slides retain the configured or original first-image ratio. */
#site-banner .banner-carousel{position:relative;min-width:0;width:100%;touch-action:pan-y pinch-zoom}
#site-banner .banner-carousel-slides{display:block;margin:0;aspect-ratio:var(--am-banner-ratio,var(--am-carousel-ratio,auto));width:100%}
#site-banner .banner-carousel-slides>a{width:100%;height:100%;display:block;border:0;border-radius:0;background:transparent}
#site-banner .banner-carousel-slides>a[hidden],.banner-carousel-controls[hidden]{display:none!important}
#site-banner .banner-carousel-slides img{width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover}
.banner-carousel-controls{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:6px;max-width:calc(100% - 16px);padding:4px 6px;border-radius:8px;background:#102f42cf;color:#fff;font-size:12px}
.banner-carousel-controls button{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;padding:5px 10px;border:1px solid #ffffff70;border-radius:5px;background:#102f42;color:#fff;font:inherit;white-space:nowrap;cursor:pointer;touch-action:manipulation}
.banner-carousel-controls [data-carousel-count]{white-space:nowrap;min-width:3em;text-align:center}
.banner-carousel-controls button:focus-visible{outline:3px solid #fff;outline-offset:2px}
@media(max-width:760px){.banner-carousel-controls{bottom:6px;gap:4px;padding:3px}.banner-carousel-controls button{min-height:44px;min-width:44px;padding:5px 8px}}
