/* Visual consistency: title rhythm, stable card grids and readable contact surfaces. */
.wpo-section-title,.wpo-section-title-s2,.wpo-section-title-s3{display:flex;flex-direction:column;align-items:center;gap:22px;margin-bottom:52px}
.wpo-section-title>div,.wpo-section-title-s2>div,.wpo-section-title-s3>div{margin:0;line-height:1.5}
.wpo-section-title>span,.wpo-section-title-s2>span,.wpo-section-title-s3>span{margin:0;line-height:1.5}
.wpo-section-title h2,.wpo-section-title-s2 h2,.wpo-section-title-s3 h2{line-height:1.16!important;letter-spacing:-.035em;max-width:100%;margin:0!important;overflow-wrap:break-word}
h1,h2,h3,h4{overflow-wrap:break-word}
.wpo-blog-section .wpo-blog-wrap,.wpo-blog-section-s3 .wpo-blog-wrap{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:stretch}
.wpo-blog-section .wpo-blog-wrap>.blog-card,.wpo-blog-section-s3 .wpo-blog-wrap>.blog-card{display:flex;flex-direction:column;min-width:0;width:100%!important;max-width:none!important;margin:0!important;padding:0;background:#fff;border:1px solid #dde3d3;border-radius:14px;overflow:hidden;box-shadow:0 6px 24px #13190706;transition:box-shadow .25s,translate .25s}
.wpo-blog-section .blog-card:hover,.wpo-blog-section-s3 .blog-card:hover{box-shadow:0 14px 35px #13190712;translate:0 -4px}
.wpo-blog-section .blog-card .image,.wpo-blog-section-s3 .blog-card .image{width:100%;aspect-ratio:16/10;flex-shrink:0;position:relative;overflow:hidden;margin:0}
.wpo-blog-section .blog-card .image img,.wpo-blog-section-s3 .blog-card .image img{position:absolute!important;inset:0;width:100%!important;height:100%!important;aspect-ratio:auto!important;object-fit:cover!important;max-width:none}
.wpo-blog-section .blog-card .blog-content,.wpo-blog-section-s3 .blog-card .blog-content{padding:24px;display:flex;flex-direction:column;flex:1;gap:18px;min-height:245px;min-width:0}
.wpo-blog-section .blog-card .blog-content ul,.wpo-blog-section-s3 .blog-card .blog-content ul{margin:0;padding:0;flex-wrap:wrap;gap:8px}
.wpo-blog-section .blog-card .blog-content ul li,.wpo-blog-section-s3 .blog-card .blog-content ul li{font-size:13px;line-height:1.5;letter-spacing:0}
.wpo-blog-section .blog-card .acat-blog-title,.wpo-blog-section-s3 .blog-card .acat-blog-title{font-size:23px;line-height:1.35;letter-spacing:-.025em;font-weight:600;margin:0;max-width:none}
.wpo-blog-section .blog-card .acat-blog-title a,.wpo-blog-section-s3 .blog-card .acat-blog-title a{color:#1b240f}
.wpo-blog-section .blog-card .blog-content>.acat-action,.wpo-blog-section-s3 .blog-card .blog-content>.acat-action{margin-top:auto;align-self:flex-start}
.acat-result-status{grid-column:1/-1}
a.acat-action{display:inline-flex!important;align-items:center;justify-content:center;gap:18px;min-height:46px;width:fit-content;max-width:100%!important;padding:12px 20px!important;margin-top:8px;color:#fff!important;background:#526b2d!important;border:1px solid #526b2d!important;border-radius:8px;font-size:14px!important;line-height:1.4!important;font-weight:600;letter-spacing:0!important;text-decoration:none;white-space:normal;transition:background .2s,box-shadow .2s,transform .2s}
a.acat-action:before{display:none!important;content:none!important}a.acat-action:after{position:static!important;content:'→'!important;background:none!important;transform:none!important;width:auto!important;height:auto!important;font-family:Arial,sans-serif!important;font-size:20px!important;line-height:1!important;color:inherit!important;flex-shrink:0}
a.acat-action>i,a.acat-action>.icon{display:none!important}a.acat-action:hover{background:#364a1b!important;border-color:#364a1b!important;box-shadow:0 5px 15px #13190720;transform:translateY(-2px)}
.swiper-pagination .swiper-pagination-bullet{font-size:0!important;width:10px!important;height:10px!important;min-width:10px;border-radius:50%;border:1px solid #718449;background:#f5f8ed;opacity:.7;margin:9px!important;padding:0!important;line-height:0!important}
.swiper-pagination .swiper-pagination-bullet-active{background:#526b2d!important;opacity:1;box-shadow:0 0 0 3px #f5f8ed99}.swiper-pagination .swiper-pagination-bullet:before,.swiper-pagination .swiper-pagination-bullet:after{content:none!important;display:none!important}
.wpo-story-section .story-card .story-content .story-item{gap:18px}.wpo-story-section .story-item .line{display:none}
.wpo-contact-pg-section .main-contact-information>.row{align-items:start;row-gap:36px}
.wpo-contact-pg-section .contact-left{padding-right:35px}.wpo-contact-pg-section .contact-left h2{font-size:clamp(36px,4.2vw,62px);line-height:1.16;letter-spacing:-.035em;margin:0 0 24px}
.wpo-contact-pg-section .contact-left p{font-size:19px;line-height:1.7;color:#4d5841}
.wpo-contact-pg-section .contact-form-area{background:#fff;border:1px solid #d8e0cd;border-radius:16px;padding:36px;box-shadow:0 12px 40px #13190708}
.wpo-contact-pg-section .contact-form-area>h3{font-size:26px;line-height:1.3;letter-spacing:-.02em;margin:0 0 12px}.acat-form-intro{font-size:15px;line-height:1.65;color:#526047;margin-bottom:26px}
.wpo-contact-pg-section .contact-form-area .input-item{margin-bottom:20px}
.wpo-contact-pg-section .contact-form-area label{display:block;color:#243019;font-size:15px;font-weight:600;line-height:1.5;margin-bottom:9px}
.wpo-contact-pg-section .contact-form-area .form-control{height:54px;border:1px solid #c6cfbb!important;background:#fbfcf8;color:#18250f;border-radius:8px;padding:14px 15px;font-size:16px;line-height:1.5;box-shadow:none;width:100%;margin:0}
.wpo-contact-pg-section .contact-form-area .form-control::placeholder{color:#6b7462;opacity:1}
.wpo-contact-pg-section .contact-form-area .form-control:focus{border-color:#526b2d!important;background:#fff;box-shadow:0 0 0 3px #526b2d18;outline:none}
.wpo-contact-pg-section .contact-form-area textarea.form-control{height:154px;min-height:154px;resize:vertical}
.wpo-contact-pg-section .contact-form-area .submit-area{margin-top:4px}.wpo-contact-pg-section .contact-form-area .theme-btn{min-height:50px;font-size:15px;font-weight:600}
.wpo-contact-pg-section .office-info>.row{row-gap:24px;align-items:stretch}.wpo-contact-pg-section .office-info>.row>div{display:flex}
.wpo-contact-pg-section .office-info .office-info-item{display:flex;flex-direction:column;gap:26px;width:100%;height:100%;max-height:none!important;min-height:320px;margin:0;padding:32px 26px;border:1px solid #dee6cf;background:#eaf0dd;border-radius:14px;text-align:left}
.wpo-contact-pg-section .office-info .office-info-item .office-info-text{margin:0!important}
.wpo-contact-pg-section .office-info .office-info-item .office-info-text span{font-size:15px;line-height:1.5;display:block;color:#4a5937;font-weight:500}
.wpo-contact-pg-section .office-info .office-info-item .office-info-text h3{font-size:19px;line-height:1.55;letter-spacing:-.02em;margin:10px 0 0;overflow-wrap:anywhere;word-break:normal}
.wpo-contact-pg-section .office-info-icon img{width:36px;height:36px;object-fit:contain}
@media(max-width:991px){.wpo-blog-section .wpo-blog-wrap,.wpo-blog-section-s3 .wpo-blog-wrap{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.wpo-contact-pg-section .contact-left{padding-right:0}.wpo-contact-pg-section .office-info .office-info-item{min-height:270px}.wpo-section-title,.wpo-section-title-s2,.wpo-section-title-s3{gap:18px}}
@media(max-width:575px){.wpo-blog-section .wpo-blog-wrap,.wpo-blog-section-s3 .wpo-blog-wrap{grid-template-columns:minmax(0,1fr);gap:24px}.wpo-blog-section .blog-card .blog-content,.wpo-blog-section-s3 .blog-card .blog-content{min-height:225px;padding:22px}.wpo-blog-section .blog-card .acat-blog-title,.wpo-blog-section-s3 .blog-card .acat-blog-title{font-size:22px}.wpo-contact-pg-section .contact-form-area{padding:24px 20px}.wpo-contact-pg-section .office-info .office-info-item{min-height:0;padding:28px}.wpo-section-title h2,.wpo-section-title-s2 h2,.wpo-section-title-s3 h2{font-size:38px;line-height:1.2!important}.acat-contact-rail{left:7px}.wpo-contact-pg-section .contact-form-area{scroll-margin-top:90px}}
/* Keep contact controls clear of the readable form area on narrow screens. */
.acat-contact-rail{transition:opacity .18s}
@media(min-width:768px){.acat-contact-rail{left:8px}.acat-contact-rail>a,.acat-contact-rail>button{width:40px;height:40px;padding:9px}.acat-contact-rail img{width:22px;height:22px}}
@media(max-width:767px){.acat-contact-rail.acat-rail-muted{opacity:0;pointer-events:none}}
