/* Three clear roles: primary actions, secondary links, and photographic cards. */
.theme-b{--action-green:#304f3b;--action-hover:#506f4c;--action-light:#f9f7ee;--action-border:#64785b}
.theme-b a.action-link,.theme-b button.button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:54px;max-width:100%;padding:15px 23px;border:1px solid var(--action-green);border-radius:6px;font:14px/1.65 var(--sans);letter-spacing:.035em;text-decoration:none;text-shadow:none;cursor:pointer;transition:background-color .22s,color .22s,border-color .22s,box-shadow .22s;transform:none}
.theme-b a.action-link>span:first-child{margin:0;min-width:0;overflow-wrap:anywhere}
.theme-b a.action-link--primary,.theme-b button.button{color:#fff;background:var(--action-green);border-color:var(--action-green);box-shadow:0 3px 10px #304f3b12}
.theme-b a.action-link--secondary{color:var(--action-green);background:var(--action-light);border-color:var(--action-border)}
.theme-b .action-arrow{display:inline-block;flex-shrink:0;margin-left:auto;font-size:20px;font-weight:400;line-height:1;transition:transform .22s}
.theme-b a.action-link.small{min-height:46px;padding:11px 18px;gap:16px;font-size:13px}
.theme-b .home-film-links{gap:16px;max-width:620px}
.theme-b .home-film-links a.action-link{padding:15px 22px;font-size:14px;min-height:56px;gap:25px}
.theme-b .guide-band a.action-link--secondary{background:#f8f6eb;color:var(--action-green);border-color:#d5ddc8}
.theme-b .cta a.action-link{min-width:250px}
.theme-b .service-row a.action-link{font-size:13px;gap:16px;padding:14px 18px}
.theme-b .work-card{min-width:0;background:#fffdf7;border:1px solid #d9decd;border-radius:7px;overflow:hidden;transition:border-color .22s,box-shadow .22s}
.theme-b .work-card>a{display:flex;flex-direction:column;height:100%;cursor:pointer}
.theme-b .work-card .photo{border-radius:0}
.theme-b .work-card img{border-radius:0;transform:none;transition:filter .22s}
.theme-b .work-card-copy{display:flex;flex-direction:column;flex:1;padding:0 23px 24px}
.theme-b .work-card-copy .project-specs{margin-bottom:24px}
.theme-b .card-cta{display:flex;align-items:center;justify-content:space-between;gap:17px;min-height:52px;width:100%;padding:13px 18px;border:1px solid var(--action-border);border-radius:5px;background:var(--action-light);color:var(--action-green);font:14px/1.65 var(--sans);letter-spacing:.025em;text-decoration:none;transition:background-color .22s,color .22s,border-color .22s}
.theme-b .work-card .card-cta{margin-top:auto}
.theme-b .event-card{border-radius:7px;overflow:hidden;transition:border-color .22s,box-shadow .22s}
.theme-b .event-card>a{cursor:pointer}
.theme-b .event-photo{display:flex;flex-direction:column}
.theme-b .event-photo>img{height:0;min-height:280px;flex:1 1 320px}
.theme-b .event-photo>.card-cta{margin:0;border-radius:0;border:0;border-top:1px solid #d9decd;padding:17px 22px;min-height:60px;flex-shrink:0}
.theme-b .journal-card>a{display:block;height:100%;padding-bottom:5px;cursor:pointer}
.theme-b .journal-card .card-cta{margin-top:23px}
.theme-b .site-header nav>a:not(.button){transition:color .22s,background-color .22s}
.theme-b a.action-link:focus-visible,.theme-b button.button:focus-visible{outline:3px solid #759052;outline-offset:4px;background:var(--action-hover);border-color:var(--action-hover);color:#fff}
.theme-b .work-card>a:focus-visible,.theme-b .event-card>a:focus-visible,.theme-b .journal-card>a:focus-visible{outline:3px solid #759052;outline-offset:-4px}
.theme-b .work-card>a:focus-visible .card-cta,.theme-b .event-card>a:focus-visible .card-cta,.theme-b .journal-card>a:focus-visible .card-cta{background:var(--action-green);border-color:var(--action-green);color:#fff}
@media(hover:hover) and (pointer:fine){
 .theme-b a.action-link--primary:hover,.theme-b button.button:hover{background:var(--action-hover);border-color:var(--action-hover);color:#fff;box-shadow:0 5px 14px #304f3b24;transform:none}
 .theme-b a.action-link--secondary:hover{background:var(--action-green);border-color:var(--action-green);color:#fff;box-shadow:0 3px 12px #304f3b1c}
 .theme-b a.action-link:hover .action-arrow,.theme-b .work-card>a:hover .action-arrow,.theme-b .event-card>a:hover .action-arrow,.theme-b .journal-card>a:hover .action-arrow{transform:translateX(4px)}
 .theme-b .work-card:hover,.theme-b .event-card:hover{border-color:#6b825c;box-shadow:0 7px 20px #304f3b15}
 .theme-b .work-card>a:hover .card-cta,.theme-b .event-card>a:hover .card-cta,.theme-b .journal-card>a:hover .card-cta{background:var(--action-green);border-color:var(--action-green);color:#fff}
 .theme-b .work-card>a:hover img{filter:brightness(1.04);transform:none}
 .theme-b .site-header nav>a:not(.button):hover{color:var(--action-green);background:#e9edde}
 .theme-b .feature:hover{background:#edf0e4;transition:background-color .22s}
}
.theme-b a.action-link:active{background:#24402c;border-color:#24402c;color:#fff}
@media(max-width:650px){
 .theme-b a.action-link,.theme-b button.button{min-height:52px;padding:14px 18px;font-size:14px;gap:18px}
 .theme-b .home-film-links{flex-direction:column;align-items:stretch;gap:10px;max-width:360px}
 .theme-b .home-film-links a.action-link{width:100%;min-height:50px;padding:12px 18px;font-size:13px;gap:16px}
 .theme-b .home-film-copy{bottom:170px}
 .theme-b .card-cta{font-size:14px;min-height:52px}
 .theme-b .work-card-copy{padding:0 20px 22px}
 .theme-b .event-photo>img{height:auto;min-height:0;flex:none;aspect-ratio:1.65}
 .theme-b .event-photo>.card-cta{min-height:58px;padding:15px 20px}
 .theme-b .cta a.action-link{min-width:0;width:100%}
}
@media(prefers-reduced-motion:reduce){.theme-b .action-link,.theme-b .action-arrow,.theme-b .card-cta,.theme-b .work-card,.theme-b .event-card{transition:none!important}.theme-b .action-arrow{transform:none!important}}

/* Original official LINE link and QR asset, above the separate form demo. */
.theme-b .line-consultation{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:70px;align-items:center;margin-top:65px;margin-bottom:25px;padding:55px 60px;background:#f0f3e8;border:1px solid #d6deca;border-radius:8px}
.theme-b .line-consultation-copy .eyebrow{color:#58724a;margin-bottom:15px}
.theme-b .line-consultation-copy h2{font-size:35px;line-height:1.65;margin-bottom:25px}
.theme-b .line-consultation-copy>p:not(.eyebrow){font-size:16px;line-height:2.1}
.theme-b .line-consultation-copy .line-consultation-intro{margin-top:18px;font-size:14px}
.theme-b a.line-consultation-button{min-width:265px;margin-top:28px}
.theme-b .line-consultation-copy .line-consultation-help{margin-top:18px;font-size:12px;line-height:1.9;color:#66715d}
.theme-b .line-consultation-qr{background:#fff;padding:25px 22px 23px;border:1px solid #e0e5d7;border-radius:7px;text-align:center;min-width:0}
.theme-b .line-qr-title{color:#354e34;font-size:15px;line-height:1.8}
.theme-b .line-qr-title>span{font-size:12px;color:#728265}
.theme-b .line-qr-link{display:block;width:240px;max-width:100%;margin:16px auto 12px;background:#fff;padding:6px;border-radius:4px}
.theme-b .line-qr-link img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:0;filter:none;transform:none}
.theme-b .line-qr-link:focus-visible{outline:3px solid #759052;outline-offset:5px}
.theme-b .line-account-id{font-size:13px;color:#4a6142;letter-spacing:.04em}
.theme-b .line-qr-note{font-size:11px;line-height:1.8;margin-top:12px;color:#6e7964}
@media(max-width:1000px){.theme-b .line-consultation{grid-template-columns:minmax(0,1fr) 290px;gap:35px;padding:40px 30px}.theme-b .line-consultation-copy h2{font-size:30px}.theme-b .line-consultation-qr{padding:22px 15px}}
@media(max-width:700px){.theme-b .line-consultation{grid-template-columns:1fr;gap:30px;margin-top:35px;margin-bottom:5px;padding:30px 22px}.theme-b .line-consultation-copy h2{font-size:28px;margin-bottom:20px}.theme-b .line-consultation-copy>p:not(.eyebrow){font-size:15px}.theme-b .line-consultation-copy .line-consultation-intro{font-size:14px}.theme-b a.line-consultation-button{width:100%;min-width:0}.theme-b .line-consultation-qr{width:min(100%,330px);justify-self:center}.theme-b .line-consultation-copy .line-consultation-help{font-size:12px}}
