:root{--green:#075b45;--green2:#16805d;--pale:#eef7f1;--yellow:#f2c94c;--orange:#f47b20;--text:#17352f;--muted:#667773;--line:#dce9e3;--bg:#f8fbf9}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,'Noto Sans JP','Yu Gothic',sans-serif;color:var(--text);background:#fff}a{color:inherit;text-decoration:none}.wrap{max-width:1180px;margin:auto;padding:0 22px}.top{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line)}.header{height:76px;display:flex;align-items:center;gap:28px}.brand{font-weight:800;font-size:21px;white-space:nowrap}.brand small{display:block;font-size:10px;letter-spacing:1px}.leaf{display:inline-block;width:26px;height:26px;border-radius:80% 0 80% 0;background:linear-gradient(135deg,#9dc51b,#08734f);transform:rotate(-10deg);vertical-align:-6px;margin-right:8px}.office{border-left:1px solid #bbb;padding-left:22px;font-weight:700}.nav{margin-left:auto;display:flex;gap:18px;font-size:14px;font-weight:700}.phone{font-weight:800}.hero{background:linear-gradient(90deg,#f4fbf7 0 38%,rgba(244,251,247,.2)),url('assets/design-reference.png') center 30%/cover;min-height:360px;display:flex;align-items:center}.hero h1{font-size:48px;line-height:1.18;margin:0 0 14px}.hero p{font-size:18px;line-height:1.8}.btn{display:inline-block;background:var(--green);color:#fff;border-radius:999px;padding:13px 24px;font-weight:800;margin:8px 8px 0 0}.btn.alt{background:#fff;color:var(--green);border:1px solid var(--green)}.notice{margin:22px auto;background:var(--pale);padding:15px 20px;border-radius:10px;font-weight:800}.section{padding:42px 0}.section h2{font-size:30px;margin:0 0 8px}.lead{color:var(--muted);margin-bottom:24px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 5px 18px rgba(0,60,40,.04)}.card .ph{height:160px;background:linear-gradient(135deg,#d9eee3,#a8cfb9);display:flex;align-items:center;justify-content:center;color:#fff;font-size:34px;font-weight:900}.card .body{padding:17px}.card h3{margin:0 0 10px;font-size:19px}.meta{font-size:13px;line-height:1.7;color:#425b55}.status{margin-top:14px;padding:9px;border-radius:7px;text-align:center;background:#edf0f1;font-weight:800}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{padding:26px;border-radius:14px;background:var(--pale);min-height:190px}.service h3{font-size:23px;margin-top:0}.crumb{font-size:13px;color:#60756e;padding:14px 0}.detailhero{background:linear-gradient(120deg,#eaf7ef,#fff);padding:44px 0}.detailhero .cols{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center}.photo{min-height:330px;border-radius:16px;background:linear-gradient(135deg,#d8eadf,#8fbea3);display:flex;align-items:center;justify-content:center;color:white;font-size:42px;font-weight:900}.tag{display:inline-block;background:var(--green);color:#fff;border-radius:6px;padding:7px 12px;font-size:13px;font-weight:800}.detailhero h1{font-size:42px;margin:12px 0}.facts{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:-18px;position:relative}.fact{background:#f4f9f6;border:1px solid var(--line);border-radius:9px;padding:14px;text-align:center;font-size:13px;font-weight:700}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:34px}.table{border-top:2px solid var(--green)}.row{display:grid;grid-template-columns:130px 1fr;border-bottom:1px solid var(--line);padding:11px 4px;font-size:14px}.row b{color:#4b625c}.floors{display:flex;flex-direction:column-reverse;gap:8px}.floor{display:grid;grid-template-columns:70px 1fr;align-items:center;border:1px solid var(--line);border-radius:10px;overflow:hidden}.floor strong{padding:18px;background:var(--pale);text-align:center}.floor span{padding:18px}.floor.hana strong{background:#fff1e7;color:#d95900}.floor.hana span{background:#fffaf6}.reserve{background:#f4faf6;padding:28px;border-radius:16px}.reserve .btn.air{background:#ff5a5f}.footer{background:#075442;color:#fff;padding:30px 0;margin-top:48px}.footer .wrap{display:flex;justify-content:space-between;gap:30px}.small{font-size:12px;opacity:.9}@media(max-width:850px){.office,.phone{display:none}.nav{gap:10px;font-size:12px;overflow:auto}.header{height:64px}.hero{min-height:310px;background-image:linear-gradient(90deg,rgba(244,251,247,.95),rgba(244,251,247,.65)),url('assets/design-reference.png')}.hero h1{font-size:34px}.grid4,.three,.twocol,.detailhero .cols{grid-template-columns:1fr}.facts{grid-template-columns:repeat(2,1fr)}.footer .wrap{display:block}.photo{min-height:230px}.detailhero h1{font-size:34px}}
.officehero{padding:78px 0;background:linear-gradient(110deg,#edf7fb 0%,#fff 58%,#eef8f3 100%);border-bottom:1px solid var(--line)}.officehero h1,.office-detail h1{font-size:46px;line-height:1.28;margin:16px 0}.officehero p,.office-detail p{font-size:17px;line-height:1.9;max-width:760px}.tag.blue{background:#286d8b}.bluebtn{background:#286d8b}.servicegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.workcard{border:1px solid var(--line);border-radius:14px;padding:25px;background:#fff;min-height:190px;box-shadow:0 6px 20px rgba(0,60,40,.04)}.workcard>span{font-size:12px;font-weight:900;color:#286d8b}.workcard h3{font-size:21px;margin:10px 0}.workcard p{color:var(--muted);line-height:1.8}.workcard b{color:#286d8b;font-size:13px}.soft{background:#f5fafc}.note{background:#fff9e9;border-left:4px solid var(--yellow);padding:20px;border-radius:8px;line-height:1.8}.consultbox{background:#fff;border:1px solid #d9e8ee;border-radius:16px;padding:28px}.consultbox li{margin:12px 0}.columncards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.columncards article{border:1px solid var(--line);border-radius:12px;padding:22px}.columncards small{color:#286d8b;font-weight:800}.office-detail{background:linear-gradient(120deg,#eef8fb,#fff)}
@media(max-width:850px){.servicegrid,.columncards{grid-template-columns:1fr}.officehero h1,.office-detail h1{font-size:34px}}
.detailhero{padding:58px 0;background:linear-gradient(135deg,#f4faf7,#fff)}.detailhero.bluehero{background:linear-gradient(135deg,#eef7fb,#fff)}.detailhero h1{font-size:42px;margin:10px 0 16px;color:#063f35}.detailhero p{font-size:17px;line-height:1.9;max-width:760px}.workcard a{color:inherit}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.step{background:#fff;border:1px solid #dce9e4;border-radius:14px;padding:20px}.step b{display:block;color:#08704f;margin-bottom:8px}.checkgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.checkitem{background:#f6faf8;border-radius:12px;padding:15px 18px}.legalnote{font-size:13px;line-height:1.7;color:#5b6763;border-top:1px solid #dde7e3;padding-top:14px;margin-top:18px}@media(max-width:800px){.steps,.checkgrid{grid-template-columns:1fr}.detailhero h1{font-size:32px}}
.filterbar{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 26px}.filter{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 16px;font-weight:800;color:var(--text);cursor:pointer}.filter.active{background:var(--green);color:#fff;border-color:var(--green)}.articlegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.articlecard{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.articleimg{height:145px;background:linear-gradient(135deg,#e6f4ec,#b7d7c5);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;letter-spacing:2px}.articlebody{padding:20px}.articlebody small{color:#286d8b;font-weight:800}.articlebody time{float:right;font-size:12px;color:var(--muted)}.articlebody h3{margin:10px 0}.articlebody p{color:var(--muted);line-height:1.7}.articlebody a{font-weight:800;color:var(--green)}.cmsnote{margin-top:30px;padding:20px;border:1px dashed #9abdaf;border-radius:12px;background:#f8fcfa}.cmsnote b,.cmsnote span{display:block}.cmsnote span{margin-top:7px;color:var(--muted)}.contacttypes button{border:0;text-align:left;color:inherit;cursor:pointer;font:inherit}.contacttypes .pick:hover{outline:2px solid var(--green)}.contactform{max-width:820px;margin:34px auto;padding:28px;border:1px solid var(--line);border-radius:16px;background:#fff}.contactform label{display:block;font-weight:800;margin-bottom:18px}.contactform input,.contactform select,.contactform textarea{width:100%;margin-top:8px;padding:13px;border:1px solid #cfded7;border-radius:8px;font:inherit;background:#fff}.form2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contactform .consent{font-weight:500}.contactform .consent input{width:auto;margin-right:8px}.contactdirect{max-width:820px;margin:25px auto}.lang{font-size:12px;white-space:nowrap}.lang a{padding:4px}.lang a.active{font-weight:900;color:var(--green)}@media(max-width:850px){.articlegrid{grid-template-columns:1fr}.form2{grid-template-columns:1fr}.contactform{padding:20px}}

.junty-form{display:grid;gap:16px;max-width:760px}.junty-form label{display:grid;gap:7px;font-weight:700}.junty-form input,.junty-form select,.junty-form textarea{width:100%;padding:13px;border:1px solid #d9e3dc;border-radius:10px;font:inherit;background:#fff}.junty-form label:has(input[type=checkbox]){display:flex;align-items:center;font-weight:400}.junty-form input[type=checkbox]{width:auto}.junty-form button{border:0;cursor:pointer}

/* v0.3 language switcher */
.lang-switch{display:flex;gap:8px;align-items:center;font-size:13px;white-space:nowrap}.lang-switch a{color:#335;text-decoration:none;padding:5px 7px;border-radius:999px}.lang-switch a:hover,.lang-switch a.is-current{background:#edf7f1;color:#0B6B44;font-weight:700}

/* v0.4 mobile navigation / privacy / form protection */
.nav-area{margin-left:auto;display:flex;align-items:center;gap:18px}.nav-area .nav{margin-left:0}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 13px;font-weight:800;color:var(--green)}.footer a{color:#fff}.footer-links{display:flex;gap:14px;margin-top:12px;font-size:12px}.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.privacy-policy{max-width:820px;margin:0 auto;padding:46px 0}.privacy-policy h1{font-size:38px}.privacy-policy h2{font-size:21px;margin-top:30px}.privacy-policy p{line-height:1.9;color:#425b55}
@media(max-width:980px){.menu-toggle{display:block;margin-left:auto}.nav-area{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:18px 22px;box-shadow:0 12px 22px rgba(0,0,0,.08);align-items:stretch;flex-direction:column}.nav-area.is-open{display:flex}.nav-area .nav{display:flex;flex-direction:column;gap:0;width:100%}.nav-area .nav>li,.nav-area .nav>a{padding:11px 0;border-bottom:1px solid var(--line)}.nav-area .phone{display:block}.lang-switch{padding-top:6px}.header{position:relative}.office{display:none}}

/* v0.7 photo gallery */
.junty-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.junty-gallery figure{margin:0;border-radius:14px;overflow:hidden;background:#f4f8f6;border:1px solid var(--line)}.junty-gallery img{display:block;width:100%;height:240px;object-fit:cover}.junty-gallery figcaption{padding:9px 12px;font-size:12px;color:var(--muted)}.detailhero img{display:block}.hero[style]{background-position:center;background-size:cover}.junty-gallery-section{padding-top:18px}@media(max-width:850px){.junty-gallery{grid-template-columns:1fr 1fr}.junty-gallery img{height:180px}}@media(max-width:520px){.junty-gallery{grid-template-columns:1fr}.junty-gallery img{height:auto;aspect-ratio:4/3}}
/* v0.8 */
.breadcrumbs{background:#f6faf7;border-top:1px solid #e6eee8;border-bottom:1px solid #e6eee8;font-size:.9rem}.breadcrumbs .wrap{padding-top:10px;padding-bottom:10px}.breadcrumbs a{color:#0B6B44;text-decoration:none}.breadcrumbs .sep{margin:0 8px;color:#9aa7a0}.junty-search{display:flex;gap:10px;max-width:720px;margin:24px 0}.junty-search input{flex:1;padding:13px;border:1px solid #d7e2da;border-radius:8px}.search-results article{padding:22px 0;border-bottom:1px solid #e6eee8}.search-results h2{margin:4px 0}.narrow{max-width:760px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}

/* v0.9 release-candidate polish */
html{scroll-behavior:smooth}body{line-height:1.65}.skip-link{position:fixed;left:12px;top:-80px;z-index:9999;background:#fff;color:var(--green);padding:10px 14px;border:2px solid var(--green);border-radius:8px;font-weight:800}.skip-link:focus{top:12px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.card,.workcard,.service{transition:transform .18s ease,box-shadow .18s ease}.card:hover,.workcard:hover,.service:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,60,40,.09)}.card-image{display:block;width:100%;height:190px;object-fit:cover}.lodging-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.lodging-card .card-image,.lodging-card .ph{height:300px}.entry-content{font-size:16px;line-height:1.9}.entry-content p{margin:0 0 1em}.footer{border-top:4px solid rgba(255,255,255,.08)}@media(max-width:850px){.lodging-grid{grid-template-columns:1fr}.hero p br{display:none}.section{padding:34px 0}.wrap{padding-left:18px;padding-right:18px}.detailhero{padding:38px 0}.facts{margin-top:18px}.btn{min-height:44px}.footer .wrap{display:grid;gap:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card,.workcard,.service{transition:none}}

/* v1.0.4 — WordPress 7.1 / XServer live-environment compatibility + refreshed palette */
:root{--green:#075b45;--green2:#2eaf5b;--green3:#78b64b;--pale:#eef7f1;--gold:#e8a51b;--yellow:#f2c94c;--sky:#eaf5fb;--blue:#3b82a0;--orange:#f0a22b;--text:#17352f;--muted:#667773;--line:#dce9e3;--bg:#f8fbf9}
/* WordPress admin bar: protect the front end from an oversized account avatar. */
#wpadminbar #wp-admin-bar-my-account.with-avatar>.ab-empty-item img,
#wpadminbar #wp-admin-bar-my-account.with-avatar>a img,
#wpadminbar .quicklinks li#wp-admin-bar-my-account.with-avatar>a.ab-item img,
#wpadminbar img.avatar{width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important;min-height:18px!important;max-height:18px!important;border-radius:50%!important;object-fit:cover!important;float:none!important;position:static!important;margin:0 0 0 6px!important;vertical-align:middle!important}
.admin-bar .top{top:32px}@media screen and (max-width:782px){.admin-bar .top{top:46px}}
/* Header: stable layout with real WordPress menus. */
.header{min-height:82px;height:auto;padding-top:10px;padding-bottom:10px;gap:22px}.brand{display:flex;align-items:center;gap:10px;line-height:1.15}.brand-copy{display:block}.brand small{margin-top:4px;color:var(--gold);font-size:11px;letter-spacing:.08em}.junty-mark{position:relative;display:inline-block;width:42px;height:42px;flex:0 0 42px}.junty-mark i{position:absolute;display:block;width:18px;height:29px;border-radius:100% 0 100% 0;transform-origin:50% 100%}.junty-mark .l1{left:12px;top:0;background:var(--green);transform:rotate(45deg)}.junty-mark .l2{left:2px;top:13px;background:var(--green3);transform:rotate(18deg)}.junty-mark .l3{right:1px;top:14px;background:var(--gold);transform:rotate(72deg)}.office{color:#174f43}.nav-area{min-width:0;gap:13px}.nav{min-width:0}.nav .menu{list-style:none;display:flex;align-items:center;gap:14px;margin:0;padding:0}.nav .menu>li{margin:0}.nav .menu a{display:block;font-size:13px;font-weight:750;white-space:nowrap;padding:8px 0;border-bottom:2px solid transparent}.nav .menu a:hover,.nav .current-menu-item>a{color:var(--green2);border-bottom-color:var(--gold)}.lang-switch{gap:4px}.lang-switch a{padding:5px 6px}.phone{font-size:13px;white-space:nowrap;color:var(--green)}
/* More visual depth without losing the established green identity. */
.hero{background-color:#f6fbf8}.hero:before{content:"";position:absolute;inset:auto 0 0 0;height:5px;background:linear-gradient(90deg,var(--green),var(--green2) 36%,var(--gold) 70%,var(--blue))}.hero{position:relative}.notice{border-left:5px solid var(--gold);background:linear-gradient(90deg,#fff8e8,var(--pale))}.section:nth-of-type(even){background:linear-gradient(180deg,#fff,#f9fcfa)}.service:nth-child(1){background:#eef8f2;border-top:4px solid var(--green2)}.service:nth-child(2){background:var(--sky);border-top:4px solid var(--blue)}.service:nth-child(3){background:#fff8e8;border-top:4px solid var(--gold)}.status{background:#f2f4f3;border-left:3px solid var(--green3)}.footer{background:linear-gradient(105deg,#064d3d,#08664e)}
@media(max-width:1180px){.office{font-size:14px;padding-left:15px}.nav .menu{gap:10px}.nav .menu a{font-size:12px}.nav-area{gap:9px}.phone{display:none}}
@media(max-width:980px){.header{min-height:68px;padding-top:8px;padding-bottom:8px}.nav-area{top:100%;z-index:50}.nav-area .nav .menu{display:flex;flex-direction:column;align-items:stretch;gap:0;width:100%}.nav-area .nav .menu>li{border-bottom:1px solid var(--line)}.nav-area .nav .menu a{padding:11px 0;border-bottom:0}.nav-area .phone{display:block}.brand{font-size:18px}.junty-mark{width:36px;height:36px;flex-basis:36px;transform:scale(.86)}}

/* v1.0.5 — approved orderly three-leaf mark + reliable primary navigation */
.junty-mark{width:48px;height:48px;flex:0 0 48px;display:inline-flex;align-items:center;justify-content:center;position:relative}
.junty-mark img{display:block;width:48px;height:48px;max-width:none;object-fit:contain}
.junty-mark i{display:none!important}
.brand-copy{font-size:21px}.brand small{font-size:11px}
.nav-area{display:flex;flex:1;justify-content:flex-end}
.nav{display:block;min-width:0}
.nav .menu{display:flex!important;list-style:none;align-items:center;gap:13px;margin:0;padding:0}
.nav .menu li{display:block;margin:0;padding:0}
.nav .menu a{display:block}
@media(max-width:1320px){.nav .menu{gap:9px}.nav .menu a{font-size:11.5px}.office{font-size:13px}.brand-copy{font-size:19px}.junty-mark,.junty-mark img{width:44px;height:44px}.junty-mark{flex-basis:44px}}
@media(max-width:1100px){.menu-toggle{display:block;margin-left:auto}.nav-area{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:18px 22px;box-shadow:0 12px 22px rgba(0,0,0,.08);align-items:stretch;flex-direction:column}.nav-area.is-open{display:flex}.nav-area .nav .menu{display:flex!important;flex-direction:column;align-items:stretch;gap:0;width:100%}.nav-area .nav .menu>li{border-bottom:1px solid var(--line)}.nav-area .nav .menu a{padding:11px 0;font-size:13px}.nav-area .phone{display:block}.header{position:relative}.office{display:none}}
/* V1.0.6 — fixed approved brand artwork + two-row production header */
.header-brand-row{min-height:76px;display:flex;align-items:center;gap:24px;padding-top:8px;padding-bottom:8px}.header-brand-row .brand{display:flex;align-items:center;gap:11px;flex:0 0 auto}.header-brand-row .junty-mark{width:54px;height:54px;flex:0 0 54px;display:flex;align-items:center;justify-content:center}.header-brand-row .junty-mark img{display:block;width:54px;height:54px;object-fit:contain}.header-brand-row .brand-copy{font-size:21px;font-weight:800;line-height:1.12}.header-brand-row .brand-copy small{display:block;color:var(--gold);font-size:11px;letter-spacing:.07em;margin-top:5px}.office-brand{display:flex;align-items:center;padding-left:20px;border-left:1px solid #cbd8d3;min-width:0}.office-brand img{display:block;width:auto;height:54px;max-width:430px;object-fit:contain;object-position:left center}.header-utils{margin-left:auto;display:flex;align-items:center;gap:12px;white-space:nowrap}.header-nav-row{border-top:1px solid #edf3f0;background:#fff}.header-nav-row .nav-area{display:flex;justify-content:center;align-items:center;min-height:43px}.header-nav-row .nav{margin:0}.header-nav-row .nav .menu{gap:28px}.header-nav-row .nav .menu a{font-size:13px;padding:11px 0}.menu-toggle{margin-left:auto}
@media(max-width:1180px){.office-brand img{height:46px;max-width:330px}.header-brand-row{gap:16px}.header-brand-row .brand-copy{font-size:19px}.header-nav-row .nav .menu{gap:18px}}
@media(max-width:980px){.header-brand-row{min-height:66px}.office-brand{display:none}.header-utils{margin-left:auto}.header-nav-row{border-top:0}.header-nav-row .nav-area{min-height:0}.nav-area{top:100%}.header-nav-row .nav .menu{gap:0}.header-brand-row .junty-mark,.header-brand-row .junty-mark img{width:46px;height:46px}.header-brand-row .junty-mark{flex-basis:46px}}
@media(max-width:640px){.header-utils .phone{display:none}.header-brand-row{gap:10px}.header-brand-row .brand-copy{font-size:17px}.header-brand-row .brand-copy small{font-size:9px}.header-brand-row .junty-mark,.header-brand-row .junty-mark img{width:42px;height:42px}.header-brand-row .junty-mark{flex-basis:42px}}

/* V1.0.7 — compact production header. Lock approved logos; prevent source artwork from expanding the header. */
.top{overflow:visible}
.header-brand-row{min-height:78px!important;height:78px!important;display:grid!important;grid-template-columns:auto minmax(220px,1fr) auto auto;align-items:center!important;column-gap:22px!important;padding-top:7px!important;padding-bottom:7px!important}
.header-brand-row .brand{display:flex!important;align-items:center!important;gap:11px!important;min-width:245px!important;max-width:310px!important;overflow:visible!important}
.header-brand-row .junty-mark{width:58px!important;height:58px!important;flex:0 0 58px!important}
.header-brand-row .junty-mark img{display:block!important;width:58px!important;height:58px!important;max-width:58px!important;max-height:58px!important;object-fit:contain!important}
.header-brand-row .brand-copy{font-size:21px!important;line-height:1.08!important;white-space:nowrap!important}
.header-brand-row .brand-copy small{font-size:11px!important;margin-top:5px!important}
.office-brand{display:flex!important;align-items:center!important;justify-content:flex-start!important;height:62px!important;max-height:62px!important;min-width:0!important;max-width:500px!important;overflow:hidden!important;padding-left:20px!important;border-left:1px solid #cbd8d3!important}
.office-brand img{display:block!important;width:auto!important;height:58px!important;max-width:100%!important;max-height:58px!important;min-height:0!important;object-fit:contain!important;object-position:left center!important;margin:0!important;padding:0!important}
.header-utils{margin-left:0!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;white-space:nowrap!important}
.header-brand-row .menu-toggle{display:none!important}
.header-nav-row{height:44px!important;min-height:44px!important;border-top:1px solid #edf3f0!important;background:#fff!important}
.header-nav-row .nav-area{height:44px!important;min-height:44px!important;display:flex!important;justify-content:center!important;align-items:center!important;padding-top:0!important;padding-bottom:0!important}
.header-nav-row .nav .menu{gap:26px!important}
.header-nav-row .nav .menu a{font-size:13px!important;line-height:1.2!important;padding:13px 0 11px!important}
@media(max-width:1250px){
 .header-brand-row{grid-template-columns:auto minmax(190px,1fr) auto auto;column-gap:14px!important}
 .office-brand{max-width:390px!important;padding-left:14px!important}
 .office-brand img{height:50px!important;max-height:50px!important}
 .header-nav-row .nav .menu{gap:18px!important}
}
@media(max-width:1020px){
 .header-brand-row{height:68px!important;min-height:68px!important;display:flex!important;gap:12px!important}
 .header-brand-row .junty-mark,.header-brand-row .junty-mark img{width:48px!important;height:48px!important;max-width:48px!important;max-height:48px!important;flex-basis:48px!important}
 .header-brand-row .brand{min-width:0!important;max-width:none!important}
 .header-brand-row .brand-copy{font-size:18px!important}
 .office-brand{display:none!important}
 .header-utils{margin-left:auto!important}
 .header-brand-row .menu-toggle{display:block!important;margin-left:4px!important}
 .header-nav-row{height:0!important;min-height:0!important;border-top:0!important}
 .header-nav-row .nav-area{display:none!important;position:absolute!important;top:100%!important;left:0!important;right:0!important;height:auto!important;min-height:0!important;background:#fff!important;padding:14px 22px!important;box-shadow:0 12px 22px rgba(0,0,0,.08)!important;z-index:60!important}
 .header-nav-row .nav-area.is-open{display:flex!important}
 .header-nav-row .nav .menu{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;width:100%!important}
 .header-nav-row .nav .menu>li{border-bottom:1px solid var(--line)!important}
 .header-nav-row .nav .menu a{font-size:13px!important;padding:11px 0!important}
}
@media(max-width:640px){
 .header-brand-row{height:62px!important;min-height:62px!important;padding-left:0!important;padding-right:0!important}
 .header-brand-row .junty-mark,.header-brand-row .junty-mark img{width:43px!important;height:43px!important;max-width:43px!important;max-height:43px!important;flex-basis:43px!important}
 .header-brand-row .brand-copy{font-size:16px!important}
 .header-brand-row .brand-copy small{font-size:9px!important}
 .header-utils .phone{display:none!important}
 .header-utils .lang-switch{font-size:11px!important}
}

/* V1.0.8: compact production header. Important: asset version now follows theme version to avoid XServer/browser stale CSS. */
.top{background:#fff}
.header-brand-row{height:82px!important;min-height:82px!important;display:flex!important;align-items:center!important;gap:22px!important;padding-top:8px!important;padding-bottom:8px!important}
.header-brand-row .brand{display:flex!important;align-items:center!important;gap:10px!important;min-width:260px!important;max-width:320px!important;flex:0 0 auto!important}
.header-brand-row .junty-mark,.header-brand-row .junty-mark img{width:58px!important;height:58px!important;max-width:58px!important;max-height:58px!important;flex:0 0 58px!important;object-fit:contain!important}
.header-brand-row .brand-copy{font-size:21px!important;line-height:1.08!important;white-space:nowrap!important}
.header-brand-row .brand-copy small{font-size:11px!important;margin-top:5px!important}
.office-brand{display:flex!important;align-items:center!important;height:58px!important;max-height:58px!important;max-width:390px!important;min-width:240px!important;flex:0 1 390px!important;overflow:hidden!important;padding-left:18px!important;border-left:1px solid #cbd8d3!important}
.office-brand img{display:block!important;width:auto!important;height:54px!important;max-width:100%!important;max-height:54px!important;min-width:0!important;min-height:0!important;object-fit:contain!important;object-position:left center!important;margin:0!important;padding:0!important}
.header-utils{margin-left:auto!important;display:flex!important;align-items:center!important;gap:10px!important;white-space:nowrap!important}
.header-nav-row{height:45px!important;min-height:45px!important;border-top:1px solid #edf3f0!important;background:#fff!important}
.header-nav-row .nav-area{height:45px!important;min-height:45px!important;display:flex!important;justify-content:center!important;align-items:center!important}
.header-nav-row .nav .menu{gap:26px!important}
.header-nav-row .nav .menu a{font-size:13px!important;padding:11px 0!important}
.header-brand-row .menu-toggle{display:none!important}
@media(max-width:1180px){
 .header-brand-row{gap:14px!important}
 .header-brand-row .brand{min-width:235px!important}
 .office-brand{max-width:310px!important;min-width:190px!important;flex-basis:310px!important;padding-left:12px!important}
 .office-brand img{height:46px!important;max-height:46px!important}
 .header-nav-row .nav .menu{gap:17px!important}
}
@media(max-width:980px){
 .header-brand-row{height:68px!important;min-height:68px!important;gap:10px!important}
 .office-brand{display:none!important}
 .header-brand-row .brand{min-width:0!important;max-width:none!important}
 .header-brand-row .junty-mark,.header-brand-row .junty-mark img{width:46px!important;height:46px!important;max-width:46px!important;max-height:46px!important;flex-basis:46px!important}
 .header-brand-row .brand-copy{font-size:18px!important}
 .header-brand-row .menu-toggle{display:block!important;margin-left:4px!important}
 .header-nav-row{height:auto!important;min-height:0!important;border-top:0!important}
 .header-nav-row .nav-area{height:auto!important;min-height:0!important}
 .header-nav-row .nav .menu{gap:0!important}
}
@media(max-width:640px){
 .header-brand-row{height:62px!important;min-height:62px!important;padding-left:0!important;padding-right:0!important}
 .header-utils .phone{display:none!important}
 .header-brand-row .brand-copy{font-size:16px!important}
 .header-brand-row .brand-copy small{font-size:9px!important}
 .header-brand-row .junty-mark,.header-brand-row .junty-mark img{width:42px!important;height:42px!important;max-width:42px!important;max-height:42px!important;flex-basis:42px!important}
}

/* V1.0.9 — single master brand in global header; office identity lives in its own content area. */
.header-brand-row{height:82px!important;min-height:82px!important;display:flex!important;align-items:center!important;gap:18px!important}
.header-brand-row .brand{min-width:0!important;max-width:none!important;flex:0 0 auto!important}
.header-utils{margin-left:auto!important}
.header-nav-row .nav .menu li:nth-child(4) a{color:#8a6400}
.service-office{position:relative;overflow:hidden}
.service-office-mark{display:block;width:auto;height:52px;max-width:100%;object-fit:contain;object-position:left center;margin:0 0 12px}
.office-page-logo{display:block;width:min(100%,980px);height:auto;max-height:260px;object-fit:contain;object-position:left center;margin:0 auto 26px}
@media(max-width:980px){.header-brand-row{height:68px!important;min-height:68px!important}.service-office-mark{height:46px}}
@media(max-width:640px){.header-brand-row{height:62px!important;min-height:62px!important}.service-office-mark{height:40px}.office-page-logo{max-height:180px}}
\n\n/* V1.0.10 — visual refinement: compact office identity and balanced home service cards. */\n.officehero{padding:34px 0 42px!important;background:linear-gradient(110deg,#f2f9fc 0%,#fff 56%,#f2f9f5 100%)!important}\n.office-brand-panel{max-width:1080px;margin:0 auto 18px;padding:18px 24px;background:#fff;border:1px solid #e3ece8;border-radius:18px;box-shadow:0 8px 28px rgba(7,91,69,.055)}\n.office-page-logo{display:block!important;width:auto!important;max-width:100%!important;height:auto!important;max-height:185px!important;object-fit:contain!important;object-position:center!important;margin:0 auto!important}\n.office-firstview{max-width:1080px;margin:0 auto}.office-intro .entry-content{max-width:900px;margin:0 auto;text-align:center}.office-intro h2{font-size:27px;line-height:1.45;margin:12px 0 10px}.office-intro p{max-width:850px!important;margin:8px auto!important;font-size:15px!important;line-height:1.75!important;color:#49615b}.office-quick-services{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin:18px auto 10px}.office-quick-services span{display:inline-flex;align-items:center;min-height:36px;padding:7px 14px;border:1px solid #cfe1e8;border-radius:999px;background:#fff;color:#235c70;font-size:13px;font-weight:800}.office-consult-btn{display:table;margin:14px auto 0!important}\n/* Give the three home businesses distinct but related identities. */\n.three .service{border:1px solid #deebe5;box-shadow:0 8px 24px rgba(7,91,69,.045);transition:transform .18s ease,box-shadow .18s ease}.three .service:nth-child(1){background:linear-gradient(145deg,#eef8f2,#fbfdfc);border-top:4px solid #16805d}.three .service:nth-child(2){background:linear-gradient(145deg,#f2f8fb,#fffaf0);border-top:4px solid #d9a51b}.three .service:nth-child(3){background:linear-gradient(145deg,#fff9ed,#f4faf8);border-top:4px solid #f0a315}.three .service:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(7,91,69,.08)}.service-office-mark{height:44px!important;max-width:210px!important;margin-bottom:10px!important}.three .service h3{color:#103f36}.three .service p{color:#4f6660;line-height:1.75}\n@media(max-width:850px){.officehero{padding:24px 0 34px!important}.office-brand-panel{padding:14px 16px;margin-bottom:14px}.office-page-logo{max-height:145px!important}.office-intro h2{font-size:23px}.office-quick-services{gap:7px}.office-quick-services span{font-size:12px;padding:6px 11px}.service-office-mark{height:40px!important}}\n@media(max-width:520px){.office-page-logo{max-height:105px!important}.office-brand-panel{border-radius:12px}.office-intro .entry-content{text-align:left}.office-intro h2{font-size:21px}.office-intro p{font-size:14px!important}.office-quick-services{justify-content:flex-start}}\n
/* V1.0.11 — office logo fit, unified service identity, and property photo-ready cards. */
.office-brand-panel{max-width:1040px!important;padding:14px 20px!important;margin-bottom:14px!important;overflow:visible!important}
.office-page-logo{display:block!important;width:78%!important;max-width:920px!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:center!important;margin:0 auto!important}
.officehero{padding-top:28px!important}
.home-services .service{display:block;position:relative;padding-top:22px!important}
.service-icon{height:64px;display:flex;align-items:center;margin:0 0 14px}
.service-icon img{display:block;width:auto;height:58px;max-width:100%;object-fit:contain;object-position:left center}
.service-icon.office-emblem img{height:64px}
.hana-mark{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#fff3bf,#f3c85c);border:1px solid #e2b443;color:#72500a;font-size:11px;font-weight:900;letter-spacing:.08em}
.home-services .service h3{margin-top:0!important}.home-services .service h3 small{font-size:.72em;color:#46625a}
.property-archive .property-lead{max-width:900px;line-height:1.8}.property-card .card-image,.property-card .ph{height:210px}.property-photo-pending{flex-direction:column;gap:4px;background:linear-gradient(145deg,#edf5f1,#dcebe4)!important;color:#4d7165!important}.property-photo-pending .property-building-icon{font-size:42px;line-height:1;color:#75a894}.property-photo-pending small{font-size:11px;letter-spacing:.12em;font-weight:800}.property-photo-pending strong{font-size:16px}.property-card .status{font-size:13px;padding:8px 10px;color:#35544b;background:#f4f6f5}.property-card h2{font-size:20px;line-height:1.45;margin:0 0 10px}
@media(max-width:850px){.office-page-logo{width:92%!important;max-width:760px!important}.service-icon{height:56px}.service-icon img{height:52px}.service-icon.office-emblem img{height:56px}.hana-mark{width:56px;height:56px}.property-card .card-image,.property-card .ph{height:220px}}
@media(max-width:520px){.office-brand-panel{padding:10px 12px!important}.office-page-logo{width:100%!important}.property-card .card-image,.property-card .ph{height:210px}}
\n\n/* V1.0.12 — real-world layout polish: aligned property cards, scalable lodging copy, compact office/footer rhythm. */\n.property-grid,.section#properties .grid4{align-items:stretch}\n.property-card{display:flex!important;flex-direction:column;height:100%}\n.property-card .card-image,.property-card .ph{flex:0 0 210px;height:210px!important}\n.property-card .body{display:grid;grid-template-rows:minmax(58px,auto) minmax(52px,auto) 1fr auto;align-content:start;flex:1;width:100%}\n.property-card h2,.property-card h3{min-height:58px;margin:0 0 10px!important;display:flex;align-items:flex-start}\n.property-card .meta{min-height:52px;overflow-wrap:normal;word-break:normal;line-break:strict}\n.property-card .status{grid-row:4;margin-top:14px}\n.property-archive{padding-top:38px!important;padding-bottom:18px!important}\n.property-archive h1{margin:0 0 8px;font-size:34px}\n.property-archive .property-lead{margin-bottom:14px}\n.property-archive-notice{margin:0 0 26px!important;max-width:none}\n.home-services .service h3 small{font-size:.62em;color:#60756e;letter-spacing:.02em}\n.officehero{padding-bottom:24px!important}\n.office-brand-panel{margin-bottom:24px!important}\n.office-intro .entry-content{max-width:820px!important}\n.office-intro h2{font-size:25px!important;white-space:normal}\n.office-quick-services{margin-top:20px!important}\n.office-consult-btn{margin-top:16px!important}\n.officehero + .footer,.officehero~.footer{margin-top:0!important}\n.footer{margin-top:28px}\n.footer-links{flex-wrap:wrap}\n@media(min-width:851px){\n  .section#properties .property-card .card-image,.section#properties .property-card .ph{height:190px!important;flex-basis:190px}\n}\n@media(max-width:850px){\n  .property-card .body{display:block}\n  .property-card h2,.property-card h3,.property-card .meta{min-height:0}\n  .property-card .status{margin-top:14px}\n  .property-archive{padding-top:28px!important}\n  .officehero{padding-bottom:20px!important}\n}\n

/* V1.0.13 — contact form refinement. */
.contact-page{padding-bottom:88px!important}
.contact-page>.wrap{max-width:1180px}
.contact-page .junty-form{max-width:1060px;margin:30px auto 0;gap:20px}
.contact-page .junty-form label{font-size:15px}
.contact-page .junty-form label:has(input[type=checkbox]){justify-content:center;gap:8px;margin-top:2px;line-height:1.7}
.contact-page .junty-form label:has(input[type=checkbox]) a{color:var(--green);text-decoration:underline;text-underline-offset:3px}
.contact-page .junty-form button[type=submit]{display:block;width:300px;max-width:100%;margin:4px auto 0;padding:15px 28px}
.contact-page + .footer{margin-top:0!important}
@media(max-width:850px){.contact-page{padding-bottom:72px!important}.contact-page .junty-form{max-width:100%;margin-top:24px}.contact-page .junty-form label:has(input[type=checkbox]){justify-content:flex-start;align-items:flex-start}.contact-page .junty-form button[type=submit]{width:min(300px,100%)}}

/* V1.0.14 — consolidated visual fixes from the V1.0.12 screenshot review. */
/* Home: three business cards share one visual rhythm. */
.home-services .three{align-items:stretch}
.home-services .service{display:flex!important;flex-direction:column;min-height:360px!important;padding:28px 30px!important}
.home-services .service-icon{height:76px!important;min-height:76px!important;margin:0 0 18px!important;display:flex;align-items:center}
.home-services .service-icon img{max-height:68px!important;width:auto!important}
.home-services .service h3{min-height:72px;margin:0 0 18px!important;font-size:25px;line-height:1.45}
.home-services .service h3 small{display:block;margin-top:8px;line-height:1.4}
.home-services .service p{margin:0;font-size:16px;line-height:1.9}
.home-services .hana-mark{width:68px;height:68px;flex:0 0 68px}

/* Property archive: fixed title/address zones and bottom-aligned status. */
.property-grid{gap:18px!important}
.property-card .body{display:flex!important;flex-direction:column!important;flex:1!important;padding:22px 20px 20px!important}
.property-card h2,.property-card h3{display:block!important;min-height:72px!important;margin:0 0 12px!important;font-size:20px!important;line-height:1.45!important}
.property-card .property-address{min-height:66px!important;line-height:1.8!important}
.property-card .status{margin-top:auto!important;min-height:48px;display:flex;align-items:center;justify-content:center}

/* Lodging archive: scalable cards; featured image becomes the list image for every new facility. */
.lodging-archive .lead{max-width:980px;line-height:1.85}
.lodging-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch}
.lodging-card{display:flex;flex-direction:column;height:100%}
.lodging-card .card-image,.lodging-card .ph{width:100%;height:300px!important;object-fit:cover;flex:0 0 300px}
.lodging-card .body{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding:28px 26px}
.lodging-card h2{font-size:28px;line-height:1.4;margin:0 0 14px}
.lodging-card p{min-height:34px;margin:0 0 12px;line-height:1.8}
.lodging-card .btn{margin-top:auto}
.lodging-photo-pending{flex-direction:column;gap:8px;font-size:30px!important}.lodging-photo-pending small{font-size:13px;font-weight:700}

/* Administrative scrivener page: identity is secondary; service message is primary. */
.officehero{padding:24px 0 38px!important}
.office-brand-panel{max-width:900px!important;padding:10px 18px!important;margin:0 auto 20px!important;box-shadow:none!important;background:rgba(255,255,255,.8)!important}
.office-page-logo{width:55%!important;max-width:650px!important;margin:0 auto!important}
.office-firstview{max-width:1040px!important}
.office-intro .entry-content{max-width:940px!important}
.office-intro h2{font-size:31px!important;line-height:1.45!important;margin:8px 0 16px!important;font-weight:850}
.office-intro p{font-size:16px!important;line-height:1.85!important;max-width:900px!important}
.office-quick-services{margin:22px auto 12px!important}.office-quick-services span{font-size:14px!important}
.office-consult-btn{padding:15px 30px!important}

/* Company page: remove the duplicated heading effect from generic page rendering. */
.company-page{padding-top:56px}.company-page> .wrap>h1{font-size:38px;margin:0 0 28px}
.company-panel{border:1px solid var(--line);border-radius:18px;padding:34px 38px;box-shadow:0 7px 24px rgba(7,91,69,.04)}
.company-panel .entry-content h2{font-size:29px;margin:0 0 20px}.company-panel .entry-content p{font-size:16px;line-height:1.95;color:#526b64}

/* Column landing page instead of /column/ returning 404. */
.column-page h1{font-size:38px;margin:14px 0 10px}.column-page .lead{max-width:900px;line-height:1.8}
.column-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:30px}.column-card{border:1px solid var(--line);border-radius:14px;padding:24px;background:#fff}.column-card h2{font-size:21px;line-height:1.55;margin:8px 0 12px}.column-card p{line-height:1.8;color:var(--muted)}.column-date{font-size:12px;color:#648078}.text-link{color:var(--green);font-weight:800}.column-empty{margin-top:28px;padding:28px;border-radius:14px;background:var(--pale)}

/* Contact page: compact final action area. */
.contact-page{padding-bottom:82px!important}.contact-page .junty-form{max-width:1060px!important}.contact-page .junty-form button[type=submit]{width:300px!important}

@media(max-width:850px){
 .home-services .service{min-height:0!important}.home-services .service h3{min-height:0}
 .property-card h2,.property-card h3,.property-card .property-address{min-height:0!important}
 .lodging-grid,.column-list{grid-template-columns:1fr}.lodging-card .card-image,.lodging-card .ph{height:240px!important;flex-basis:240px}
 .office-page-logo{width:78%!important}.office-intro h2{font-size:25px!important}
 .company-page{padding-top:36px}.company-panel{padding:26px 22px}
}


/* V1.0.15 — final cumulative corrections after reviewing all screenshots from the V1.0.12 installation. */
/* Property cards: identical vertical zones on desktop, including HOME cards. */
@media(min-width:851px){
 .property-card h2,.property-card h3{min-height:72px!important}
 .property-card .meta,.property-card .property-address{min-height:66px!important;line-height:1.8!important}
 .property-card .status{margin-top:auto!important}
}
/* Contact: narrower centered form, practical message height, centered consent and final action. */
.contact-page>.wrap{max-width:1180px!important}
.contact-page .junty-form{max-width:1000px!important;margin:30px auto 0!important}
.contact-page .junty-form textarea[name=message]{height:190px!important;min-height:190px!important;resize:vertical}
.contact-page .junty-form label:has(input[type=checkbox]){justify-content:center!important}
.contact-page .junty-form button[type=submit]{width:420px!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important}
@media(max-width:850px){
 .contact-page .junty-form{max-width:100%!important}
 .contact-page .junty-form textarea[name=message]{height:170px!important;min-height:170px!important}
 .contact-page .junty-form label:has(input[type=checkbox]){justify-content:flex-start!important}
 .contact-page .junty-form button[type=submit]{width:100%!important;max-width:420px!important}
}

/* V1.0.16 — post-1.0.15 screenshot corrections. */
.company-page{padding-bottom:48px!important}.company-panel{margin-bottom:0}.company-profile{display:grid;grid-template-columns:220px 1fr;border-top:1px solid var(--line);margin:22px 0 38px}.company-profile dt,.company-profile dd{margin:0;padding:14px 16px;border-bottom:1px solid var(--line)}.company-profile dt{font-weight:800;background:#f7faf7}.company-history{border-left:3px solid var(--green);padding-left:22px}.company-history p{margin:0 0 20px!important}.privacy-page{padding-top:54px;padding-bottom:54px}.privacy-card{max-width:1080px;margin:auto;border:1px solid var(--line);border-radius:18px;padding:40px 46px;background:#fff}.privacy-card h1{margin-top:0}.privacy-card h2{font-size:22px;margin:34px 0 10px}.privacy-card p{line-height:1.95;color:#526b64}.junty-form .required{color:#b52b2b}.junty-form input:not([type=checkbox]),.junty-form select{min-height:54px!important}.junty-form .consent{justify-content:center!important}.footer{margin-top:0!important}
@media(max-width:850px){.company-profile{grid-template-columns:1fr}.company-profile dt{padding-bottom:6px;border-bottom:0}.company-profile dd{padding-top:6px}.privacy-card{padding:26px 20px}.privacy-page{padding-top:34px;padding-bottom:34px}}
.office-column-link{display:block;text-align:center;margin-top:16px}.company-panel .entry-content>h2:not(:first-child){margin-top:42px}

/* V1.0.18 — real photos, article PDFs, breadcrumb/localization and final screenshot polish. */
.property-card .card-image{width:100%;object-fit:cover;object-position:center}
.detailhero .heroimg img,.detailhero img.heroimg{width:100%;height:100%;object-fit:cover;object-position:center}
.column-single{padding-top:48px;padding-bottom:72px}.column-article-wrap{max-width:1060px}.column-article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:38px 42px}.column-article h1{font-size:36px;line-height:1.45;margin:8px 0 28px}.column-article .entry-content{line-height:1.9}.junty-pdf-article{margin:22px 0 8px}.junty-pdf-frame{width:100%;height:78vh;min-height:720px;border:1px solid var(--line);border-radius:12px;background:#f7faf7}.junty-pdf-actions{margin:14px 0 0}.column-back{margin-top:30px}.column-card .column-excerpt:empty{display:none}
@media(max-width:850px){.column-article{padding:26px 20px}.column-article h1{font-size:28px}.junty-pdf-frame{height:68vh;min-height:520px}}

/* V1.0.21 — cumulative corrections from the V1.0.20 screenshot review. */
/* Align the Administrative Scrivener lead heading with the paragraphs below on every language view. */
.office-intro{max-width:900px!important;margin-left:auto!important;margin-right:auto!important}
.office-intro h2,.office-intro p{max-width:none!important;width:100%;margin-left:0!important;margin-right:0!important;text-align:left!important}
/* Article pages: publication/author/source metadata and external-PDF action are intentionally not displayed. */
.column-single>.wrap{max-width:1060px}.column-article>.column-date,.junty-pdf-actions{display:none!important}

/* V1.0.22 — v1.0.21 screenshot review: unified office rhythm and multilingual field layout. */
.office-firstview,.office-intro,.office-quick-services{max-width:900px!important;margin-left:auto!important;margin-right:auto!important}
.office-intro h2,.office-intro p{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;text-align:left!important}
.office-quick-services{justify-content:flex-start!important}
.office-consult-btn{display:table!important;margin:20px auto 0!important}
.column-article h1{margin-bottom:22px!important}
@media(max-width:850px){.office-firstview,.office-intro,.office-quick-services{max-width:100%!important}.office-quick-services{justify-content:flex-start!important}}

/* V1.0.27 — mobile usability + article media + HANA mark */
.hana-mark{background:#fff7df url('../hana-mark-v1027.png') center/contain no-repeat!important;border:0!important;border-radius:0!important;color:transparent!important;overflow:hidden!important}
.hana-mark span{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}

/* Column media: never crop source figures and never create page-level horizontal scroll. */
.column-article-wrap,.column-article,.column-article .entry-content{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;overflow:visible!important}
.column-article .entry-content figure,.column-source-image{display:block!important;width:100%!important;max-width:920px!important;height:auto!important;margin-left:auto!important;margin-right:auto!important;overflow:visible!important;box-sizing:border-box!important}
.column-article .entry-content img,.column-source-image img{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;object-fit:contain!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important}
.column-article .entry-content table{display:block!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
.column-article .entry-content iframe,.column-article .entry-content object,.column-article .entry-content video{width:100%!important;max-width:100%!important}

@media(max-width:700px){
 html,body{max-width:100%!important;overflow-x:hidden!important}
 .wrap{width:auto!important;max-width:100%!important;margin-left:20px!important;margin-right:20px!important}
 .header-brand-row.wrap{margin-left:12px!important;margin-right:12px!important}
 .header-brand-row{height:68px!important;min-height:68px!important;gap:8px!important}
 .header-brand-row .brand{gap:7px!important;min-width:0!important}
 .header-brand-row .junty-mark,.header-brand-row .junty-mark img{width:44px!important;height:44px!important;max-width:44px!important;max-height:44px!important;flex-basis:44px!important}
 .header-brand-row .brand-copy{font-size:17px!important;line-height:1.08!important}
 .header-brand-row .brand-copy small{font-size:9.5px!important}
 .header-utils{gap:7px!important}
 .header-utils .lang-switch{font-size:12px!important}
 .menu-toggle{font-size:12px!important;padding:8px 11px!important;line-height:1.15!important}
 /* Menu is closed by default and opens as a compact floating panel instead of occupying the screen. */
 .header-nav-row{height:0!important;min-height:0!important}
 .header-nav-row .nav-area{display:none!important;position:absolute!important;top:68px!important;left:auto!important;right:12px!important;width:min(300px,calc(100vw - 24px))!important;max-height:calc(100vh - 92px)!important;overflow-y:auto!important;padding:8px 18px!important;border:1px solid var(--line)!important;border-radius:14px!important;box-shadow:0 12px 28px rgba(0,0,0,.14)!important;z-index:999!important;background:#fff!important}
 .header-nav-row .nav-area.is-open{display:block!important}
 .header-nav-row .nav .menu a{font-size:16px!important;line-height:1.3!important;padding:11px 2px!important}
 .header-nav-row .nav .menu>li:last-child{border-bottom:0!important}
 /* Mobile reading sizes. */
 main p,.entry-content p,.lead{font-size:17px!important;line-height:1.9!important}
 main li,.entry-content li{font-size:16px!important;line-height:1.8!important}
 main h1,.entry-content h1{line-height:1.3!important}
 .column-article .entry-content h2{font-size:25px!important;line-height:1.4!important;margin-top:30px!important}
 .column-article .entry-content h3{font-size:21px!important;line-height:1.45!important;margin-top:24px!important}
 .column-article .entry-content{padding-left:0!important;padding-right:0!important}
 .column-source-image{width:100%!important;max-width:100%!important;margin:18px auto 24px!important;padding:0!important}
 .column-source-image img,.column-article .entry-content figure img,.column-article .entry-content img{width:100%!important;max-width:100%!important;height:auto!important;object-fit:contain!important;object-position:center!important}
 .column-article .entry-content figure{max-width:100%!important;margin-left:0!important;margin-right:0!important}
 .column-article .entry-content [style*="width"]{max-width:100%!important}
}

/* V1.0.28 — mobile header/footer corrections from v1.0.26 installation review. */
@media(max-width:700px){
 .menu-toggle{white-space:nowrap!important;word-break:keep-all!important;min-width:70px!important;width:auto!important;flex:0 0 auto!important;padding-left:12px!important;padding-right:12px!important}
 .footer-links{display:flex!important;flex-wrap:wrap!important;justify-content:flex-start!important;column-gap:28px!important;row-gap:10px!important;line-height:1.45!important}
 body.junty-lang-en .footer-links .footer-office-link,.footer.lang-en .footer-office-link{flex-basis:100%!important}
 .footer-contact{line-height:1.75!important}
}


/* V1.0.29 — cumulative fixes from the complete V1.0.26 installation screenshot review. */
@media(min-width:1021px){
 .header-nav-row .nav-area.wrap{max-width:1500px!important;padding-left:42px!important;padding-right:42px!important}
 .header-nav-row .nav{width:100%!important}
 .header-nav-row .nav .menu{width:100%!important;display:flex!important;justify-content:space-between!important;align-items:center!important;gap:18px!important}
 .header-nav-row .nav .menu a{font-size:15px!important;line-height:1.2!important;white-space:nowrap!important;padding:13px 4px 11px!important}
}
.footer{padding:40px 0!important}
.footer .wrap{max-width:1500px!important;align-items:flex-start!important}
.footer b{font-size:18px!important}
.footer .small{font-size:15px!important;line-height:1.75!important}
.footer-links{font-size:15px!important;line-height:1.55!important;gap:14px 24px!important;margin-top:16px!important}
.footer-contact{font-size:15px!important;line-height:1.8!important;text-align:left!important}
.footer.lang-en .footer-links{display:grid!important;grid-template-columns:auto auto!important;justify-content:start!important}
.footer.lang-en .footer-office-link{grid-column:1 / -1!important}
.hero-actions{display:flex;align-items:center;gap:14px;margin-top:26px;padding-bottom:18px}
.hero-actions .btn{margin:0!important;display:inline-flex;align-items:center;justify-content:center;min-height:52px}
.home-services .service-icon img{background:transparent!important}
.home-services .hana-mark{background-color:transparent!important}

@media(max-width:700px){
 .header-brand-row.wrap{margin-left:10px!important;margin-right:10px!important;padding-left:0!important;padding-right:0!important}
 .header-brand-row{gap:6px!important}
 .header-brand-row .brand{flex:1 1 auto!important;min-width:0!important}
 .header-brand-row .junty-mark,.header-brand-row .junty-mark img{width:42px!important;height:42px!important;max-width:42px!important;max-height:42px!important;flex-basis:42px!important}
 .header-brand-row .brand-copy{font-size:16px!important;white-space:nowrap!important}
 .header-brand-row .brand-copy small{font-size:9px!important}
 .header-utils{flex:0 1 auto!important;min-width:0!important;margin-left:auto!important}
 .header-utils .lang-switch{gap:2px!important;font-size:12px!important}
 .header-utils .lang-switch a{padding:6px 6px!important}
 .menu-toggle{margin-left:4px!important;margin-right:2px!important;min-width:76px!important;padding:9px 12px!important;font-size:13px!important;border:1.5px solid #cfe2d9!important;background:#fbfefc!important;box-shadow:0 2px 8px rgba(7,91,69,.06)!important}
 .header-nav-row .nav-area{right:10px!important;width:min(300px,calc(100vw - 20px))!important}
 .hero-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin-top:24px!important;padding-bottom:24px!important}
 .hero-actions .btn{width:100%!important;min-width:0!important;min-height:54px!important;padding:12px 10px!important;font-size:16px!important;white-space:nowrap!important}
 body.junty-lang-en .hero-actions .btn{font-size:15px!important}
 .footer{padding:34px 0!important}
 .footer .wrap{margin-left:22px!important;margin-right:22px!important;display:grid!important;grid-template-columns:1fr!important;gap:22px!important}
 .footer b{font-size:18px!important}
 .footer .small,.footer-links,.footer-contact{font-size:15px!important}
 .footer-links{display:flex!important;flex-wrap:wrap!important;column-gap:24px!important;row-gap:10px!important}
 .footer.lang-en .footer-links{display:flex!important}
 .footer.lang-en .footer-office-link{flex-basis:100%!important}
}
@media(max-width:430px){
 .header-brand-row .junty-mark,.header-brand-row .junty-mark img{width:38px!important;height:38px!important;max-width:38px!important;max-height:38px!important;flex-basis:38px!important}
 .header-brand-row .brand-copy{font-size:14px!important}
 .header-brand-row .brand-copy small{font-size:8px!important}
 .header-utils .lang-switch{font-size:11px!important}
 .header-utils .lang-switch a{padding:5px 4px!important}
 .menu-toggle{min-width:68px!important;font-size:12px!important;padding:8px 9px!important}
 .hero-actions .btn{font-size:14px!important}
 body.junty-lang-en .hero-actions .btn{font-size:13px!important}
}


/* V1.0.30 — fixes after V1.0.29 installation review */
.entry-content,
.article-content,
.single-post .entry-content{
  overflow:visible!important;
}
.entry-content img,
.article-content img,
.single-post .entry-content img,
.entry-content figure img,
.article-content figure img{
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
}
.entry-content figure,
.article-content figure{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}
.entry-content iframe,
.entry-content embed,
.entry-content object,
.article-content iframe,
.article-content embed,
.article-content object{
  max-width:100%!important;
}
@media(max-width:700px){
  .single-post .article-card,
  .single-post .entry-card,
  .single-post article,
  body.junty-lang-ja.single-post article,
  body.junty-lang-zh.single-post article,
  body.junty-lang-en.single-post article{
    width:auto!important;
    max-width:none!important;
    margin-left:12px!important;
    margin-right:12px!important;
  }
  .single-post .entry-content,
  .single-post .article-content{
    font-size:17px!important;
    line-height:1.9!important;
    transform:none!important;
    zoom:1!important;
  }
  .single-post .entry-content h2,
  .single-post .article-content h2{font-size:25px!important;line-height:1.4!important}
  .single-post .entry-content h3,
  .single-post .article-content h3{font-size:21px!important;line-height:1.45!important}
  .single-post .entry-content img,
  .single-post .article-content img{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
  }
}

/* V1.0.31 — privacy width, source-article rendering, and desktop/mobile consistency. */
@media(min-width:1021px){
 .privacy-page>.wrap{max-width:1500px!important;padding-left:42px!important;padding-right:42px!important}
 .privacy-card{max-width:none!important;width:100%!important;padding:48px 64px!important}
 .privacy-card .privacy-policy{max-width:none!important;width:100%!important;padding:0!important}
 .column-single>.wrap{max-width:1500px!important;padding-left:42px!important;padding-right:42px!important}
 .column-article{width:100%!important;padding:48px 62px!important}
}
.junty-source-article-pages{width:100%;max-width:1000px;margin:22px auto 8px;display:grid;gap:22px}
.junty-source-article-pages img{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;margin:0 auto!important;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 5px 18px rgba(0,60,40,.06);object-fit:contain!important}
.error-page .actions .btn{display:inline-flex;align-items:center;justify-content:center}
@media(max-width:700px){
 .privacy-page>.wrap{margin-left:20px!important;margin-right:20px!important}
 .privacy-card{width:100%!important;max-width:none!important;padding:26px 20px!important}
 .privacy-card .privacy-policy{padding:0!important;max-width:none!important}
 .junty-source-article-pages{width:100%!important;max-width:100%!important;margin:18px 0 6px!important;gap:14px!important}
 .junty-source-article-pages img{width:100%!important;border-radius:6px!important}
 .error-page .actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
 .error-page .actions .btn{width:100%!important;min-width:0!important;margin:0!important;padding:12px 8px!important;font-size:15px!important;white-space:nowrap!important}
}
