/* Modern CCN shell. Existing Joomla module content and routes are retained. */
body.ccn-modern {background:#f1f3ef;color:#29362c}
.ccn-modern #root {max-width:1200px;margin:18px auto!important;background:#fff;border:1px solid #dce3d7;border-radius:10px;box-sizing:border-box}
.ccn-modern #ja-wrapper {width:100%;margin:0}
.ccn-modern #pg-header {display:grid;grid-template-columns:auto minmax(0,1fr) minmax(180px,270px) auto;align-items:center;gap:20px;width:100%;padding:18px 26px;border-bottom:1px solid #e1e7dc;box-sizing:border-box;position:relative;z-index:100}
.ccn-header-logo {min-width:0}
.ccn-header-logo div {margin:0!important;padding:0!important}
.ccn-modern #pg-header #ccn-logo {height:48px!important;width:auto;max-width:100%;display:block}
.ccn-modern #pg-header a {text-decoration:none}
.ccn-modern #ja-mainnavwrap {float:none;width:auto;height:auto;margin:0;padding:0;border:0;background:none;min-width:0}
.ccn-modern #ja-mainnav {position:static;float:none;width:auto;margin:0;line-height:1.5;pointer-events:auto}
.ccn-modern #ja-mainnav > ul {display:flex!important;align-items:center;flex-wrap:nowrap;gap:4px;float:none;position:static;margin:0!important;padding:0;background:none;list-style:none}
.ccn-modern #ja-mainnav > ul > li {display:block!important;float:none!important;flex:0 0 auto;margin:0;padding:0;border:0;background:none!important;line-height:1.5;position:relative}
.ccn-modern #ja-mainnav > ul > li:before {content:none}
.ccn-modern #ja-mainnav > ul > li > a {display:block;margin:0;padding:10px 12px!important;border-radius:6px;background:none;color:#2c3c2c;font:bold 16px/1.5 Arial,sans-serif;white-space:nowrap}
.ccn-modern #ja-mainnav > ul > li > a:hover,
.ccn-modern #ja-mainnav > ul > li > a:focus {background:#f1f6ed;color:#18552e}
.ccn-modern #ja-mainnav > ul > li.active > a,
.ccn-modern #ja-mainnav > ul > li.current > a,
.ccn-modern #ja-mainnav > ul > li > #active_menu,
.ccn-modern #ja-mainnav > ul > li > a[aria-current="page"] {background:#e9f2e3;color:#18552e}
.ccn-modern #ja-mainnav li:focus-within > ul {display:block!important;visibility:visible!important}
.ccn-modern #ja-mainnav li ul {background:#fff;border:1px solid #dce3d7;border-radius:6px;padding:5px;z-index:101}
.ccn-modern #ja-mainnav li ul a {color:#006699;font-size:14px!important;background:#fff;padding:7px 10px!important}
.ccn-modern #pg-header .ws-search {display:block!important;text-align:left;padding:0;min-width:0;width:100%}
.ccn-header-search form {margin:0!important;width:100%}
.ccn-header-search form > div {width:100%!important}
.ccn-header-search form > div > div {display:flex!important;align-items:center;border:1px solid #d6dfd0!important;border-radius:7px;overflow:hidden;background:#fafbf8;width:100%!important;margin:0!important;box-sizing:border-box}
.ccn-modern #pg-header .ccn-header-search input[name="searchword"] {flex:1;min-width:0;width:100%!important;height:42px;box-sizing:border-box;border:0!important;background:transparent!important;color:#29362c;padding:9px 10px;margin:0!important;font:14px/1.5 Arial,sans-serif}
.ccn-header-search button {flex:0 0 auto;border:0!important;border-left:1px solid #e2e8dc!important;border-radius:0!important;background:#edf4e7!important;color:#24572b!important;min-height:42px;padding:7px 10px!important;font:13px/1.5 Arial,sans-serif!important;cursor:pointer}
.ccn-header-search form > input[type="hidden"] {display:none}
.ccn-account {position:relative;grid-column:4;min-width:42px}
.ccn-account > summary {width:42px;height:42px;display:flex;align-items:center;justify-content:center;border:1px solid #dce3d7;border-radius:50%;list-style:none;cursor:pointer;color:#18552e;box-sizing:border-box}
.ccn-account > summary::-webkit-details-marker {display:none}
.ccn-account > summary svg {fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.ccn-account[open] > summary,.ccn-account > summary:hover {background:#eaf2e4}
.ccn-account-panel {position:absolute;right:0;top:52px;width:260px;max-width:calc(100vw - 32px);padding:16px;background:#fff;border:1px solid #dce3d7;border-radius:8px;box-shadow:0 8px 24px #263b2620;box-sizing:border-box;z-index:102;font:14px/1.8 Arial,sans-serif}
.ccn-account-panel #userDiv {float:none;display:block;width:100%}
.ccn-account-panel #userDiv a {display:inline-block;padding:5px 7px;color:#006699}
.ccn-account-panel form {margin:0}
.ccn-header-actions {grid-column:1/-1;display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;border-top:1px solid #e8eddf;padding-top:10px}
.ccn-header-actions > div {float:none!important}
.ccn-header-actions a {display:inline-block;background:#edf4e7!important;color:#315c2e!important;border:1px solid #dae5d1;border-radius:4px;padding:5px 10px;margin:2px;font:13px/1.5 Arial,sans-serif}
.ccn-modern #pg-body {max-width:none;padding:26px;box-sizing:border-box;display:flow-root}
.ccn-modern #main-box {float:left;box-sizing:border-box;width:calc(100% - 330px);padding:0 26px 0 0}
.ccn-modern #ja-col22 {float:right;box-sizing:border-box;width:330px;padding:0;margin:0}
.ccn-sidebar-brand {text-align:center;margin-bottom:18px}
.ccn-sidebar-brand #hd-logo {height:auto!important;max-height:75px;max-width:100%;width:auto}
.ccn-modern #ja-col22 .jamod {width:100%;box-sizing:border-box;border:1px solid #dce3d7;border-radius:7px;background:#fff;margin:0 0 20px;overflow:hidden}
.ccn-modern #ja-col22 .jamod > div > div > div {padding:0}
.ccn-modern #ja-col22 .jamod h3 {background:#eaf1e3!important;color:#31552b!important;border:0;border-bottom:1px solid #dce3d7;margin:0;padding:12px 14px;font:bold 17px/1.4 Arial,sans-serif}
.ccn-modern #ja-col22 .jamod h3 span {color:inherit!important}
.ccn-modern #ja-col22 .jamod-content {padding:12px 14px!important;box-sizing:border-box;font-size:14px;line-height:1.65}
.ccn-modern #ja-col22 .jamod-content a {color:#006699}
.ccn-modern #ja-col22 .jamod-content a:hover {text-decoration:underline}
.ccn-modern #ja-footerwrap {clear:both;padding:0 26px}
.ccn-modern #ja-footer {border-top:1px solid #dce3d7;padding:20px 0;background:#fff}
.ccn-modern #pg-header a:focus-visible,.ccn-modern #pg-header summary:focus-visible,.ccn-modern #pg-header button:focus-visible,.ccn-modern #pg-header input:focus-visible {outline:2px solid #9a773f;outline-offset:2px}
@media(max-width:1050px){
 .ccn-modern #pg-header {gap:12px;padding:16px 20px;grid-template-columns:auto minmax(0,1fr) minmax(150px,210px) auto}
 .ccn-modern #ja-mainnav > ul > li > a {font-size:15px;padding:9px!important}
 .ccn-modern #pg-body {padding:22px 18px}
 .ccn-modern #main-box {width:calc(100% - 300px);padding-right:20px}
 .ccn-modern #ja-col22 {width:300px}
}
@media(max-width:800px){
 .ccn-modern #root {margin:0!important;border:0;border-radius:0}
 .ccn-modern #pg-header {grid-template-columns:minmax(0,1fr) auto;padding:0 16px;gap:0}
 .ccn-modern #pg-header #ccn-logo {height:40px!important;padding:0}
 .ccn-header-logo {grid-column:1;grid-row:1;padding:16px 0}
 .ccn-account {grid-column:2;grid-row:1}
 .ccn-modern #pg-header .ws-search {grid-column:1/-1;grid-row:2;margin-bottom:12px}
 .ccn-modern #ja-mainnavwrap {grid-column:1/-1;grid-row:3;width:100%;border-top:1px solid #e1e7dc}
 .ccn-modern #ja-mainnav > ul {justify-content:space-between;gap:0;padding:9px 0;overflow-x:auto}
 .ccn-modern #ja-mainnav > ul > li > a {font-size:14px;padding:8px 10px!important}
 .ccn-header-actions {grid-row:4;padding:10px 0;justify-content:center}
 .ccn-modern #pg-body {padding:20px 14px}
 .ccn-modern #main-box {float:none!important;width:100%!important;margin:0!important;padding:0}
 .ccn-modern #main-content {float:none;width:100%}
 .ccn-modern #ja-col22 {float:none;width:100%!important;margin:28px 0 0!important;padding:22px 0 0;border-top:1px solid #e1e7dc;clear:both}
 .ccn-modern #ja-footerwrap {padding:0 14px}
}
@media(max-width:360px){
 .ccn-modern #ja-mainnav > ul > li > a {font-size:13px;padding:8px 7px!important}
}