/*
Theme Name: ATS EA Studio Test
Description: Cocoonを親テーマに使う、ATS EA Studioの全画面試作テーマ。
Author: ATS EA Studio
Version: 1.0.67
Template: cocoon-master
Text Domain: ats-ea-studio-test
*/

:root { --ats-ink:#102531; --ats-navy:#11384d; --ats-mint:#55d8cf; --ats-mint-deep:#008f8c; --ats-paper:#fff; --ats-soft:#f3f8f8; --ats-line:#d8e4e5; --ats-muted:#58707b; }
* { box-sizing:border-box; }
body { margin:0; background:var(--ats-soft); color:var(--ats-ink); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif; line-height:1.8; }
body #container.ats-site { width:100%; max-width:none; margin:0; background:var(--ats-soft); }
.ats-site a { color:inherit; }
.ats-site-header { position:sticky; top:0; z-index:1000; background:var(--ats-navy); color:#fff; box-shadow:0 2px 10px rgba(4,27,39,.16); transition:background-color .24s ease,box-shadow .24s ease; }
body.admin-bar .ats-site-header { top:32px; }
.ats-site-header__inner { display:flex; width:min(1280px,calc(100% - 48px)); min-height:76px; margin:0 auto; align-items:center; justify-content:space-between; gap:28px; transition:min-height .24s ease; }
.ats-brand { display:inline-flex; flex-direction:column; gap:2px; color:#fff; text-decoration:none; white-space:nowrap; }
.ats-brand__name { font-size:1.08rem; font-weight:800; letter-spacing:.02em; transition:font-size .24s ease; }
.ats-brand__tagline { max-height:1.4em; overflow:hidden; color:#b8d1d4; font-size:.7rem; letter-spacing:.06em; opacity:1; transition:max-height .24s ease,opacity .18s ease,transform .24s ease; }
.ats-primary-nav ul,.ats-footer-nav ul { display:flex; flex-wrap:wrap; margin:0; padding:0; list-style:none; }
.ats-primary-nav ul { justify-content:flex-end; gap:2px; }
.ats-primary-nav li,.ats-footer-nav li { margin:0; padding:0; }
.ats-primary-nav a { display:block; padding:10px 12px; border-radius:5px; color:#e5f2f3; font-size:.87rem; font-weight:800; text-decoration:none; transition:padding .24s ease,font-size .24s ease,background-color .18s ease,color .18s ease; }
.ats-primary-nav a:hover,.ats-primary-nav .current-menu-item>a,.ats-primary-nav .current_page_item>a { background:rgba(85,216,207,.17); color:var(--ats-mint); }
.ats-site-header.is-scrolled { background:rgba(17,62,84,.64); box-shadow:0 4px 16px rgba(4,27,39,.24); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
.ats-site-header.is-scrolled .ats-site-header__inner { min-height:54px; }
.ats-site-header.is-scrolled .ats-brand__name { font-size:.98rem; }
.ats-site-header.is-scrolled .ats-brand__tagline { max-height:0; opacity:0; transform:translateY(-3px); }
.ats-site-header.is-scrolled .ats-primary-nav a { padding:7px 12px; font-size:.82rem; }
.ats-breadcrumb { border-bottom:1px solid #e2e9ea; background:#fff; color:#687980; font-size:.78rem; }
.ats-breadcrumb__inner { display:flex; width:min(1280px,calc(100% - 48px)); min-height:38px; align-items:center; gap:8px; margin:0 auto; overflow:hidden; white-space:nowrap; }
.ats-breadcrumb a { color:#4f6976; text-decoration:none; transition:color .18s ease; }
.ats-breadcrumb__home-link { display:inline-flex; align-items:center; gap:4px; }
.ats-breadcrumb__home-icon { width:.8rem; height:.8rem; fill:currentColor; flex:none; }
.ats-breadcrumb a:hover { color:#8298a1; text-decoration:none !important; }
.ats-breadcrumb__separator { color:#71848d; flex:none; font-size:1.15rem; font-weight:500; line-height:1; transform:translateY(-1px); }
.ats-main { width:min(1280px,calc(100% - 48px)); margin:0 auto; padding:58px 0 78px; }
.ats-content-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; align-items:start; gap:44px; padding:30px 0 78px; }
.ats-content-primary { min-width:0; }
.ats-page-header { margin-bottom:30px; }
.ats-eyebrow { margin:0 0 8px; color:var(--ats-mint-deep); font-size:.75rem; font-weight:800; letter-spacing:.13em; }
.ats-page-title { margin:0; color:var(--ats-ink); font-size:clamp(2rem,4vw,3.3rem); line-height:1.25; letter-spacing:-.04em; }
.ats-main--search { padding-top:38px; }
.ats-content-layout--search { padding:0 0 78px; }
.ats-page-header--search { position:relative; margin:0 0 62px; padding:8px 0 11px 22px; border-bottom:1px solid #d9dddf; }
.ats-page-header--search::after { position:absolute; bottom:-1px; left:0; width:240px; border-bottom:1px solid #001d70; content:""; }
.ats-page-header--search .ats-eyebrow { display:none; }
.ats-page-header--search .ats-page-title { font-size:clamp(1.3rem,1.8vw,1.55rem); line-height:1.35; letter-spacing:-.025em; }
.ats-main--archive .ats-page-title { font-size:clamp(1.3rem,1.8vw,1.55rem); line-height:1.35; letter-spacing:-.025em; }
.ats-page-lead { max-width:720px; margin:15px 0 0; color:var(--ats-muted); }
.ats-hero { background:var(--ats-navy); color:#fff; padding:82px 0 74px; }
.ats-home { padding-bottom:78px; }
.ats-home__inner { width:min(1280px,calc(100% - 48px)); margin:0 auto; }
.ats-hero h1 { max-width:780px; margin:15px 0 20px; color:#fff; font-size:clamp(2rem,4.5vw,3.85rem); line-height:1.13; letter-spacing:-.05em; }
.ats-hero p { max-width:700px; margin:0; color:#d1e0e2; font-size:1.04rem; }
.ats-hero__actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:31px; }
.ats-button { display:inline-block; padding:11px 18px; border:1px solid var(--ats-mint); border-radius:6px; background:var(--ats-mint); color:#092630; font-size:.94rem; font-weight:800; text-decoration:none; }
.ats-button--outline { background:transparent; color:#fff; }
.ats-share { margin:25px 0 0; }
.ats-share--bottom { margin-top:24px; padding-top:0; text-align:center; }
.ats-share--bottom .ats-share__buttons { justify-content:center; }
.ats-hero + .ats-home__inner .ats-share { margin:0; padding:22px 0 0; }
.ats-share__label { display:block; margin:0 0 8px; color:var(--ats-muted); font-size:.76rem; font-weight:800; }
.ats-share__buttons { display:flex; flex-wrap:wrap; gap:8px; }
.ats-share__button { display:inline-flex; min-height:36px; align-items:center; justify-content:center; gap:5px; padding:7px 12px; border:0; border-radius:4px; color:#fff !important; font:inherit; font-size:.76rem; font-weight:800; line-height:1; text-decoration:none; cursor:pointer; }
.ats-share__icon { display:inline-flex; align-items:center; justify-content:center; font-size:1rem; font-weight:800; line-height:1; }
.ats-share__icon svg { display:block; width:1em; height:1em; fill:currentColor; }
.ats-share__icon--hatena { font-family:Arial,sans-serif; font-size:.95em; font-weight:700; letter-spacing:-.08em; }
.ats-share__button--x { background:#111; }.ats-share__button--facebook { background:#4267a9; }.ats-share__button--hatena { background:#2775c4; }.ats-share__button--line { background:#06bd00; }.ats-share__button--copy { background:#4b5b63; }
.ats-share__button--pocket { background:#ef4056; }.ats-share__button--pinterest { background:#c8232c; }
.ats-entry .ats-share,.ats-hero + .ats-home__inner .ats-share { margin:30px 0; padding:0; border-top:1px solid #dfe2e3; border-bottom:1px solid #dfe2e3; }
.ats-entry .ats-share__label,.ats-hero + .ats-home__inner .ats-share__label { display:none; }
.ats-entry .ats-share__buttons,.ats-hero + .ats-home__inner .ats-share__buttons { justify-content:space-around; gap:0; }
.ats-entry .ats-share__button,.ats-hero + .ats-home__inner .ats-share__button { width:14.285%; min-height:40px; padding:0; border-radius:0; background:transparent; color:#526168 !important; font-size:1rem; }
.ats-entry .ats-share__button .ats-share__text,.ats-hero + .ats-home__inner .ats-share__button .ats-share__text { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.ats-entry .ats-share__button--facebook,.ats-hero + .ats-home__inner .ats-share__button--facebook { color:#4267a9 !important; }.ats-entry .ats-share__button--hatena,.ats-hero + .ats-home__inner .ats-share__button--hatena { color:#00a4de !important; }.ats-entry .ats-share__button--pocket,.ats-hero + .ats-home__inner .ats-share__button--pocket { color:#ef4056 !important; }.ats-entry .ats-share__button--pinterest,.ats-hero + .ats-home__inner .ats-share__button--pinterest { color:#c8232c !important; }.ats-entry .ats-share__button--line,.ats-hero + .ats-home__inner .ats-share__button--line { color:#06a800 !important; }.ats-entry .ats-share__button--copy,.ats-hero + .ats-home__inner .ats-share__button--copy { color:#6d777a !important; }
.ats-entry .ats-share__button:hover,.ats-hero + .ats-home__inner .ats-share__button:hover { opacity:.65; text-decoration:none; }
.ats-entry .ats-share__button--copy.is-copied,.ats-hero + .ats-home__inner .ats-share__button--copy.is-copied { color:#008f8c !important; }
.ats-section { padding-top:64px; }
.ats-section__heading { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:23px; }
.ats-section__heading h2 { margin:0; font-size:2rem; line-height:1.35; letter-spacing:-.04em; }
.ats-section__heading p { max-width:390px; margin:0; color:var(--ats-muted); font-size:.91rem; }
.ats-posts,.ats-post-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.ats-posts--two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ats-posts--compact { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 22px; }
.ats-post { display:flex; flex-direction:column; min-height:242px; padding:23px; border:1px solid var(--ats-line); border-radius:10px; background:var(--ats-paper); box-shadow:0 8px 28px rgba(17,56,77,.06); }
.ats-post__meta,.ats-post-card__meta { color:var(--ats-mint-deep); font-size:.75rem; font-weight:800; letter-spacing:.08em; }
.ats-post h3 { margin:12px 0; font-size:1.13rem; line-height:1.5; }
.ats-post h3 a { text-decoration:none; }
.ats-post__excerpt { margin:0; color:var(--ats-muted); font-size:.9rem; }
.ats-post__more { margin-top:auto; padding-top:18px; color:var(--ats-mint-deep); font-size:.86rem; font-weight:800; text-decoration:none; }
.ats-post--linked { padding:0; overflow:hidden; }
.ats-post__link { display:flex; min-height:242px; flex-direction:column; color:inherit; text-decoration:none; }
.ats-post__thumbnail { display:grid; aspect-ratio:16 / 9; min-height:0; place-items:center; overflow:hidden; background:#f3f5f5; color:#a8b1b3; font-family:Georgia,serif; font-size:1rem; letter-spacing:.03em; }
.ats-post__thumbnail img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .2s ease; }
.ats-post__body { display:flex; flex:1; min-width:0; flex-direction:column; padding:18px 20px 20px; }
.ats-post--linked:hover { border-color:var(--ats-mint); box-shadow:0 12px 34px rgba(17,56,77,.12); }
.ats-post--linked:hover .ats-post__thumbnail img { transform:scale(1.035); }
.ats-post--linked:focus-within { outline:3px solid rgba(85,216,207,.45); outline-offset:3px; }
.ats-posts--compact .ats-post { min-height:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.ats-posts--compact .ats-post__link { display:grid; grid-template-columns:190px minmax(0,1fr); min-height:120px; align-items:start; gap:16px; }
.ats-posts--compact .ats-post__thumbnail { aspect-ratio:16 / 9; border-radius:3px; }
.ats-posts--compact .ats-post__thumbnail img { transition:transform .28s ease; }
.ats-posts--compact .ats-post__body { display:block; min-height:74px; padding:0; }
.ats-posts--compact .ats-post h3 { display:-webkit-box; overflow:hidden; min-height:4.65em; margin:0; color:var(--ats-ink); font-size:1rem; line-height:1.55; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.ats-posts--compact .ats-post--linked:hover { border:0; box-shadow:none; }
.ats-posts--compact .ats-post--linked:hover .ats-post__thumbnail img { transform:scale(1.065); }
.ats-posts--compact .ats-post--linked:hover h3 { color:#6f7f86; text-decoration:none; }
.ats-content-primary .ats-post-grid { grid-template-columns:1fr; gap:16px; }
.ats-post-card { overflow:hidden; padding-bottom:26px; border:0; border-bottom:1px solid var(--ats-line); background:transparent; }
.ats-post-card__link { display:grid; grid-template-columns:300px minmax(0,1fr); min-height:188px; gap:24px; color:inherit; text-decoration:none; }
.ats-post-card__thumbnail { display:block; aspect-ratio:16 / 9; min-height:0; overflow:hidden; background:#f3f5f5; color:#a8b1b3; font-family:Georgia,serif; font-size:1.15rem; letter-spacing:.03em; }
.ats-post-card__thumbnail img { display:block; width:100%; height:auto; transition:transform .24s ease; }
.ats-post-card__body { display:flex; min-width:0; flex-direction:column; padding:0; }
.ats-post-card__meta { display:flex; flex-wrap:wrap; align-items:center; gap:7px 11px; margin-top:16px; color:#687980; font-size:.78rem; font-weight:500; letter-spacing:0; }
.ats-post-card__meta-item { display:inline-flex; align-items:center; gap:4px; white-space:nowrap; }
.ats-post-card__meta-icon { width:13px; height:13px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.35; }
.ats-post-card__meta-icon--folder { width:14px; height:14px; fill:currentColor; stroke:none; }
.ats-post-card__meta-item--category { color:#73777a; }
.ats-post-card h2 { margin:0 0 10px; color:var(--ats-ink); font-size:1.17rem; line-height:1.5; }
.ats-post-card__excerpt { display:-webkit-box; overflow:hidden; margin:0; color:#4f6068; font-size:.9rem; line-height:1.68; -webkit-box-orient:vertical; -webkit-line-clamp:4; }
.ats-content-layout--search .ats-post-card__thumbnail img { object-fit:contain; }
.ats-post-card:hover .ats-post-card__thumbnail img { transform:scale(1.04); }
.ats-post-card:hover h2 { color:var(--ats-mint-deep); }
.ats-post-card:focus-within { outline:3px solid rgba(85,216,207,.45); outline-offset:3px; }
.ats-intro { display:grid; grid-template-columns:1fr 1fr; gap:28px; padding:34px; border-radius:12px; background:#e9f3f3; }
.ats-intro h2 { margin:0; font-size:1.72rem; line-height:1.55; }
.ats-intro p { margin:0; color:var(--ats-muted); }
.ats-section--about { padding-top:38px; }
.ats-section--about .ats-intro { grid-template-columns:minmax(180px,.65fr) 1fr; gap:20px; padding:22px 26px; border-radius:8px; }
.ats-section--about .ats-intro h2 { font-size:1.28rem; line-height:1.35; }
.ats-section--about .ats-intro p { font-size:.9rem; line-height:1.65; }
.ats-feature { overflow:hidden; padding:0; border:1px solid var(--ats-line); border-left:4px solid var(--ats-mint); border-radius:9px; background:#fff; }
.ats-feature__link { display:grid; grid-template-columns:300px minmax(0,1fr); min-height:174px; color:inherit; text-decoration:none; }
.ats-feature__thumbnail { display:grid; place-items:center; overflow:hidden; background:#f3f5f5; color:#a8b1b3; font-family:Georgia,serif; font-size:1rem; letter-spacing:.03em; }
.ats-feature__thumbnail img { display:block; width:100%; height:100%; min-height:169px; object-fit:cover; transition:transform .2s ease; }
.ats-feature__body { display:flex; min-width:0; flex-direction:column; padding:22px 24px; }
.ats-feature__meta { margin:0; color:var(--ats-mint-deep); font-size:.75rem; font-weight:800; }
.ats-feature h3 { margin:8px 0; font-size:1.3rem; line-height:1.5; }
.ats-feature p:not(.ats-feature__meta) { margin:0 0 12px; color:var(--ats-muted); }
.ats-feature__body > span { margin-top:auto; color:var(--ats-mint-deep); font-size:.86rem; font-weight:800; }
.ats-feature:hover { border-color:var(--ats-mint); box-shadow:0 12px 34px rgba(17,56,77,.12); }
.ats-feature:hover .ats-feature__thumbnail img { transform:scale(1.035); }
.ats-feature:focus-within { outline:3px solid rgba(85,216,207,.45); outline-offset:3px; }
.ats-sidebar { display:grid; gap:16px; }
.ats-widget { padding:19px; border:1px solid var(--ats-line); border-radius:8px; background:#fff; }
.ats-widget h2 { margin:0 0 14px; padding-bottom:8px; border-bottom:2px solid var(--ats-mint); color:var(--ats-ink); font-size:1rem; line-height:1.4; }
.ats-widget ul { display:grid; gap:10px; margin:0; padding:0; list-style:none; }
.ats-widget li { color:var(--ats-muted); font-size:.86rem; line-height:1.55; }
.ats-widget a { color:var(--ats-ink); text-decoration:none; }
.ats-widget a:hover { color:var(--ats-mint-deep); text-decoration:underline; }
.ats-widget li span { display:block; margin-top:3px; color:var(--ats-muted); font-size:.76rem; }
.ats-widget--categories { padding:19px 20px 4px; }
.ats-widget--categories h2 { margin-bottom:0; }
.ats-category-list { display:block !important; margin:0 !important; }
.ats-category-list li { position:relative; display:block; padding:10px 4px 10px 21px; border-bottom:1px solid #dfe5e6; color:#738088; font-size:.88rem; line-height:1.45; }
.ats-category-list > li::before { position:absolute; top:12px; left:4px; width:14px; height:14px; background:#73777a; -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M1.3 3.2h4.05l1.35 1.55h8.05v8.05H1.3z'/%3E%3Cpath d='M1.3 3.2V2.45h3.8l1.25 1.35H1.3z'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M1.3 3.2h4.05l1.35 1.55h8.05v8.05H1.3z'/%3E%3Cpath d='M1.3 3.2V2.45h3.8l1.25 1.35H1.3z'/%3E%3C/svg%3E") center/contain no-repeat; content:""; }
.ats-category-list li a { color:#3f474b; }
.ats-category-list li a:hover { color:var(--ats-mint-deep); text-decoration:none; }
.ats-category-list .children { display:block !important; margin:10px -4px -10px -21px !important; padding:0 !important; list-style:none; }
.ats-category-list .children li { padding-left:30px; }
.ats-category-list .children li::before { position:absolute; top:10px; left:16px; color:#687278; content:"›"; font-size:1.25rem; line-height:1; }
.ats-widget--search { padding:0; border:0; border-radius:0; background:transparent; }
.ats-widget--search h2 { display:none; }
.ats-sidebar-search { display:flex; gap:0; }
.ats-sidebar-search input { min-width:0; height:39px; flex:1; padding:7px 9px; border:1px solid #dcdfe2; border-radius:0; color:#4f5960; font:inherit; font-size:.86rem; }
.ats-sidebar-search button { display:grid; width:40px; height:39px; flex:none; place-items:center; padding:0; border:0; border-radius:0; background:#001d70; color:#fff; cursor:pointer; }
.ats-sidebar-search button:hover { background:#20387f; }
.ats-sidebar-search button svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-width:2; }
.ats-widget--popular { padding:0; border:0; border-radius:0; background:transparent; }
.ats-widget--popular h2 { position:relative; margin-bottom:16px; padding:0 7px 9px; border-bottom:1px solid #d9dfe1; }
.ats-widget--popular h2::after { position:absolute; bottom:-1px; left:0; width:120px; border-bottom:1px solid #001d70; content:""; }
.ats-popular-posts { display:grid; gap:16px; margin:0; padding:0; list-style:none; }
.ats-popular-post { position:relative; min-height:68px; }
.ats-popular-post__link { display:grid; grid-template-columns:110px minmax(0,1fr); gap:12px; color:inherit; text-decoration:none; }
.ats-popular-post__thumbnail { display:block; aspect-ratio:16 / 10; overflow:hidden; background:#eef2f2; }
.ats-popular-post__thumbnail img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .24s ease; }
.ats-popular-post__rank { position:absolute; z-index:1; top:0; left:0; min-width:23px; padding:1px 5px; background:#18388b; color:#fff; font-size:.7rem; font-weight:700; line-height:1.45; text-align:center; }
.ats-popular-post:nth-child(1) .ats-popular-post__rank { background:#d0a600; }
.ats-popular-post:nth-child(2) .ats-popular-post__rank { background:#79858d; }
.ats-popular-post:nth-child(3) .ats-popular-post__rank { background:#a66a3f; }
.ats-popular-post__body { display:block; min-width:0; padding-top:1px; }
.ats-popular-post__body strong { display:-webkit-box; overflow:hidden; color:var(--ats-ink); font-size:.8rem; line-height:1.45; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.ats-popular-post__body small { display:flex; flex-wrap:wrap; align-items:center; gap:0 8px; margin-top:5px; color:#667278; font-size:.68rem; line-height:1.35; }
.ats-popular-post__category,.ats-popular-post__views { display:inline-flex; align-items:center; gap:3px; white-space:nowrap; }
.ats-popular-post__category svg { width:11px; height:11px; flex:none; fill:currentColor; }
.ats-popular-post__views svg { position:relative; top:2px; width:12px; height:12px; flex:none; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.25; }
.ats-widget--popular a:hover { text-decoration:none; }
.ats-popular-post__link:hover .ats-popular-post__thumbnail img { transform:scale(1.04); }
.ats-popular-post__link:hover strong { color:#6f7f86; }
.ats-popular-posts__empty { margin:0; color:var(--ats-muted); font-size:.85rem; }
.ats-widget--recent { padding:0; border:0; border-radius:0; background:transparent; }
.ats-widget--recent h2 { position:relative; margin-bottom:16px; padding:0 7px 9px; border-bottom:1px solid #d9dfe1; }
.ats-widget--recent h2::after { position:absolute; bottom:-1px; left:0; width:120px; border-bottom:1px solid #001d70; content:""; }
.ats-recent-posts { display:grid !important; gap:24px !important; margin:0; padding:0; list-style:none; }
.ats-recent-post { font-size:inherit !important; }
.ats-recent-post__link { display:block; color:inherit; text-decoration:none; }
.ats-recent-post__thumbnail { display:block; aspect-ratio:16 / 9; overflow:hidden; background:#eef2f2; }
.ats-recent-post__thumbnail img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .24s ease; }
.ats-recent-post__title { display:block; margin-top:10px; color:var(--ats-ink); font-size:.86rem; line-height:1.5; }
.ats-recent-post__category { display:flex; align-items:center; gap:4px; margin-top:4px; color:#667278; font-size:.72rem; line-height:1.35; }
.ats-recent-post__category svg { width:11px; height:11px; flex:none; fill:currentColor; }
.ats-widget--recent a:hover { text-decoration:none; }
.ats-recent-post__link:hover .ats-recent-post__thumbnail img { transform:scale(1.04); }
.ats-recent-post__link:hover .ats-recent-post__title { color:#6f7f86; }
.ats-recent-posts__empty { margin:0; color:var(--ats-muted); font-size:.85rem; }
.ats-widget--toc { padding:0; border:0; border-radius:0; background:transparent; }
.ats-widget--toc h2 { position:relative; margin-bottom:12px; padding-bottom:9px; border-bottom:1px solid #d9dfe1; }
.ats-widget--toc h2::after { position:absolute; bottom:-1px; left:0; width:120px; border-bottom:1px solid #001d70; content:""; }
.ats-widget--toc ol { display:grid; gap:7px; margin:0; padding:0; list-style:none; }
.ats-widget--toc li { display:flex; align-items:baseline; color:#4d555a; font-size:.9rem; line-height:1.48; }
.ats-widget--toc .ats-toc__number { display:inline; width:auto; flex:none; margin:0 4px 0 0; color:#596267; font-size:inherit; white-space:nowrap; }
.ats-toc__number::after { content:" |"; }
.ats-widget--toc .ats-toc__level-3 { padding-left:15px; font-size:.78rem; }
.ats-widget--toc a { color:#4d555a; text-decoration:none; }
.ats-widget--toc a:hover { color:#81959d; text-decoration:none; }
.ats-entry__body #toc { width:auto; max-width:none; margin:3rem 0; padding:24px 24px 20px; border:0; border-top:2px solid #001d70; border-bottom:2px solid #001d70; border-radius:0; background:transparent; box-shadow:none; text-align:left; }
.ats-entry__body #toc .toc-checkbox { display:none; }
.ats-entry__body #toc .toc-title { display:block; margin:0 0 17px; color:#253946; font-size:1.03rem; font-weight:400; line-height:1.4; text-align:center; }
.ats-entry__body #toc .toc-title::before { display:inline-block; margin-right:10px; color:#001d70; content:"☷"; font-size:1.35rem; line-height:.7; vertical-align:-1px; }
.ats-entry__body #toc .toc-title::after { display:none; content:""; }
.ats-entry__body #toc .toc-content { visibility:visible; height:auto; opacity:1; padding:0; }
.ats-entry__body #toc .toc-list,.ats-entry__body #toc .toc-list ol { margin:0; padding:0; list-style:none; }
.ats-entry__body #toc .toc-list { counter-reset:ats-toc-section; }
.ats-entry__body #toc .toc-list > li { position:relative; margin:0 0 14px; padding-left:26px; color:#4d555a; font-size:.96rem; line-height:1.55; counter-increment:ats-toc-section; }
.ats-entry__body #toc .toc-list > li::before { position:absolute; top:0; left:0; color:#596267; content:counter(ats-toc-section) " |"; }
.ats-entry__body #toc .toc-list > li:last-child { margin-bottom:0; }
.ats-entry__body #toc .toc-list > li > ol { margin-top:7px; counter-reset:ats-toc-subsection; }
.ats-entry__body #toc .toc-list > li > ol > li { position:relative; margin:5px 0; padding-left:40px; color:#697378; font-size:.87rem; line-height:1.48; counter-increment:ats-toc-subsection; }
.ats-entry__body #toc .toc-list > li > ol > li::before { position:absolute; top:0; left:0; color:#697378; content:counter(ats-toc-section) "-" counter(ats-toc-subsection) " |"; }
.ats-entry__body #toc a { color:inherit; text-decoration:none; }
.ats-entry__body #toc a:hover { color:#81959d; text-decoration:none; }
.ats-entry { max-width:none; padding:clamp(32px,4vw,50px); border:1px solid var(--ats-line); border-radius:12px; background:var(--ats-paper); box-shadow:0 8px 28px rgba(17,56,77,.05); }
.ats-entry__header { display:grid; grid-template-columns:72px minmax(0,1fr); align-items:start; column-gap:24px; row-gap:12px; }
.ats-entry__date-badge { display:flex; min-height:72px; flex-direction:column; align-items:center; justify-content:center; padding-right:18px; border-right:1px solid var(--ats-line); font-variant-numeric:tabular-nums; line-height:1.1; text-align:center; }
.ats-entry__date-year { color:#70777c; font-size:.88rem; letter-spacing:.04em; }
.ats-entry__date-day { margin-top:4px; color:#4e575c; font-size:1.4rem; font-weight:400; letter-spacing:-.04em; }
.ats-entry__meta { display:flex; grid-column:1 / -1; flex-wrap:wrap; align-items:center; gap:7px 10px; margin:0; color:#6d777d; font-size:.78rem; }
.ats-entry__meta-date { display:inline-flex; align-items:center; gap:4px; color:#6d777d; white-space:nowrap; }
.ats-entry__meta-icon { width:12px; height:12px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.35; }
.ats-entry__meta-icon--folder { fill:currentColor; stroke:none; }
.ats-entry__category-wrap { display:inline-flex; align-items:center; gap:5px; color:#001d70; }
.ats-entry__category,.ats-entry__taxonomy-links a { display:inline-flex; align-items:center; padding:2px 8px; border-radius:3px; font-size:.76rem; font-weight:800; line-height:1.25; text-decoration:none; }
.ats-entry__category { background:#001d70; color:#fff !important; transition:box-shadow .25s; }
.ats-entry__category:hover { animation:ats-category-flash 1s; box-shadow:0 2px 8px rgba(0,0,0,.25); color:#fff !important; text-decoration:none; }
@keyframes ats-category-flash { 0%,100% { opacity:1; } 50% { opacity:.55; } }
.ats-entry__title { margin:0; color:var(--ats-ink); font-size:clamp(1.18rem,1.55vw,1.45rem); line-height:1.42; letter-spacing:-.02em; }
.ats-entry__body { margin-top:35px; color:#263b46; font-size:1rem; }
.ats-entry__body h2,.ats-entry__body h3 { margin:2.1em 0 .8em; color:var(--ats-ink); line-height:1.45; }
.ats-entry__body h2 { padding-bottom:.45em; border-bottom:2px solid var(--ats-mint); font-size:1.6rem; }
.ats-entry__body h3 { font-size:1.23rem; }
.ats-entry__body a { color:#007b83; text-decoration-thickness:1px; }
.ats-entry__body img { max-width:100%; height:auto; border-radius:8px; }
.ats-entry__thumbnail { margin:28px 0 0; }
.ats-entry__thumbnail img { display:block; width:100%; height:auto; border-radius:8px; }
.ats-entry__body blockquote { margin:1.5em 0; padding:18px 22px; border-left:4px solid var(--ats-mint); background:var(--ats-soft); }
.ats-entry__taxonomies { display:flex; flex-wrap:wrap; align-items:center; gap:8px 11px; margin-top:22px; padding:0; }
.ats-entry__taxonomy-group { display:inline-flex; flex-wrap:wrap; align-items:center; gap:6px; }
.ats-entry__taxonomy-icon { width:14px; height:14px; flex:none; fill:none; stroke:#36515f; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.35; }
.ats-entry__taxonomy-icon--folder { fill:#001d70; stroke:none; }
.ats-entry__taxonomy-links { display:flex; flex-wrap:wrap; gap:6px; }
.ats-entry__taxonomy-links--categories a { background:#001d70; color:#fff; transition:box-shadow .25s; }
.ats-entry__taxonomy-links--categories a:hover { animation:ats-category-flash 1s; box-shadow:0 2px 8px rgba(0,0,0,.25); color:#fff; text-decoration:none; }
.ats-entry__taxonomy-links--tags a { background:#f2f4f5; color:#4e5e66; transition:box-shadow .25s; }
.ats-entry__taxonomy-links--tags a:hover { animation:ats-category-flash 1s; box-shadow:0 2px 8px rgba(0,0,0,.25); color:#4e5e66; text-decoration:none; }
.ats-entry__footer { display:flex; justify-content:space-between; gap:14px; margin-top:38px; padding-top:20px; border-top:1px solid var(--ats-line); color:var(--ats-muted); font-size:.86rem; }
.ats-comments { margin-top:42px; padding-top:0; }
.ats-comments h2 { margin:0 0 20px; color:var(--ats-ink); font-size:1.35rem; }
.ats-comments h2 span { color:var(--ats-mint-deep); font-size:.9rem; }
.ats-comment-list { display:grid; gap:14px; margin:0; padding:0; list-style:none; }
.ats-comment-list .children { display:grid; gap:0; margin:0 0 0 40px; padding:0; list-style:none; }
.ats-comment-list .children > .comment { list-style:none; }
.ats-comment-list .comment-body { padding:18px; border:1px solid var(--ats-line); border-radius:7px; background:var(--ats-soft); }
.ats-comment-list .comment { scroll-margin-top:32px; }
.ats-comment-list .comment-meta { margin-bottom:10px; color:var(--ats-muted); font-size:.78rem; }
.ats-comment-list .comment-author { color:var(--ats-ink); font-weight:800; }
.ats-comment-list .comment-content { font-size:.9rem; line-height:1.65; }
.ats-comment-list .comment-content p { margin:0; }
.ats-comment-list .reply { margin-top:9px; font-size:.82rem; }
.ats-comment-list .reply a { color:var(--ats-mint-deep); }
.ats-comment-delete-form { display:inline; margin-left:10px; }
.ats-comment-delete-button { padding:0; border:0; background:transparent; color:#8b4a4a; font:inherit; font-size:inherit; text-decoration:underline; cursor:pointer; }
.ats-comment-delete-button:hover { color:#b23535; }
.ats-comments #respond { margin-top:28px; }
.ats-comments #respond { inset:auto; position:static; visibility:visible; }
.ats-comments #reply-title { font-size:1.15rem; }
.ats-comments textarea,.ats-comments input[type="text"],.ats-comments input[type="email"],.ats-comments input[type="url"] { width:100%; padding:9px; border:1px solid var(--ats-line); border-radius:4px; font:inherit; }
.ats-comments input[type="submit"] { padding:10px 15px; border:0; border-radius:4px; background:var(--ats-navy); color:#fff; font:inherit; font-weight:800; cursor:pointer; }
.ats-comments__note,.ats-comments__closed,.ats-comments__notice { color:var(--ats-muted); font-size:.84rem; }
.ats-comments__notice { margin:0 0 16px; padding:10px 12px; border:1px solid var(--ats-line); border-radius:5px; background:#fff; }
.ats-pagination { display:flex; flex-wrap:wrap; gap:8px; margin-top:34px; }
.ats-pagination .page-numbers { display:inline-grid; min-width:38px; height:38px; place-items:center; border:1px solid var(--ats-line); border-radius:5px; background:#fff; text-decoration:none; }
.ats-pagination .current { border-color:var(--ats-navy); background:var(--ats-navy); color:#fff; }
.ats-empty { padding:34px; border:1px dashed var(--ats-line); border-radius:10px; background:#fff; color:var(--ats-muted); }
.ats-search { display:flex; gap:8px; max-width:520px; margin:24px 0 34px; }
.ats-search input { flex:1; min-width:0; padding:11px 13px; border:1px solid var(--ats-line); border-radius:5px; font:inherit; }
.ats-search button { padding:11px 18px; border:0; border-radius:5px; background:var(--ats-navy); color:#fff; font:inherit; font-weight:800; cursor:pointer; }
.ats-site-footer { border-top:1px solid var(--ats-line); background:#fff; }
.ats-site-footer__inner { display:grid; grid-template-columns:1fr auto; width:min(1280px,calc(100% - 48px)); margin:0 auto; padding:30px 0 24px; gap:18px 36px; }
.ats-footer-brand { font-size:1rem; font-weight:800; text-decoration:none; }
.ats-site-footer p { margin:3px 0 0; color:var(--ats-muted); font-size:.78rem; }
.ats-footer-nav ul { justify-content:flex-end; gap:0; }
.ats-footer-nav a { display:block; padding:0 10px; border-right:1px solid var(--ats-line); color:var(--ats-muted); font-size:.8rem; text-decoration:none; }
.ats-footer-nav li:last-child a { border-right:0; }
.ats-copyright { grid-column:1 / -1; text-align:right; }
@media (max-width:920px) { .ats-content-layout { grid-template-columns:1fr; } .ats-sidebar { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:820px) { .ats-site-header__inner { display:block; padding:16px 0 11px; } .ats-primary-nav ul { justify-content:flex-start; margin:10px -7px 0; } .ats-primary-nav a { padding:7px; } .ats-breadcrumb__inner { width:calc(100% - 28px); } .ats-posts,.ats-posts--two,.ats-posts--compact,.ats-post-grid,.ats-intro { grid-template-columns:1fr; } .ats-posts--compact .ats-post__link { grid-template-columns:142px minmax(0,1fr); } .ats-post-card__link { grid-template-columns:210px minmax(0,1fr); } .ats-feature__link { grid-template-columns:250px minmax(0,1fr); } .ats-section__heading { display:block; } .ats-section__heading p { margin-top:9px; } .ats-site-footer__inner { grid-template-columns:1fr; } .ats-footer-nav ul { justify-content:flex-start; } .ats-copyright { grid-column:auto; text-align:left; } }
@media (max-width:782px) { body.admin-bar .ats-site-header { top:46px; } }
@media (max-width:600px) { .ats-sidebar { grid-template-columns:1fr; } }
@media (max-width:520px) { .ats-main { padding-top:38px; } .ats-hero { padding:55px 0; } .ats-post-card__link,.ats-feature__link { grid-template-columns:1fr; } .ats-post-card__thumbnail,.ats-post-card__thumbnail img,.ats-feature__thumbnail,.ats-feature__thumbnail img { min-height:175px; } .ats-entry { padding:25px 20px; border-radius:8px; } .ats-entry__header { grid-template-columns:1fr; gap:16px; } .ats-entry__date-badge { min-height:0; flex-direction:row; justify-content:flex-start; gap:8px; padding:0 0 11px; border-right:0; border-bottom:1px solid var(--ats-line); } .ats-entry__date-day { margin-top:0; font-size:1.1rem; } .ats-entry__footer { display:block; } }
