/*
Theme Name: SHIRUNE
Description: SHIRUNE editorial child theme for Twenty Twenty-Five.
Template: twentytwentyfive
Version: 0.3.0
Requires at least: 6.7
Requires PHP: 7.4
Text Domain: shirune
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
:root{
 --sh-ink:#304e49;--sh-text:#344842;--sh-muted:#5d6d65;
 --sh-line:#d9e6df;--sh-paper:#fff;--sh-soft:#eef8f4;
 --sh-sage:#60bcaf;--sh-coral:#ef9286;--sh-yellow:#f4cf67;
 --sh-green-wash:#e8f6f1;--sh-coral-wash:#fff0eb;--sh-yellow-wash:#fff8df;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:2rem}
body{margin:0;background:var(--sh-paper);color:var(--sh-text);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:1rem;line-height:1.95;-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:.3em}
a:hover{text-decoration-thickness:2px}
a:focus-visible,button:focus-visible{outline:3px solid #456d5e;outline-offset:5px}
img{max-width:100%;height:auto}
.wp-site-blocks{padding:0}
.wp-site-blocks>*{margin-block-start:0}
.sh-wrap{max-width:1256px;margin-inline:auto;padding-inline:64px}
.sh-header{padding-block:34px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.sh-brand .wp-block-site-title{font-family:Arial,sans-serif;font-size:2.125rem;font-weight:700;letter-spacing:.13em;line-height:1.2;margin:0;color:var(--sh-ink)}
.sh-brand .wp-block-site-title a{text-decoration:none}
.sh-brand .sh-brand-sub{font-size:.75rem;letter-spacing:.07em;margin:9px 0 0;color:var(--sh-muted)}
.sh-nav{display:flex;gap:12px;align-items:center;font-size:.875rem;font-weight:600}
.sh-nav a{display:inline-flex;min-height:44px;align-items:center;padding:7px 21px;border-radius:999px;text-decoration:none}.sh-nav a:first-child{background:var(--sh-green-wash)}.sh-nav a:last-child{background:var(--sh-yellow-wash)}
.sh-nav a:hover{text-decoration:underline}
.sh-hero{position:relative;padding-block:42px 54px;display:grid;grid-template-columns:1fr 1.06fr;gap:32px;align-items:center}
.sh-hero-copy{position:relative;z-index:1}
.sh-eyebrow{display:inline-block;width:fit-content;font-size:.875rem;letter-spacing:.08em;font-weight:600;color:var(--sh-ink);background:var(--sh-green-wash);border-radius:9px;padding:7px 15px;margin:0 0 25px}
.sh-hero h1{font-family:"Hiragino Maru Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:clamp(2rem,3.25vw,2.75rem);line-height:1.85;letter-spacing:.045em;font-weight:700;margin:0 0 24px;color:var(--sh-ink)}
.sh-lead{font-size:1rem;line-height:2.15;margin:0;max-width:530px}
.sh-button{display:inline-flex;align-items:center;justify-content:center;gap:27px;border:1.5px solid var(--sh-ink);border-radius:999px;background:var(--sh-yellow);color:var(--sh-ink);box-shadow:3px 3px 0 var(--sh-ink);padding:14px 25px;text-decoration:none;font-size:.9375rem;font-weight:600;margin-top:31px;transition:background .18s ease,transform .18s ease,box-shadow .18s ease}
.sh-button:hover{background:#f8db89;transform:translate(1px,1px);box-shadow:2px 2px 0 var(--sh-ink);text-decoration:none}
.sh-button span{font-size:1.15rem}
.sh-hero-art{position:relative;margin:0;align-self:center}.sh-hero-art::after{content:"";position:absolute;right:3%;top:0;width:52px;height:52px;border:12px solid var(--sh-coral);border-radius:50%;pointer-events:none}.sh-highlight{box-shadow:inset 0 -.24em 0 #ffe4a0;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.sh-hero-art img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain}
.sh-hero-art figcaption{font-size:.75rem;letter-spacing:.19em;color:var(--sh-muted);text-align:center;margin-top:18px;font-family:Arial,sans-serif}
.sh-checks{padding:22px 0 38px;display:grid;grid-template-columns:.7fr 2fr;gap:30px;align-items:center;border-bottom:1px solid var(--sh-line)}
.sh-panel-label{font-family:Arial,sans-serif;font-size:.75rem;letter-spacing:.14em;color:var(--sh-muted);margin:0 0 7px}
.sh-checks h2{font-size:1.125rem;line-height:1.75;font-weight:600;margin:0}
.sh-steps{padding:0;list-style:none;margin:0!important;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-radius:20px;overflow:hidden}
.sh-steps li{display:flex;align-items:center;gap:13px;padding:23px 18px;min-width:0;background:#d9f0e8}.sh-steps li:nth-child(2){background:#fbe0d7}.sh-steps li:nth-child(3){background:#fff0bf}
.sh-steps strong{flex:none;display:flex;align-items:center;justify-content:center;font-family:Arial,sans-serif;font-size:1.625rem;line-height:1;font-weight:700;color:var(--sh-ink)}


.sh-steps span{font-size:.875rem;line-height:1.8}
.sh-guides{padding-block:72px 80px}
.sh-section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}
.sh-section-head h2{font-size:1.875rem;font-weight:700;letter-spacing:.06em;line-height:1.65;margin:0}
.sh-section-head p{font-family:Arial,sans-serif;font-size:.75rem;letter-spacing:.16em;margin:0 0 5px;color:var(--sh-muted)}
.sh-cards .wp-block-post-template{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0;list-style:none;margin:0}
.sh-cards .wp-block-post-template>li{min-width:0;display:flex}
.sh-card{--sh-card-color:var(--sh-sage);width:100%;height:100%;border:1px solid #d3e6dd;border-top:7px solid var(--sh-card-color);border-radius:9px 26px 26px 26px;background:var(--sh-green-wash);overflow:hidden;display:flex;flex-direction:column;transition:transform .18s ease}
.sh-cards .wp-block-post-template>li:nth-child(3n+2) .sh-card{--sh-card-color:var(--sh-coral);background:var(--sh-coral-wash)}
.sh-cards .wp-block-post-template>li:nth-child(3n+3) .sh-card{--sh-card-color:var(--sh-yellow);background:var(--sh-yellow-wash)}
.sh-card:hover,.sh-card:focus-within{transform:translateY(-3px)}
.sh-card-content{padding:30px;display:flex;flex-direction:column;flex:1}
.sh-card .wp-block-post-title{font-size:1.25rem;line-height:1.8;font-weight:600;letter-spacing:.02em;margin:20px 0 17px}
.sh-card .wp-block-post-title a{text-decoration:none}
.sh-card .wp-block-post-title a:hover{text-decoration:underline}
.sh-card .wp-block-post-terms{align-self:flex-start;max-width:100%;font-size:.875rem;font-weight:600;color:#233d37;letter-spacing:.03em;line-height:1.7;padding:5px 12px;border-radius:7px;background:var(--sh-card-color)}
.sh-card .wp-block-post-terms a{color:inherit;text-decoration:none}
.sh-card .wp-block-post-terms a:hover{text-decoration:underline}
.sh-card .wp-block-post-excerpt{font-size:1rem;line-height:1.95;color:var(--sh-muted);margin:0 0 25px}
.sh-card .wp-block-post-excerpt p{margin:0}
.sh-card .wp-block-read-more{font-size:.875rem;font-weight:600;margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;min-height:44px;text-decoration:none;border-bottom:2px solid var(--sh-card-color)}
.sh-card .wp-block-post-featured-image{margin:0;aspect-ratio:16/9;overflow:hidden}
.sh-card .wp-block-post-featured-image img{width:100%;height:100%;object-fit:cover}
.sh-editorial{position:relative;padding:46px 44px;margin-bottom:55px;display:grid;grid-template-columns:1fr 1.4fr;gap:50px;background:var(--sh-green-wash);border-radius:32px 32px 76px 32px}
.sh-editorial h2{font-size:1.625rem;line-height:1.9;letter-spacing:.05em;font-weight:600;margin:0}
.sh-editorial .sh-editorial-copy p{font-size:1rem;line-height:2.05;margin:0 0 18px}
.sh-editorial .sh-editorial-copy .sh-scope{font-size:.875rem;line-height:1.95;color:var(--sh-muted);margin-bottom:0}
.sh-footer{border-top:3px solid var(--sh-sage);padding-block:34px 42px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.75rem;color:var(--sh-muted)}
.sh-footer p{margin:0}
.sh-mark{font-family:Arial,sans-serif;letter-spacing:.16em;font-weight:600;font-size:1.25rem;color:var(--sh-ink)}
.sh-article{max-width:864px;padding-block:48px 100px}
.sh-back{font-size:.875rem;color:var(--sh-muted)}
.sh-back a{display:inline-flex;align-items:center;min-height:44px}
.sh-article .wp-block-post-title{font-family:inherit;font-size:clamp(1.75rem,3vw,2.125rem);line-height:1.8;letter-spacing:.04em;font-weight:700;margin:24px 0}
.sh-article .wp-block-post-date{font-size:.8125rem;color:var(--sh-muted);margin:0 0 40px}
.sh-article .wp-block-post-content{font-size:1.0625rem;line-height:2.1;overflow-wrap:anywhere}
.sh-article .wp-block-post-content>p{margin:1.4em 0}
.sh-article .wp-block-post-content h2{font-size:1.5rem;font-weight:600;line-height:1.8;letter-spacing:.03em;margin:2.5em 0 1em;padding:13px 19px;border-left:5px solid var(--sh-sage);border-radius:0 12px 12px 0;background:var(--sh-green-wash)}
.sh-article .wp-block-post-content h3{font-size:1.1875rem;line-height:1.9;margin:2em 0 1em}
.sh-article .wp-block-post-content a{color:#356554}
.wp-block-table{overflow-x:auto;margin:30px 0;max-width:100%;border-radius:12px}
.wp-block-table table{border-collapse:collapse;width:100%;font-size:.9375rem;line-height:1.9}
.wp-block-table th,.wp-block-table td{padding:18px;border:1px solid var(--sh-line);text-align:left;vertical-align:top;min-width:145px}
.wp-block-table th{background:var(--sh-green-wash);font-weight:600}
.sh-empty{padding:30px;background:var(--sh-soft);color:var(--sh-muted);border-radius:16px}
.sh-archive{padding-block:48px 80px}
.sh-archive .wp-block-query-title{font-size:2rem;font-weight:500}
.wp-block-query-pagination{margin-block:30px;display:flex;gap:20px;flex-wrap:wrap}
.wp-block-query-pagination a{display:inline-flex;min-height:44px;align-items:center}
@media(max-width:1000px){
 .sh-wrap{padding-inline:36px}.sh-hero{gap:20px;padding-block:40px}.sh-hero h1{font-size:2.15rem}
 .sh-checks{grid-template-columns:1fr;gap:23px}.sh-steps{gap:0}.sh-card-content{padding:24px}
 .sh-cards .wp-block-post-template{gap:18px}.sh-editorial{gap:44px}
}
@media(max-width:720px){
 .sh-wrap{padding-inline:24px}.sh-header{padding-block:25px;flex-wrap:wrap;gap:14px}
 .sh-brand .wp-block-site-title{font-size:1.625rem}.sh-brand .sh-brand-sub{font-size:.75rem;letter-spacing:0}
 .sh-nav{gap:10px;font-size:.875rem;width:100%}.sh-nav a{min-height:40px;padding:5px 16px}
 .sh-hero{grid-template-columns:1fr;gap:28px;padding-block:29px 20px}
 .sh-eyebrow{font-size:.875rem;margin-bottom:18px;letter-spacing:.07em}
 .sh-hero h1{font-size:clamp(1.625rem,6.6vw,2.375rem);line-height:1.8;letter-spacing:.035em;margin-bottom:20px}
 .sh-lead{font-size:1rem;line-height:2}.sh-lead br{display:none}
 .sh-button{margin-top:24px;padding:14px 23px;font-size:.9375rem;gap:24px}
 .sh-hero-art{max-width:460px;width:100%;margin-inline:auto}.sh-hero-art::after{width:37px;height:37px;border-width:9px;right:1%;top:1%}.sh-hero-art figcaption{margin-top:10px}
 .sh-checks{padding-block:26px 32px;gap:18px}.sh-steps{grid-template-columns:1fr;gap:0}
 .sh-steps li{gap:19px;padding:17px 22px}.sh-steps span{font-size:.9375rem}.sh-steps strong{min-width:34px;height:32px;font-size:1.5rem}
 .sh-guides{padding-block:43px 48px}.sh-section-head{display:flex;flex-direction:column-reverse;align-items:start;gap:8px;margin-bottom:24px}
 .sh-section-head h2{font-size:1.5rem}.sh-section-head p{margin:0}
 .sh-cards .wp-block-post-template{grid-template-columns:1fr;gap:20px}.sh-card-content{padding:27px}
 .sh-card .wp-block-post-title{margin:17px 0;font-size:1.1875rem}.sh-card .wp-block-post-excerpt{margin-bottom:16px}
 .sh-editorial{grid-template-columns:1fr;gap:25px;padding:31px 25px 36px;margin-bottom:38px;border-radius:24px 24px 48px 24px}.sh-editorial h2{font-size:1.5rem}
 .sh-footer{flex-direction:column;align-items:start;gap:10px;padding-block:27px 32px}
 .sh-article{padding-block:25px 60px}.sh-article .wp-block-post-title{font-size:1.625rem}
 .sh-article .wp-block-post-content{font-size:1rem}.sh-article .wp-block-post-content h2{font-size:1.3125rem}
 .wp-block-table th,.wp-block-table td{padding:13px;min-width:130px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
