/* Definitive mobile layout repair */
@media screen and (max-width:800px){
 html,body{width:100% !important;max-width:100% !important;overflow-x:hidden !important;}
 html body *{box-sizing:border-box;}
 html body img{max-width:100%;}
 html body > main:first-of-type{width:100% !important;max-width:100% !important;overflow:hidden !important;}
 html body > main:first-of-type .site-header{position:absolute !important;inset:0 0 auto 0 !important;height:88px !important;padding:18px !important;display:block !important;background:rgba(244,242,237,.94) !important;border-bottom:1px solid rgba(41,42,39,.1) !important;}
 html body > main:first-of-type .site-header .brand{position:absolute !important;left:18px !important;right:auto !important;top:18px !important;display:flex !important;flex-direction:row !important;align-items:center !important;gap:10px !important;}
 html body > main:first-of-type .site-header .brand-mark{width:32px !important;height:32px !important;font-size:17px !important;}
 html body > main:first-of-type .site-header .brand span:last-child{writing-mode:horizontal-tb !important;text-orientation:mixed !important;font-size:16px !important;letter-spacing:.08em !important;white-space:nowrap !important;}
 html body > main:first-of-type .site-header nav{display:none !important;}
 html body > main:first-of-type section.hero{position:relative !important;display:block !important;width:100% !important;height:780px !important;min-height:0 !important;margin:0 !important;padding:0 !important;}
 html body > main:first-of-type section.hero > .hero-copy{position:absolute !important;left:22px !important;right:22px !important;top:122px !important;width:auto !important;max-width:none !important;height:auto !important;padding:0 !important;display:block !important;}
 html body > main:first-of-type section.hero > .hero-copy>*{position:static !important;width:auto !important;max-width:100% !important;}
 html body > main:first-of-type .hero-copy .eyebrow{margin:0 0 15px !important;font-size:9px !important;letter-spacing:.18em !important;}
 html body > main:first-of-type .hero-copy h1{margin:0 !important;font-size:38px !important;line-height:1.35 !important;letter-spacing:.04em !important;}
 html body > main:first-of-type .hero-copy h1 .headline-line{display:inline !important;white-space:normal !important;}
 html body > main:first-of-type .hero-copy .lead{margin:16px 0 12px !important;font-size:14px !important;line-height:1.85 !important;}
 html body > main:first-of-type .hero-copy .text-link{display:inline-flex !important;margin:0 !important;padding:8px 0 !important;font-size:13px !important;}
 html body > main:first-of-type section.hero > .hero-photo.hero-slides{position:absolute !important;top:auto !important;bottom:0 !important;left:12px !important;right:12px !important;width:auto !important;height:340px !important;min-height:0 !important;margin:0 !important;border-radius:50% 50% 22px 22px / 18% 18% 22px 22px !important;}
 html body > main:first-of-type .hero-slides .hero-slide{width:100% !important;height:100% !important;object-fit:cover !important;}
 html body > main:first-of-type .hero-slides .hero-slide:nth-child(1){object-position:center center !important;}
 html body > main:first-of-type .hero-slides .hero-slide:nth-child(2){object-position:58% center !important;}
 html body > main:first-of-type .hero-slides .hero-slide:nth-child(3){object-position:center center !important;}
 html body > main:first-of-type section.intro{position:relative !important;width:calc(100% - 24px) !important;max-width:none !important;min-height:720px !important;margin:78px 12px 0 !important;padding:82px 22px 280px !important;display:block !important;border-radius:90px 90px 26px 26px / 54px 54px 26px 26px !important;background:linear-gradient(180deg,rgba(244,242,237,.99) 0%,rgba(244,242,237,.96) 52%,rgba(244,242,237,.2) 74%),url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center bottom/auto 44% no-repeat !important;}
 html body > main:first-of-type section.intro::after{inset:12px !important;border-radius:78px 78px 20px 20px / 46px 46px 20px 20px !important;}
 html body > main:first-of-type .intro .section-number{display:block !important;margin:0 0 20px !important;font-size:10px !important;}
 html body > main:first-of-type .intro h2{margin:0 0 26px !important;font-size:31px !important;line-height:1.55 !important;letter-spacing:.03em !important;}
 html body > main:first-of-type .headline-line{white-space:normal !important;overflow-wrap:normal !important;}
 html body > main:first-of-type .intro-body{width:100% !important;max-width:none !important;}
 html body > main:first-of-type .intro-body p,html body > main:first-of-type .why-story>p,html body > main:first-of-type .message-intro,html body > main:first-of-type .donation-copy>p,html body > main:first-of-type .closing>p{font-size:15.5px !important;line-height:1.95 !important;}
 html body > main:first-of-type section.fukiyo-profile{width:calc(100% - 24px) !important;max-width:none !important;margin:72px 12px !important;padding:42px 22px 46px !important;display:block !important;border-radius:72px 24px 72px 24px !important;}
 html body > main:first-of-type .profile-label{width:100px !important;height:100px !important;margin:0 0 28px auto !important;}
 html body > main:first-of-type .profile-label span{font-size:15px !important;}
 html body > main:first-of-type .profile-copy h2{font-size:34px !important;}
 html body > main:first-of-type .profile-text{font-size:15.5px !important;line-height:1.95 !important;}
 html body > main:first-of-type .profile-likes{display:block !important;margin-top:24px !important;}
 html body > main:first-of-type .profile-likes dt{margin-bottom:12px !important;}
 html body > main:first-of-type .profile-likes dd{gap:7px !important;}
 html body > main:first-of-type section.why-knitting{width:calc(100% - 24px) !important;max-width:none !important;margin:92px 12px !important;padding:0 !important;display:block !important;}
 html body > main:first-of-type .why-knitting .knit-visual{width:100% !important;height:430px !important;margin:0 0 50px !important;border-radius:50% 50% 22px 22px / 18% 18% 22px 22px !important;}
 html body > main:first-of-type .why-topline{margin-bottom:18px !important;}
 html body > main:first-of-type .why-story h2{margin:0 0 30px !important;font-size:31px !important;line-height:1.55 !important;max-width:100% !important;}
 html body > main:first-of-type .why-story blockquote{margin:30px 0 !important;padding:18px 0 18px 20px !important;font-size:17px !important;line-height:1.85 !important;}
 html body > main:first-of-type section.mother-message{width:calc(100% - 24px) !important;max-width:none !important;margin:92px 12px !important;padding:58px 20px !important;border-radius:24px 78px 24px 78px !important;}
 html body > main:first-of-type .message-heading{display:block !important;margin-bottom:38px !important;}
 html body > main:first-of-type .message-heading h2{font-size:31px !important;line-height:1.5 !important;}
 html body > main:first-of-type .letter-placeholder{width:100% !important;min-height:440px !important;padding:32px 20px !important;overflow:hidden !important;}
 html body > main:first-of-type section.works{width:calc(100% - 32px) !important;max-width:none !important;margin:96px 16px !important;padding:0 !important;}
 html body > main:first-of-type .section-heading{display:block !important;margin-bottom:42px !important;}
 html body > main:first-of-type .section-heading h2{font-size:34px !important;}
 html body > main:first-of-type .work-grid{display:block !important;width:100% !important;}
 html body > main:first-of-type .work-card{width:100% !important;margin:0 0 52px !important;}
 html body > main:first-of-type .work-image{width:100% !important;min-height:330px !important;}
 html body > main:first-of-type .work-meta{display:grid !important;grid-template-columns:34px 1fr !important;gap:14px !important;}
 html body > main:first-of-type section.donation{width:calc(100% - 24px) !important;max-width:none !important;margin:96px 12px !important;padding:80px 24px 58px !important;display:block !important;border-radius:90px 90px 24px 24px / 50px 50px 24px 24px !important;}
 html body > main:first-of-type .donation-figure{margin:0 0 30px !important;}
 html body > main:first-of-type .donation-copy h2{font-size:30px !important;line-height:1.55 !important;}
 html body > main:first-of-type section.closing{width:100% !important;min-height:0 !important;padding:92px 22px !important;}
 html body > main:first-of-type .closing h2{font-size:31px !important;line-height:1.55 !important;}
 html body > main:first-of-type .site-footer{padding:68px 22px 46px !important;border-radius:74px 74px 0 0 / 34px 34px 0 0 !important;text-align:center !important;}
 html body > main:first-of-type .site-footer .brand{justify-content:center !important;}
}

/* Story heading readable Japanese wrapping */
html body > main:first-of-type .why-knitting{grid-template-columns:minmax(360px,42%) minmax(0,1fr) !important;gap:clamp(48px,5.5vw,76px) !important;}
html body > main:first-of-type .why-story h2{font-size:clamp(38px,3.7vw,50px) !important;line-height:1.55 !important;max-width:100% !important;}
html body > main:first-of-type .why-story h2 .headline-line{white-space:normal !important;overflow-wrap:anywhere !important;}
@media(max-width:800px){html body > main:first-of-type .why-knitting{display:block !important;}html body > main:first-of-type .why-story h2{font-size:34px !important;line-height:1.55 !important;}}

/* Final hero positioning specificity */
html body > main:first-of-type section.hero > .hero-photo.hero-slides{position:absolute !important;top:auto !important;bottom:0 !important;left:4vw !important;right:4vw !important;width:auto !important;height:650px !important;}
html body > main:first-of-type section.hero > .hero-copy{position:absolute !important;z-index:5 !important;}
@media(max-width:800px){html body > main:first-of-type section.hero > .hero-photo.hero-slides{position:absolute !important;top:auto !important;bottom:0 !important;left:14px !important;right:14px !important;height:410px !important;}}

/* Robust first-page hero and duplicate-document guard */
body > main:first-of-type .hero .hero-photo.hero-slides{top:auto !important;bottom:0 !important;left:4vw !important;right:4vw !important;width:auto !important;height:650px !important;}
body > main:first-of-type .hero .hero-copy{display:block !important;left:9vw !important;top:220px !important;width:min(520px,42vw) !important;}
body > main:first-of-type .hero .hero-copy>*{position:static !important;display:block !important;width:auto !important;max-width:520px !important;}
body > main:first-of-type .hero .hero-copy .text-link{display:inline-flex !important;}
body > main:first-of-type .hero-slides .hero-slide{opacity:1 !important;filter:opacity(0);animation:fukiyoHeroFade 16.5s infinite ease-in-out !important;}
body > main:first-of-type .hero-slides .hero-slide:nth-child(1){animation-delay:0s !important;}
body > main:first-of-type .hero-slides .hero-slide:nth-child(2){animation-delay:5.5s !important;}
body > main:first-of-type .hero-slides .hero-slide:nth-child(3){animation-delay:11s !important;}
body > main:first-of-type .hero-slide-dots{display:none !important;}
@keyframes fukiyoHeroFade{0%{filter:opacity(0)}5%{filter:opacity(1)}29%{filter:opacity(1)}35%{filter:opacity(0)}100%{filter:opacity(0)}}
@media(max-width:800px){
 body > main:first-of-type .hero .hero-photo.hero-slides{top:auto !important;bottom:0 !important;left:14px !important;right:14px !important;height:410px !important;}
 body > main:first-of-type .hero .hero-copy{left:24px !important;top:140px !important;width:calc(100% - 48px) !important;}
 body > main:first-of-type .hero .hero-copy>*{max-width:100% !important;}
}
@media(prefers-reduced-motion:reduce){body > main:first-of-type .hero-slides .hero-slide{animation:none !important;filter:opacity(0) !important;}body > main:first-of-type .hero-slides .hero-slide:first-child{filter:opacity(1) !important;}}

/* Hero composition refinement */
.hero-photo{top:auto !important;bottom:0 !important;}
.hero-copy{display:block !important;grid-template-columns:none !important;grid-template-rows:none !important;}
.hero-copy>*{position:static !important;grid-column:auto !important;grid-row:auto !important;width:auto !important;max-width:520px !important;}
.hero-copy .lead{display:block !important;margin:25px 0 20px !important;}
.hero-copy .text-link{display:inline-flex !important;margin-top:2px !important;}
@media(max-width:800px){.hero-photo{top:auto !important;bottom:0 !important;}.hero-copy>*{max-width:100% !important;}}

/* OUGIYA-inspired quiet Japanese modern redesign */
body > main ~ main{display:none !important;}
html{scroll-behavior:smooth;}
body{margin:0 !important;background:#f4f2ed !important;color:#292a27 !important;font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif !important;}
main{overflow:hidden !important;background:#f4f2ed !important;}
.site-header{position:absolute !important;inset:0 0 auto 0 !important;z-index:20 !important;height:230px !important;padding:42px 5.2vw !important;display:block !important;background:transparent !important;border:0 !important;}
.site-header .brand{position:absolute !important;right:5vw !important;top:40px !important;display:flex !important;flex-direction:column !important;align-items:center !important;gap:12px !important;color:#262724 !important;text-decoration:none !important;}
.site-header .brand-mark{width:32px !important;height:32px !important;display:grid !important;place-items:center !important;border-radius:50% !important;background:#66745f !important;color:#fff !important;font-size:18px !important;}
.site-header .brand span:last-child{writing-mode:vertical-rl !important;font-size:20px !important;letter-spacing:.16em !important;line-height:1.4 !important;}
.site-header nav{position:absolute !important;left:9vw !important;top:48px !important;height:142px !important;display:flex !important;flex-direction:row-reverse !important;align-items:flex-start !important;gap:38px !important;}
.site-header nav::before{content:"";display:block;width:1px;height:48px;background:#292a27;margin:4px 6px 0 0;}
.site-header nav a{writing-mode:vertical-rl !important;text-orientation:upright !important;color:#292a27 !important;text-decoration:none !important;font-size:14px !important;letter-spacing:.14em !important;line-height:1.8 !important;transition:opacity .3s ease !important;}
.site-header nav a:hover{opacity:.45 !important;}
.hero{position:relative !important;display:block !important;width:100% !important;height:1080px !important;min-height:0 !important;padding:0 !important;background:#f4f2ed !important;}
.hero-copy{position:absolute !important;z-index:5 !important;left:9vw !important;top:255px !important;width:min(520px,42vw) !important;padding:0 !important;color:#292a27 !important;}
.hero-copy .eyebrow{font-size:11px !important;letter-spacing:.23em !important;margin:0 0 22px !important;}
.hero-copy h1{margin:0 !important;font-size:clamp(48px,5.4vw,76px) !important;font-weight:400 !important;line-height:1.25 !important;letter-spacing:.06em !important;}
.hero-copy .lead{font-size:17px !important;line-height:2 !important;margin:25px 0 20px !important;}
.hero-copy .text-link{display:inline-flex !important;width:auto !important;padding:10px 2px !important;border:0 !important;border-bottom:1px solid #292a27 !important;border-radius:0 !important;color:#292a27 !important;background:transparent !important;font-size:14px !important;}
.hero-photo{position:absolute !important;z-index:1 !important;left:4vw !important;right:4vw !important;bottom:0 !important;width:auto !important;height:650px !important;margin:0 !important;border-radius:50% 50% 0 0 / 25% 25% 0 0 !important;overflow:hidden !important;box-shadow:none !important;background:#e6e1d8 !important;}
.hero-slides .hero-slide{width:100% !important;height:100% !important;object-fit:cover !important;}
.hero-slide-dots{bottom:32px !important;}
.intro{position:relative !important;width:min(1180px,92vw) !important;min-height:720px !important;margin:150px auto 0 !important;padding:130px clamp(42px,8vw,120px) 100px !important;display:grid !important;grid-template-columns:70px minmax(320px,520px) 1fr !important;grid-template-rows:auto auto !important;column-gap:3vw !important;align-content:center !important;border-radius:300px 300px 48px 48px / 160px 160px 48px 48px !important;background:linear-gradient(90deg,rgba(244,242,237,.98) 0%,rgba(244,242,237,.92) 37%,rgba(244,242,237,.25) 64%,rgba(244,242,237,0) 100%),url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center/cover no-repeat !important;box-shadow:none !important;}
.intro::after{inset:24px !important;border:1px solid rgba(255,255,255,.62) !important;border-radius:280px 280px 36px 36px / 145px 145px 36px 36px !important;}
.section-number{font-size:12px !important;letter-spacing:.18em !important;}
.intro h2,.why-story h2,.message-heading h2,.donation h2,.closing h2{font-weight:400 !important;letter-spacing:.05em !important;line-height:1.5 !important;}
.intro h2{font-size:clamp(38px,4vw,58px) !important;}
.intro-body p,.why-story>p,.message-intro,.donation-copy>p,.closing>p{font-size:17px !important;line-height:2.15 !important;}
.fukiyo-profile{width:min(1040px,88vw) !important;margin:150px auto !important;padding:74px clamp(42px,8vw,100px) !important;grid-template-columns:170px 1fr !important;gap:70px !important;background:#ecefe7 !important;border:0 !important;border-radius:180px 36px 180px 36px !important;box-shadow:none !important;}
.profile-label{width:145px !important;background:#f4f2ed !important;border:1px solid rgba(41,42,39,.12) !important;}
.profile-text{font-size:17px !important;line-height:2.1 !important;}
.why-knitting{width:min(1180px,90vw) !important;margin:170px auto !important;padding:0 !important;display:grid !important;grid-template-columns:minmax(360px,.9fr) minmax(380px,1fr) !important;gap:clamp(60px,9vw,130px) !important;align-items:center !important;background:transparent !important;}
.why-knitting .knit-visual{height:760px !important;border-radius:50% 50% 32px 32px / 24% 24% 32px 32px !important;box-shadow:none !important;overflow:hidden !important;}
.why-knitting .knit-visual img{width:100% !important;height:100% !important;object-fit:cover !important;}
.why-story h2{font-size:clamp(40px,4.3vw,62px) !important;margin:28px 0 38px !important;}
.why-story blockquote{margin:38px 0 !important;padding:24px 0 24px 30px !important;border-left:1px solid #66745f !important;font-size:20px !important;line-height:2 !important;}
.mother-message{width:min(1120px,90vw) !important;margin:170px auto !important;padding:100px clamp(38px,7vw,90px) !important;background:#ebe7df !important;border-radius:44px 240px 44px 240px !important;}
.message-heading{margin-bottom:60px !important;}
.letter-placeholder{border:0 !important;border-radius:2px !important;background:#faf9f6 !important;box-shadow:0 30px 70px rgba(60,50,40,.08) !important;}
.works{width:min(1180px,90vw) !important;margin:180px auto !important;padding:0 !important;}
.section-heading{margin-bottom:70px !important;}
.work-grid{gap:42px !important;}
.work-card{background:transparent !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;}
.work-image{border-radius:50% 50% 18px 18px / 22% 22% 18px 18px !important;background:#e5e2da !important;}
.work-meta{padding:24px 2px !important;border-top:1px solid rgba(41,42,39,.18) !important;}
.donation{width:min(1180px,92vw) !important;margin:180px auto !important;padding:110px clamp(42px,8vw,110px) !important;border-radius:300px 300px 40px 40px / 150px 150px 40px 40px !important;background:#dfe5dc !important;color:#2f342e !important;}
.donation-figure strong{font-weight:400 !important;}
.closing{min-height:520px !important;padding:150px 24px !important;background:#f4f2ed !important;text-align:center !important;}
.site-footer{padding:80px 6vw !important;background:#292d29 !important;color:#f4f2ed !important;border-radius:220px 220px 0 0 / 90px 90px 0 0 !important;}
@media(max-width:800px){
 .site-header{position:absolute !important;height:104px !important;padding:22px 20px !important;border-bottom:1px solid rgba(41,42,39,.1) !important;}
 .site-header .brand{left:20px !important;right:auto !important;top:22px !important;flex-direction:row !important;}
 .site-header .brand span:last-child{writing-mode:horizontal-tb !important;font-size:16px !important;}
 .site-header nav{left:auto !important;right:14px !important;top:24px !important;height:auto !important;max-width:52vw !important;display:flex !important;flex-wrap:wrap !important;justify-content:flex-end !important;gap:8px 14px !important;}
 .site-header nav::before{display:none !important;}
 .site-header nav a{writing-mode:horizontal-tb !important;text-orientation:mixed !important;font-size:10px !important;letter-spacing:.04em !important;}
 .hero{height:820px !important;}
 .hero-copy{left:24px !important;top:145px !important;width:calc(100% - 48px) !important;}
 .hero-copy h1{font-size:44px !important;}
 .hero-copy .lead{font-size:15px !important;}
 .hero-photo{left:14px !important;right:14px !important;height:410px !important;border-radius:50% 50% 0 0 / 18% 18% 0 0 !important;}
 .intro{width:calc(100% - 28px) !important;min-height:780px !important;margin-top:90px !important;padding:100px 28px 330px !important;display:block !important;border-radius:120px 120px 30px 30px / 70px 70px 30px 30px !important;background:linear-gradient(180deg,rgba(244,242,237,.98) 0%,rgba(244,242,237,.93) 50%,rgba(244,242,237,.12) 72%),url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center bottom/auto 48% no-repeat !important;}
 .intro h2{font-size:36px !important;}
 .fukiyo-profile{width:calc(100% - 32px) !important;margin:80px auto !important;padding:46px 28px !important;display:block !important;border-radius:90px 28px 90px 28px !important;}
 .profile-label{width:108px !important;margin:0 0 30px auto !important;}
 .why-knitting{width:calc(100% - 32px) !important;margin:100px auto !important;display:block !important;}
 .why-knitting .knit-visual{height:520px !important;margin-bottom:58px !important;border-radius:50% 50% 24px 24px / 22% 22% 24px 24px !important;}
 .why-story h2{font-size:36px !important;}
 .mother-message{width:calc(100% - 28px) !important;margin:100px auto !important;padding:70px 24px !important;border-radius:28px 100px 28px 100px !important;}
 .works{margin:100px auto !important;}
 .work-grid{display:block !important;}
 .work-card{margin-bottom:60px !important;}
 .donation{width:calc(100% - 28px) !important;margin:100px auto !important;padding:90px 28px 60px !important;border-radius:120px 120px 28px 28px / 65px 65px 28px 28px !important;}
 .closing{min-height:auto !important;padding:100px 24px !important;}
 .site-footer{border-radius:100px 100px 0 0 / 45px 45px 0 0 !important;}
}

/* Gentle hero slideshow */
.hero-slides {
  position:relative !important;
  overflow:hidden !important;
  background:#e9e2d8;
}
.hero-slides .hero-slide {
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  opacity:0 !important;
  transition:opacity 1.6s ease !important;
  transform:none !important;
}
.hero-slides .hero-slide.is-active { opacity:1 !important; }
.hero-slide-dots {
  position:absolute;
  z-index:3;
  left:50%;
  bottom:28px;
  display:flex;
  gap:9px;
  transform:translateX(-50%);
}
.hero-slide-dots span {
  width:7px;
  height:7px;
  border-radius:999px;
  background:rgba(255,255,255,.58);
  box-shadow:0 0 0 1px rgba(70,55,40,.08);
  transition:width .5s ease,background .5s ease;
}
.hero-slide-dots span.is-active { width:24px; background:#fff; }
@media (max-width:800px){
  .hero-slide-dots{bottom:18px;}
  .hero-slides .hero-slide:nth-child(2){object-position:58% center !important;}
  .hero-slides .hero-slide:nth-child(3){object-position:center center !important;}
}
@media (prefers-reduced-motion:reduce){.hero-slides .hero-slide{transition:none !important;}}
/*
 * ふきよの手しごと：直接調整用CSS
 *
 * 今後の文字サイズ・改行・余白などの調整は、このファイルだけを編集します。
 * WordPress管理画面：外観 → テーマファイルエディター → custom.css
 * style.css本体を触らずに調整でき、保存後はキャッシュ用の番号も自動更新されます。
 */

/* 見出し：句読点で分けたまとまりの途中では改行しない */
.headline-line {
  display: inline-block;
  white-space: nowrap;
}

/* PC：見出しの大きさを抑え、不自然な位置で切れないようにする */
h1 {
  font-size: clamp(50px, 5.4vw, 82px);
}

h2 {
  font-size: clamp(32px, 3.4vw, 50px);
  letter-spacing: .04em;
}

/* 本文：全体を一段階大きくして読みやすくする */
.lead {
  font-size: 17px;
  line-height: 2.15;
}

.intro-body {
  max-width: 600px;
  font-size: 17px;
  line-height: 2.1;
  letter-spacing: .045em;
}

.why-story > p {
  max-width: 700px;
  font-size: 16px;
  line-height: 2.1;
  letter-spacing: .04em;
}


/* Gentle handwork photo in the intro section */
.intro {
  grid-template-columns:80px minmax(250px,.9fr) minmax(290px,1.05fr) minmax(280px,.9fr);
  gap:3vw;
  align-items:center;
}
.intro-photo {
  width:100%;
  max-width:360px;
  margin:0;
  aspect-ratio:4/3;
  overflow:hidden;
  border-radius:48% 52% 47% 53% / 50% 46% 54% 50%;
  box-shadow:0 0 0 9px rgba(255,255,255,.55), 0 22px 48px rgba(71,65,56,.14);
  transform:rotate(-1.5deg);
}
.intro-photo img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
}
@media (max-width:1100px) and (min-width:801px) {
  .intro { grid-template-columns:70px minmax(0,1fr) minmax(0,1fr); }
  .intro-photo { grid-column:2 / -1; width:min(100%,520px); max-width:none; margin:30px auto 0; }
}
@media (max-width:800px) {
  .intro { display:block; }
  .intro-photo {
    width:min(92%,430px);
    max-width:none;
    margin:40px auto 0;
    aspect-ratio:3/2;
    border-radius:48% 52% 47% 53% / 50% 46% 54% 50%;
    box-shadow:0 0 0 7px rgba(255,255,255,.55), 0 18px 38px rgba(71,65,56,.13);
  }
}


/* Compact hero link button */
.hero .text-link {
  width:fit-content;
  min-width:220px;
  align-self:flex-start;
  justify-content:center;
  padding-left:28px;
  padding-right:28px;
}
@media (max-width:800px) {
  .hero .text-link { min-width:190px; }
}

.message-intro,
.section-heading > p {
  font-size: 15px;
  line-height: 2;
}

.work-meta p {
  font-size: 13px;
  line-height: 1.85;
  color: #5e625a;
}

.donation h2 {
  font-size: clamp(32px, 3.3vw, 48px);
}

.donation-copy > p:last-child {
  max-width: 690px;
  font-size: 16px;
  line-height: 2.05;
  color: #f0f3ed;
}

.closing > p:last-child {
  font-size: 15px;
}

.site-footer p {
  font-size: 12px;
  color: #d0d3cb;
}

/* やさしい印象をつくる丸み */
.hero-photo {
  border-radius: 0 0 38px 38px;
}

.knit-visual {
  width: calc(100% - 8vw);
  margin: 4vw auto 0;
  border-radius: 34px;
  box-shadow: 0 18px 45px rgba(52, 54, 47, .12);
}

.letter-placeholder {
  border-radius: 28px;
}

.work-card {
  overflow: hidden;
  border-radius: 26px;
  box-shadow: 0 12px 32px rgba(52, 54, 47, .08);
}

.work-image {
  border-radius: 26px 26px 0 0;
}

.donation {
  margin: 0 3vw;
  border-radius: 38px;
}

.text-link {
  display: inline-flex;
  align-items: center;
  min-height: 46px;
  padding: 0 22px;
  border: 1px solid rgba(52, 54, 47, .55);
  border-radius: 999px;
}

.text-link span {
  padding-left: 26px;
}

.closing {
  margin: 3vw;
  border-radius: 38px;
}

/* スマホ：現在の自然な改行と見切れ防止を維持 */
@media (max-width: 800px) {
  h1 .headline-line,
  h2 .headline-line {
    display: block;
    white-space: nowrap;
  }

  .donation h2 {
    font-size: clamp(19px, 5.5vw, 25px);
    letter-spacing: .02em;
  }

  .hero-photo {
    border-radius: 0 0 24px 24px;
  }

  .knit-visual {
    width: calc(100% - 8vw);
    margin-top: 6vw;
    border-radius: 24px;
  }

  .letter-placeholder,
  .work-card {
    border-radius: 22px;
  }

  .work-image {
    border-radius: 22px 22px 0 0;
  }

  .donation,
  .closing {
    margin: 4vw;
    border-radius: 26px;
  }
}
/* Background balance refinement */
.hero-photo { border-radius:0; }
.why-knitting { padding:4vw 0; }
.knit-visual { margin:0 auto; box-shadow:0 14px 34px rgba(52,54,47,.10); }
.donation { margin:3vw 4vw 0; border-radius:34px; }
.closing { margin:2vw 4vw 4vw; border:1px solid rgba(83,96,77,.08); border-radius:34px; }
@media (max-width:800px) {
  .hero-photo { border-radius:0; }
  .why-knitting { padding:4vw 0; }
  .knit-visual { margin:0 auto; }
  .donation { margin:4vw 4vw 0; border-radius:24px; }
  .closing { margin:3vw 4vw 4vw; border-radius:24px; }
}


/* Korean-inspired story layout */
.why-knitting {
  padding:110px 7vw;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:7vw;
  align-items:center;
  background:#f3efe5;
}
.why-knitting .knit-visual {
  width:100%;
  margin:0;
  aspect-ratio:4/5;
  border-radius:34px;
  box-shadow:0 22px 55px rgba(64,60,52,.13);
}
.why-knitting .knit-visual > img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
.why-knitting .knit-visual > p {
  left:28px;
  bottom:26px;
  padding:9px 14px;
  border-radius:999px;
  background:rgba(251,250,245,.82);
  color:#53604d;
  text-shadow:none;
  backdrop-filter:blur(8px);
}
.why-knitting .why-story {
  padding:68px 0;
  background:transparent;
}
.why-knitting .why-topline {
  gap:28px;
  align-items:center;
}
.why-knitting .why-story h2 {
  margin:38px 0 40px;
  font-size:clamp(34px,3.5vw,50px);
  line-height:1.55;
}
@media (max-width:800px) {
  .why-knitting { padding:72px 6vw 84px; display:block; }
  .why-knitting .knit-visual { aspect-ratio:3/2; border-radius:24px; }
  .why-knitting .why-story { padding:58px 2vw 0; }
  .why-knitting .why-story h2 { margin:30px 0 34px; font-size:clamp(26px,7vw,31px); }
}

/* Korean-inspired story layout */
.why-knitting {
  padding:110px 7vw;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:7vw;
  align-items:center;
  background:#f3efe5;
}
.why-knitting .knit-visual {
  width:100%;
  margin:0;
  aspect-ratio:4/5;
  border-radius:34px;
  box-shadow:0 22px 55px rgba(64,60,52,.13);
}
.why-knitting .knit-visual > img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
.why-knitting .knit-visual > p {
  left:28px;
  bottom:26px;
  padding:9px 14px;
  border-radius:999px;
  background:rgba(251,250,245,.82);
  color:#53604d;
  text-shadow:none;
  backdrop-filter:blur(8px);
}
.why-knitting .why-story {
  padding:68px 0;
  background:transparent;
}
.why-knitting .why-topline {
  gap:28px;
  align-items:center;
}
.why-knitting .why-story h2 {
  margin:38px 0 40px;
  font-size:clamp(34px,3.5vw,50px);
  line-height:1.55;
}
@media (max-width:800px) {
  .why-knitting { padding:72px 6vw 84px; display:block; }
  .why-knitting .knit-visual { aspect-ratio:3/2; border-radius:24px; }
  .why-knitting .why-story { padding:58px 2vw 0; }
  .why-knitting .why-story h2 { margin:30px 0 34px; font-size:clamp(26px,7vw,31px); }
}


/* Soft Korean-style arched photo frame */
.why-knitting .knit-visual {
  border-radius:48% 52% 34px 40px / 22% 18% 34px 40px;
  box-shadow:0 0 0 10px rgba(255,255,255,.46), 0 24px 58px rgba(64,60,52,.14);
}
.why-knitting .knit-visual > img { border-radius:inherit; }
@media (max-width:800px) {
  .why-knitting .knit-visual {
    border-radius:46% 54% 24px 30px / 18% 22% 24px 30px;
    box-shadow:0 0 0 7px rgba(255,255,255,.46), 0 18px 42px rgba(64,60,52,.13);
  }
}


/* Refined cute symmetrical arch */
.why-knitting .knit-visual {
  border-radius:50% 50% 32px 32px / 24% 24% 32px 32px;
}
@media (max-width:800px) {
  .why-knitting .knit-visual {
    border-radius:50% 50% 24px 24px / 30% 30% 24px 24px;
  }
}


/* Rounder arch refinement */
.why-knitting .knit-visual {
  border-radius:50% 50% 32px 32px / 40% 40% 32px 32px;
}
@media (max-width:800px) {
  .why-knitting .knit-visual {
    border-radius:50% 50% 24px 24px / 62% 62% 24px 24px;
  }
}

/* Intro photo as a soft full-width background */
.intro {
  min-height:680px;
  grid-template-columns:80px minmax(360px,520px) 1fr;
  grid-template-rows:auto auto;
  column-gap:3vw;
  row-gap:24px;
  align-content:center;
  align-items:start;
  overflow:hidden;
  position:relative;
  background:
    linear-gradient(90deg, rgba(243,239,229,.99) 0%, rgba(243,239,229,.97) 37%, rgba(243,239,229,.78) 50%, rgba(243,239,229,.14) 68%, rgba(243,239,229,0) 100%),
    url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center 54% / cover no-repeat;
}
.intro::after {
  content:"";
  position:absolute;
  inset:22px;
  border:1px solid rgba(255,255,255,.48);
  border-radius:42px 42px 120px 42px;
  pointer-events:none;
}
.intro > * { position:relative; z-index:1; }
.intro > .section-number { grid-column:1; grid-row:1 / span 2; }
.intro > div:nth-child(2) { grid-column:2; grid-row:1; }
.intro > .intro-body { grid-column:2; grid-row:2; max-width:520px; }
.intro > .intro-photo { display:none; }

.fukiyo-profile {
  width:min(1080px, calc(100% - 48px));
  margin:56px auto 112px;
  padding:54px clamp(32px,6vw,82px);
  display:grid;
  grid-template-columns:190px 1fr;
  gap:clamp(32px,6vw,76px);
  align-items:center;
  background:#f7f1e8;
  border:1px solid rgba(111,95,72,.12);
  border-radius:44px 110px 44px 110px;
  box-shadow:0 24px 60px rgba(85,68,47,.08);
}
.profile-label {
  width:154px;
  aspect-ratio:1;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:8px;
  border-radius:50% 46% 52% 43%;
  background:#dce3d4;
  color:#55604f;
  transform:rotate(-3deg);
}
.profile-label span { font-family:serif; font-size:21px; letter-spacing:.16em; }
.profile-label small { font-size:12px; }
.profile-copy h2 { margin:4px 0 8px; font-size:clamp(34px,4vw,52px); font-weight:500; }
.profile-born { margin:0 0 22px; color:#73695d; letter-spacing:.08em; }
.profile-text { max-width:650px; margin:0; font-size:17px; line-height:2; }
.profile-likes { display:flex; align-items:center; gap:18px; margin:28px 0 0; }
.profile-likes dt { font-size:13px; letter-spacing:.12em; color:#756b60; }
.profile-likes dd { display:flex; flex-wrap:wrap; gap:9px; margin:0; }
.profile-likes dd span { padding:8px 17px; border-radius:999px; background:#fffaf3; border:1px solid rgba(111,95,72,.14); font-size:14px; }

@media (max-width:800px) {
  .intro {
    display:block;
    min-height:720px;
    padding-bottom:300px;
    background:
      linear-gradient(180deg, rgba(243,239,229,.98) 0%, rgba(243,239,229,.92) 47%, rgba(243,239,229,.18) 68%, rgba(243,239,229,0) 100%),
      url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center bottom / auto 52% no-repeat;
  }
  .intro::after { inset:14px; border-radius:30px 30px 72px 30px; }
  .intro > .intro-photo { display:none; }
  .fukiyo-profile {
    width:calc(100% - 32px);
    margin:32px auto 72px;
    padding:38px 26px 42px;
    display:block;
    border-radius:32px 76px 32px 76px;
  }
  .profile-label { width:112px; margin:0 0 28px auto; }
  .profile-label span { font-size:17px; }
  .profile-copy h2 { font-size:38px; }
  .profile-text { font-size:16px; line-height:1.9; }
  .profile-likes { align-items:flex-start; flex-direction:column; gap:12px; }
}


/* Intro photo visibility final override */
.intro {
  min-height:680px !important;
  position:relative;
  background:linear-gradient(90deg,rgba(243,239,229,.99) 0%,rgba(243,239,229,.95) 34%,rgba(243,239,229,.60) 47%,rgba(243,239,229,.08) 62%,rgba(243,239,229,0) 100%),url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center 54% / cover no-repeat !important;
}
@media (max-width:800px){.intro{min-height:720px !important;padding-bottom:300px !important;background:linear-gradient(180deg,rgba(243,239,229,.98) 0%,rgba(243,239,229,.90) 45%,rgba(243,239,229,.12) 66%,rgba(243,239,229,0) 100%),url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center bottom / auto 52% no-repeat !important;}}


/* Intro photo visibility final override */
.intro {
  min-height:680px !important;
  position:relative;
  background:linear-gradient(90deg,rgba(243,239,229,.99) 0%,rgba(243,239,229,.95) 34%,rgba(243,239,229,.60) 47%,rgba(243,239,229,.08) 62%,rgba(243,239,229,0) 100%),url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center 54% / cover no-repeat !important;
}
@media (max-width:800px){.intro{min-height:720px !important;padding-bottom:300px !important;background:linear-gradient(180deg,rgba(243,239,229,.98) 0%,rgba(243,239,229,.90) 45%,rgba(243,239,229,.12) 66%,rgba(243,239,229,0) 100%),url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center bottom / auto 52% no-repeat !important;}}
/*
 * ふきよの手しごと：直接調整用CSS
 *
 * 今後の文字サイズ・改行・余白などの調整は、このファイルだけを編集します。
 * WordPress管理画面：外観 → テーマファイルエディター → custom.css
 * style.css本体を触らずに調整でき、保存後はキャッシュ用の番号も自動更新されます。
 */

/* 見出し：句読点で分けたまとまりの途中では改行しない */
.headline-line {
  display: inline-block;
  white-space: nowrap;
}

/* PC：見出しの大きさを抑え、不自然な位置で切れないようにする */
h1 {
  font-size: clamp(50px, 5.4vw, 82px);
}

h2 {
  font-size: clamp(32px, 3.4vw, 50px);
  letter-spacing: .04em;
}

/* 本文：全体を一段階大きくして読みやすくする */
.lead {
  font-size: 17px;
  line-height: 2.15;
}

.intro-body {
  max-width: 600px;
  font-size: 17px;
  line-height: 2.1;
  letter-spacing: .045em;
}

.why-story > p {
  max-width: 700px;
  font-size: 16px;
  line-height: 2.1;
  letter-spacing: .04em;
}


/* Gentle handwork photo in the intro section */
.intro {
  grid-template-columns:80px minmax(250px,.9fr) minmax(290px,1.05fr) minmax(280px,.9fr);
  gap:3vw;
  align-items:center;
}
.intro-photo {
  width:100%;
  max-width:360px;
  margin:0;
  aspect-ratio:4/3;
  overflow:hidden;
  border-radius:48% 52% 47% 53% / 50% 46% 54% 50%;
  box-shadow:0 0 0 9px rgba(255,255,255,.55), 0 22px 48px rgba(71,65,56,.14);
  transform:rotate(-1.5deg);
}
.intro-photo img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
}
@media (max-width:1100px) and (min-width:801px) {
  .intro { grid-template-columns:70px minmax(0,1fr) minmax(0,1fr); }
  .intro-photo { grid-column:2 / -1; width:min(100%,520px); max-width:none; margin:30px auto 0; }
}
@media (max-width:800px) {
  .intro { display:block; }
  .intro-photo {
    width:min(92%,430px);
    max-width:none;
    margin:40px auto 0;
    aspect-ratio:3/2;
    border-radius:48% 52% 47% 53% / 50% 46% 54% 50%;
    box-shadow:0 0 0 7px rgba(255,255,255,.55), 0 18px 38px rgba(71,65,56,.13);
  }
}


/* Compact hero link button */
.hero .text-link {
  width:fit-content;
  min-width:220px;
  align-self:flex-start;
  justify-content:center;
  padding-left:28px;
  padding-right:28px;
}
@media (max-width:800px) {
  .hero .text-link { min-width:190px; }
}

.message-intro,
.section-heading > p {
  font-size: 15px;
  line-height: 2;
}

.work-meta p {
  font-size: 13px;
  line-height: 1.85;
  color: #5e625a;
}

.donation h2 {
  font-size: clamp(32px, 3.3vw, 48px);
}

.donation-copy > p:last-child {
  max-width: 690px;
  font-size: 16px;
  line-height: 2.05;
  color: #f0f3ed;
}

.closing > p:last-child {
  font-size: 15px;
}

.site-footer p {
  font-size: 12px;
  color: #d0d3cb;
}

/* やさしい印象をつくる丸み */
.hero-photo {
  border-radius: 0 0 38px 38px;
}

.knit-visual {
  width: calc(100% - 8vw);
  margin: 4vw auto 0;
  border-radius: 34px;
  box-shadow: 0 18px 45px rgba(52, 54, 47, .12);
}

.letter-placeholder {
  border-radius: 28px;
}

.work-card {
  overflow: hidden;
  border-radius: 26px;
  box-shadow: 0 12px 32px rgba(52, 54, 47, .08);
}

.work-image {
  border-radius: 26px 26px 0 0;
}

.donation {
  margin: 0 3vw;
  border-radius: 38px;
}

.text-link {
  display: inline-flex;
  align-items: center;
  min-height: 46px;
  padding: 0 22px;
  border: 1px solid rgba(52, 54, 47, .55);
  border-radius: 999px;
}

.text-link span {
  padding-left: 26px;
}

.closing {
  margin: 3vw;
  border-radius: 38px;
}

/* スマホ：現在の自然な改行と見切れ防止を維持 */
@media (max-width: 800px) {
  h1 .headline-line,
  h2 .headline-line {
    display: block;
    white-space: nowrap;
  }

  .donation h2 {
    font-size: clamp(19px, 5.5vw, 25px);
    letter-spacing: .02em;
  }

  .hero-photo {
    border-radius: 0 0 24px 24px;
  }

  .knit-visual {
    width: calc(100% - 8vw);
    margin-top: 6vw;
    border-radius: 24px;
  }

  .letter-placeholder,
  .work-card {
    border-radius: 22px;
  }

  .work-image {
    border-radius: 22px 22px 0 0;
  }

  .donation,
  .closing {
    margin: 4vw;
    border-radius: 26px;
  }
}
/* Background balance refinement */
.hero-photo { border-radius:0; }
.why-knitting { padding:4vw 0; }
.knit-visual { margin:0 auto; box-shadow:0 14px 34px rgba(52,54,47,.10); }
.donation { margin:3vw 4vw 0; border-radius:34px; }
.closing { margin:2vw 4vw 4vw; border:1px solid rgba(83,96,77,.08); border-radius:34px; }
@media (max-width:800px) {
  .hero-photo { border-radius:0; }
  .why-knitting { padding:4vw 0; }
  .knit-visual { margin:0 auto; }
  .donation { margin:4vw 4vw 0; border-radius:24px; }
  .closing { margin:3vw 4vw 4vw; border-radius:24px; }
}


/* Korean-inspired story layout */
.why-knitting {
  padding:110px 7vw;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:7vw;
  align-items:center;
  background:#f3efe5;
}
.why-knitting .knit-visual {
  width:100%;
  margin:0;
  aspect-ratio:4/5;
  border-radius:34px;
  box-shadow:0 22px 55px rgba(64,60,52,.13);
}
.why-knitting .knit-visual > img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
.why-knitting .knit-visual > p {
  left:28px;
  bottom:26px;
  padding:9px 14px;
  border-radius:999px;
  background:rgba(251,250,245,.82);
  color:#53604d;
  text-shadow:none;
  backdrop-filter:blur(8px);
}
.why-knitting .why-story {
  padding:68px 0;
  background:transparent;
}
.why-knitting .why-topline {
  gap:28px;
  align-items:center;
}
.why-knitting .why-story h2 {
  margin:38px 0 40px;
  font-size:clamp(34px,3.5vw,50px);
  line-height:1.55;
}
@media (max-width:800px) {
  .why-knitting { padding:72px 6vw 84px; display:block; }
  .why-knitting .knit-visual { aspect-ratio:3/2; border-radius:24px; }
  .why-knitting .why-story { padding:58px 2vw 0; }
  .why-knitting .why-story h2 { margin:30px 0 34px; font-size:clamp(26px,7vw,31px); }
}

/* Korean-inspired story layout */
.why-knitting {
  padding:110px 7vw;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:7vw;
  align-items:center;
  background:#f3efe5;
}
.why-knitting .knit-visual {
  width:100%;
  margin:0;
  aspect-ratio:4/5;
  border-radius:34px;
  box-shadow:0 22px 55px rgba(64,60,52,.13);
}
.why-knitting .knit-visual > img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
.why-knitting .knit-visual > p {
  left:28px;
  bottom:26px;
  padding:9px 14px;
  border-radius:999px;
  background:rgba(251,250,245,.82);
  color:#53604d;
  text-shadow:none;
  backdrop-filter:blur(8px);
}
.why-knitting .why-story {
  padding:68px 0;
  background:transparent;
}
.why-knitting .why-topline {
  gap:28px;
  align-items:center;
}
.why-knitting .why-story h2 {
  margin:38px 0 40px;
  font-size:clamp(34px,3.5vw,50px);
  line-height:1.55;
}
@media (max-width:800px) {
  .why-knitting { padding:72px 6vw 84px; display:block; }
  .why-knitting .knit-visual { aspect-ratio:3/2; border-radius:24px; }
  .why-knitting .why-story { padding:58px 2vw 0; }
  .why-knitting .why-story h2 { margin:30px 0 34px; font-size:clamp(26px,7vw,31px); }
}


/* Soft Korean-style arched photo frame */
.why-knitting .knit-visual {
  border-radius:48% 52% 34px 40px / 22% 18% 34px 40px;
  box-shadow:0 0 0 10px rgba(255,255,255,.46), 0 24px 58px rgba(64,60,52,.14);
}
.why-knitting .knit-visual > img { border-radius:inherit; }
@media (max-width:800px) {
  .why-knitting .knit-visual {
    border-radius:46% 54% 24px 30px / 18% 22% 24px 30px;
    box-shadow:0 0 0 7px rgba(255,255,255,.46), 0 18px 42px rgba(64,60,52,.13);
  }
}


/* Refined cute symmetrical arch */
.why-knitting .knit-visual {
  border-radius:50% 50% 32px 32px / 24% 24% 32px 32px;
}
@media (max-width:800px) {
  .why-knitting .knit-visual {
    border-radius:50% 50% 24px 24px / 30% 30% 24px 24px;
  }
}


/* Rounder arch refinement */
.why-knitting .knit-visual {
  border-radius:50% 50% 32px 32px / 40% 40% 32px 32px;
}
@media (max-width:800px) {
  .why-knitting .knit-visual {
    border-radius:50% 50% 24px 24px / 62% 62% 24px 24px;
  }
}


/* Intro photo as a soft full-width background */
.intro {
  min-height:680px;
  grid-template-columns:80px minmax(360px,520px) 1fr;
  grid-template-rows:auto auto;
  column-gap:3vw;
  row-gap:24px;
  align-content:center;
  align-items:start;
  overflow:hidden;
  position:relative;
  background:
    linear-gradient(90deg, rgba(243,239,229,.99) 0%, rgba(243,239,229,.97) 37%, rgba(243,239,229,.78) 50%, rgba(243,239,229,.14) 68%, rgba(243,239,229,0) 100%),
    url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center 54% / cover no-repeat;
}
.intro::after {
  content:"";
  position:absolute;
  inset:22px;
  border:1px solid rgba(255,255,255,.48);
  border-radius:42px 42px 120px 42px;
  pointer-events:none;
}
.intro > * { position:relative; z-index:1; }
.intro > .section-number { grid-column:1; grid-row:1 / span 2; }
.intro > div:nth-child(2) { grid-column:2; grid-row:1; }
.intro > .intro-body { grid-column:2; grid-row:2; max-width:520px; }
.intro > .intro-photo { display:none; }

.fukiyo-profile {
  width:min(1080px, calc(100% - 48px));
  margin:56px auto 112px;
  padding:54px clamp(32px,6vw,82px);
  display:grid;
  grid-template-columns:190px 1fr;
  gap:clamp(32px,6vw,76px);
  align-items:center;
  background:#f7f1e8;
  border:1px solid rgba(111,95,72,.12);
  border-radius:44px 110px 44px 110px;
  box-shadow:0 24px 60px rgba(85,68,47,.08);
}
.profile-label {
  width:154px;
  aspect-ratio:1;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:8px;
  border-radius:50% 46% 52% 43%;
  background:#dce3d4;
  color:#55604f;
  transform:rotate(-3deg);
}
.profile-label span { font-family:serif; font-size:21px; letter-spacing:.16em; }
.profile-label small { font-size:12px; }
.profile-copy h2 { margin:4px 0 8px; font-size:clamp(34px,4vw,52px); font-weight:500; }
.profile-born { margin:0 0 22px; color:#73695d; letter-spacing:.08em; }
.profile-text { max-width:650px; margin:0; font-size:17px; line-height:2; }
.profile-likes { display:flex; align-items:center; gap:18px; margin:28px 0 0; }
.profile-likes dt { font-size:13px; letter-spacing:.12em; color:#756b60; }
.profile-likes dd { display:flex; flex-wrap:wrap; gap:9px; margin:0; }
.profile-likes dd span { padding:8px 17px; border-radius:999px; background:#fffaf3; border:1px solid rgba(111,95,72,.14); font-size:14px; }

@media (max-width:800px) {
  .intro {
    display:block;
    min-height:720px;
    padding-bottom:300px;
    background:
      linear-gradient(180deg, rgba(243,239,229,.98) 0%, rgba(243,239,229,.92) 47%, rgba(243,239,229,.18) 68%, rgba(243,239,229,0) 100%),
      url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center bottom / auto 52% no-repeat;
  }
  .intro::after { inset:14px; border-radius:30px 30px 72px 30px; }
  .intro > .intro-photo { display:none; }
  .fukiyo-profile {
    width:calc(100% - 32px);
    margin:32px auto 72px;
    padding:38px 26px 42px;
    display:block;
    border-radius:32px 76px 32px 76px;
  }
  .profile-label { width:112px; margin:0 0 28px auto; }
  .profile-label span { font-size:17px; }
  .profile-copy h2 { font-size:38px; }
  .profile-text { font-size:16px; line-height:1.9; }
  .profile-likes { align-items:flex-start; flex-direction:column; gap:12px; }
}
/*
 * ふきよの手しごと：直接調整用CSS
 *
 * 今後の文字サイズ・改行・余白などの調整は、このファイルだけを編集します。
 * WordPress管理画面：外観 → テーマファイルエディター → custom.css
 * style.css本体を触らずに調整でき、保存後はキャッシュ用の番号も自動更新されます。
 */

/* 見出し：句読点で分けたまとまりの途中では改行しない */
.headline-line {
  display: inline-block;
  white-space: nowrap;
}

/* PC：見出しの大きさを抑え、不自然な位置で切れないようにする */
h1 {
  font-size: clamp(50px, 5.4vw, 82px);
}

h2 {
  font-size: clamp(32px, 3.4vw, 50px);
  letter-spacing: .04em;
}

/* 本文：全体を一段階大きくして読みやすくする */
.lead {
  font-size: 17px;
  line-height: 2.15;
}

.intro-body {
  max-width: 600px;
  font-size: 17px;
  line-height: 2.1;
  letter-spacing: .045em;
}

.why-story > p {
  max-width: 700px;
  font-size: 16px;
  line-height: 2.1;
  letter-spacing: .04em;
}


/* Gentle handwork photo in the intro section */
.intro {
  grid-template-columns:80px minmax(250px,.9fr) minmax(290px,1.05fr) minmax(280px,.9fr);
  gap:3vw;
  align-items:center;
}
.intro-photo {
  width:100%;
  max-width:360px;
  margin:0;
  aspect-ratio:4/3;
  overflow:hidden;
  border-radius:48% 52% 47% 53% / 50% 46% 54% 50%;
  box-shadow:0 0 0 9px rgba(255,255,255,.55), 0 22px 48px rgba(71,65,56,.14);
  transform:rotate(-1.5deg);
}
.intro-photo img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
}
@media (max-width:1100px) and (min-width:801px) {
  .intro { grid-template-columns:70px minmax(0,1fr) minmax(0,1fr); }
  .intro-photo { grid-column:2 / -1; width:min(100%,520px); max-width:none; margin:30px auto 0; }
}
@media (max-width:800px) {
  .intro { display:block; }
  .intro-photo {
    width:min(92%,430px);
    max-width:none;
    margin:40px auto 0;
    aspect-ratio:3/2;
    border-radius:48% 52% 47% 53% / 50% 46% 54% 50%;
    box-shadow:0 0 0 7px rgba(255,255,255,.55), 0 18px 38px rgba(71,65,56,.13);
  }
}


/* Compact hero link button */
.hero .text-link {
  width:fit-content;
  min-width:220px;
  align-self:flex-start;
  justify-content:center;
  padding-left:28px;
  padding-right:28px;
}
@media (max-width:800px) {
  .hero .text-link { min-width:190px; }
}

.message-intro,
.section-heading > p {
  font-size: 15px;
  line-height: 2;
}

.work-meta p {
  font-size: 13px;
  line-height: 1.85;
  color: #5e625a;
}

.donation h2 {
  font-size: clamp(32px, 3.3vw, 48px);
}

.donation-copy > p:last-child {
  max-width: 690px;
  font-size: 16px;
  line-height: 2.05;
  color: #f0f3ed;
}

.closing > p:last-child {
  font-size: 15px;
}

.site-footer p {
  font-size: 12px;
  color: #d0d3cb;
}

/* やさしい印象をつくる丸み */
.hero-photo {
  border-radius: 0 0 38px 38px;
}

.knit-visual {
  width: calc(100% - 8vw);
  margin: 4vw auto 0;
  border-radius: 34px;
  box-shadow: 0 18px 45px rgba(52, 54, 47, .12);
}

.letter-placeholder {
  border-radius: 28px;
}

.work-card {
  overflow: hidden;
  border-radius: 26px;
  box-shadow: 0 12px 32px rgba(52, 54, 47, .08);
}

.work-image {
  border-radius: 26px 26px 0 0;
}

.donation {
  margin: 0 3vw;
  border-radius: 38px;
}

.text-link {
  display: inline-flex;
  align-items: center;
  min-height: 46px;
  padding: 0 22px;
  border: 1px solid rgba(52, 54, 47, .55);
  border-radius: 999px;
}

.text-link span {
  padding-left: 26px;
}

.closing {
  margin: 3vw;
  border-radius: 38px;
}

/* スマホ：現在の自然な改行と見切れ防止を維持 */
@media (max-width: 800px) {
  h1 .headline-line,
  h2 .headline-line {
    display: block;
    white-space: nowrap;
  }

  .donation h2 {
    font-size: clamp(19px, 5.5vw, 25px);
    letter-spacing: .02em;
  }

  .hero-photo {
    border-radius: 0 0 24px 24px;
  }

  .knit-visual {
    width: calc(100% - 8vw);
    margin-top: 6vw;
    border-radius: 24px;
  }

  .letter-placeholder,
  .work-card {
    border-radius: 22px;
  }

  .work-image {
    border-radius: 22px 22px 0 0;
  }

  .donation,
  .closing {
    margin: 4vw;
    border-radius: 26px;
  }
}
/* Background balance refinement */
.hero-photo { border-radius:0; }
.why-knitting { padding:4vw 0; }
.knit-visual { margin:0 auto; box-shadow:0 14px 34px rgba(52,54,47,.10); }
.donation { margin:3vw 4vw 0; border-radius:34px; }
.closing { margin:2vw 4vw 4vw; border:1px solid rgba(83,96,77,.08); border-radius:34px; }
@media (max-width:800px) {
  .hero-photo { border-radius:0; }
  .why-knitting { padding:4vw 0; }
  .knit-visual { margin:0 auto; }
  .donation { margin:4vw 4vw 0; border-radius:24px; }
  .closing { margin:3vw 4vw 4vw; border-radius:24px; }
}


/* Korean-inspired story layout */
.why-knitting {
  padding:110px 7vw;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:7vw;
  align-items:center;
  background:#f3efe5;
}
.why-knitting .knit-visual {
  width:100%;
  margin:0;
  aspect-ratio:4/5;
  border-radius:34px;
  box-shadow:0 22px 55px rgba(64,60,52,.13);
}
.why-knitting .knit-visual > img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
.why-knitting .knit-visual > p {
  left:28px;
  bottom:26px;
  padding:9px 14px;
  border-radius:999px;
  background:rgba(251,250,245,.82);
  color:#53604d;
  text-shadow:none;
  backdrop-filter:blur(8px);
}
.why-knitting .why-story {
  padding:68px 0;
  background:transparent;
}
.why-knitting .why-topline {
  gap:28px;
  align-items:center;
}
.why-knitting .why-story h2 {
  margin:38px 0 40px;
  font-size:clamp(34px,3.5vw,50px);
  line-height:1.55;
}
@media (max-width:800px) {
  .why-knitting { padding:72px 6vw 84px; display:block; }
  .why-knitting .knit-visual { aspect-ratio:3/2; border-radius:24px; }
  .why-knitting .why-story { padding:58px 2vw 0; }
  .why-knitting .why-story h2 { margin:30px 0 34px; font-size:clamp(26px,7vw,31px); }
}

/* Korean-inspired story layout */
.why-knitting {
  padding:110px 7vw;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:7vw;
  align-items:center;
  background:#f3efe5;
}
.why-knitting .knit-visual {
  width:100%;
  margin:0;
  aspect-ratio:4/5;
  border-radius:34px;
  box-shadow:0 22px 55px rgba(64,60,52,.13);
}
.why-knitting .knit-visual > img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
.why-knitting .knit-visual > p {
  left:28px;
  bottom:26px;
  padding:9px 14px;
  border-radius:999px;
  background:rgba(251,250,245,.82);
  color:#53604d;
  text-shadow:none;
  backdrop-filter:blur(8px);
}
.why-knitting .why-story {
  padding:68px 0;
  background:transparent;
}
.why-knitting .why-topline {
  gap:28px;
  align-items:center;
}
.why-knitting .why-story h2 {
  margin:38px 0 40px;
  font-size:clamp(34px,3.5vw,50px);
  line-height:1.55;
}
@media (max-width:800px) {
  .why-knitting { padding:72px 6vw 84px; display:block; }
  .why-knitting .knit-visual { aspect-ratio:3/2; border-radius:24px; }
  .why-knitting .why-story { padding:58px 2vw 0; }
  .why-knitting .why-story h2 { margin:30px 0 34px; font-size:clamp(26px,7vw,31px); }
}


/* Soft Korean-style arched photo frame */
.why-knitting .knit-visual {
  border-radius:48% 52% 34px 40px / 22% 18% 34px 40px;
  box-shadow:0 0 0 10px rgba(255,255,255,.46), 0 24px 58px rgba(64,60,52,.14);
}
.why-knitting .knit-visual > img { border-radius:inherit; }
@media (max-width:800px) {
  .why-knitting .knit-visual {
    border-radius:46% 54% 24px 30px / 18% 22% 24px 30px;
    box-shadow:0 0 0 7px rgba(255,255,255,.46), 0 18px 42px rgba(64,60,52,.13);
  }
}


/* Refined cute symmetrical arch */
.why-knitting .knit-visual {
  border-radius:50% 50% 32px 32px / 24% 24% 32px 32px;
}
@media (max-width:800px) {
  .why-knitting .knit-visual {
    border-radius:50% 50% 24px 24px / 30% 30% 24px 24px;
  }
}


/* Rounder arch refinement */
.why-knitting .knit-visual {
  border-radius:50% 50% 32px 32px / 40% 40% 32px 32px;
}
@media (max-width:800px) {
  .why-knitting .knit-visual {
    border-radius:50% 50% 24px 24px / 62% 62% 24px 24px;
  }
}


/* Intro photo as a soft full-width background */
.intro {
  min-height:620px;
  grid-template-columns:80px minmax(330px,520px) 1fr;
  grid-template-rows:auto auto;
  column-gap:3vw;
  row-gap:24px;
  align-content:center;
  align-items:start;
  overflow:hidden;
  background:
    linear-gradient(90deg, rgba(243,239,229,.99) 0%, rgba(243,239,229,.98) 43%, rgba(243,239,229,.82) 61%, rgba(243,239,229,.25) 100%),
    url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center 54% / cover no-repeat;
}
.intro > .section-number { grid-column:1; grid-row:1 / span 2; }
.intro > div:nth-child(2) { grid-column:2; grid-row:1; }
.intro > .intro-body { grid-column:2; grid-row:2; max-width:520px; }
.intro > .intro-photo { display:none; }
@media (max-width:800px) {
  .intro {
    display:block;
    min-height:auto;
    background:
      linear-gradient(rgba(243,239,229,.82), rgba(243,239,229,.88)),
      url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center center / cover no-repeat;
  }
  .intro > .intro-photo { display:none; }
}
/*
 * ふきよの手しごと：直接調整用CSS
 *
 * 今後の文字サイズ・改行・余白などの調整は、このファイルだけを編集します。
 * WordPress管理画面：外観 → テーマファイルエディター → custom.css
 * style.css本体を触らずに調整でき、保存後はキャッシュ用の番号も自動更新されます。
 */

/* 見出し：句読点で分けたまとまりの途中では改行しない */
.headline-line {
  display: inline-block;
  white-space: nowrap;
}

/* PC：見出しの大きさを抑え、不自然な位置で切れないようにする */
h1 {
  font-size: clamp(50px, 5.4vw, 82px);
}

h2 {
  font-size: clamp(32px, 3.4vw, 50px);
  letter-spacing: .04em;
}

/* 本文：全体を一段階大きくして読みやすくする */
.lead {
  font-size: 17px;
  line-height: 2.15;
}

.intro-body {
  max-width: 600px;
  font-size: 17px;
  line-height: 2.1;
  letter-spacing: .045em;
}

.why-story > p {
  max-width: 700px;
  font-size: 16px;
  line-height: 2.1;
  letter-spacing: .04em;
}


/* Gentle handwork photo in the intro section */
.intro {
  grid-template-columns:80px minmax(250px,.9fr) minmax(290px,1.05fr) minmax(280px,.9fr);
  gap:3vw;
  align-items:center;
}
.intro-photo {
  width:100%;
  max-width:360px;
  margin:0;
  aspect-ratio:4/3;
  overflow:hidden;
  border-radius:48% 52% 47% 53% / 50% 46% 54% 50%;
  box-shadow:0 0 0 9px rgba(255,255,255,.55), 0 22px 48px rgba(71,65,56,.14);
  transform:rotate(-1.5deg);
}
.intro-photo img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
}
@media (max-width:1100px) and (min-width:801px) {
  .intro { grid-template-columns:70px minmax(0,1fr) minmax(0,1fr); }
  .intro-photo { grid-column:2 / -1; width:min(100%,520px); max-width:none; margin:30px auto 0; }
}
@media (max-width:800px) {
  .intro { display:block; }
  .intro-photo {
    width:min(92%,430px);
    max-width:none;
    margin:40px auto 0;
    aspect-ratio:3/2;
    border-radius:48% 52% 47% 53% / 50% 46% 54% 50%;
    box-shadow:0 0 0 7px rgba(255,255,255,.55), 0 18px 38px rgba(71,65,56,.13);
  }
}


/* Compact hero link button */
.hero .text-link {
  width:fit-content;
  min-width:220px;
  align-self:flex-start;
  justify-content:center;
  padding-left:28px;
  padding-right:28px;
}
@media (max-width:800px) {
  .hero .text-link { min-width:190px; }
}

.message-intro,
.section-heading > p {
  font-size: 15px;
  line-height: 2;
}

.work-meta p {
  font-size: 13px;
  line-height: 1.85;
  color: #5e625a;
}

.donation h2 {
  font-size: clamp(32px, 3.3vw, 48px);
}

.donation-copy > p:last-child {
  max-width: 690px;
  font-size: 16px;
  line-height: 2.05;
  color: #f0f3ed;
}

.closing > p:last-child {
  font-size: 15px;
}

.site-footer p {
  font-size: 12px;
  color: #d0d3cb;
}

/* やさしい印象をつくる丸み */
.hero-photo {
  border-radius: 0 0 38px 38px;
}

.knit-visual {
  width: calc(100% - 8vw);
  margin: 4vw auto 0;
  border-radius: 34px;
  box-shadow: 0 18px 45px rgba(52, 54, 47, .12);
}

.letter-placeholder {
  border-radius: 28px;
}

.work-card {
  overflow: hidden;
  border-radius: 26px;
  box-shadow: 0 12px 32px rgba(52, 54, 47, .08);
}

.work-image {
  border-radius: 26px 26px 0 0;
}

.donation {
  margin: 0 3vw;
  border-radius: 38px;
}

.text-link {
  display: inline-flex;
  align-items: center;
  min-height: 46px;
  padding: 0 22px;
  border: 1px solid rgba(52, 54, 47, .55);
  border-radius: 999px;
}

.text-link span {
  padding-left: 26px;
}

.closing {
  margin: 3vw;
  border-radius: 38px;
}

/* スマホ：現在の自然な改行と見切れ防止を維持 */
@media (max-width: 800px) {
  h1 .headline-line,
  h2 .headline-line {
    display: block;
    white-space: nowrap;
  }

  .donation h2 {
    font-size: clamp(19px, 5.5vw, 25px);
    letter-spacing: .02em;
  }

  .hero-photo {
    border-radius: 0 0 24px 24px;
  }

  .knit-visual {
    width: calc(100% - 8vw);
    margin-top: 6vw;
    border-radius: 24px;
  }

  .letter-placeholder,
  .work-card {
    border-radius: 22px;
  }

  .work-image {
    border-radius: 22px 22px 0 0;
  }

  .donation,
  .closing {
    margin: 4vw;
    border-radius: 26px;
  }
}
/* Background balance refinement */
.hero-photo { border-radius:0; }
.why-knitting { padding:4vw 0; }
.knit-visual { margin:0 auto; box-shadow:0 14px 34px rgba(52,54,47,.10); }
.donation { margin:3vw 4vw 0; border-radius:34px; }
.closing { margin:2vw 4vw 4vw; border:1px solid rgba(83,96,77,.08); border-radius:34px; }
@media (max-width:800px) {
  .hero-photo { border-radius:0; }
  .why-knitting { padding:4vw 0; }
  .knit-visual { margin:0 auto; }
  .donation { margin:4vw 4vw 0; border-radius:24px; }
  .closing { margin:3vw 4vw 4vw; border-radius:24px; }
}


/* Korean-inspired story layout */
.why-knitting {
  padding:110px 7vw;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:7vw;
  align-items:center;
  background:#f3efe5;
}
.why-knitting .knit-visual {
  width:100%;
  margin:0;
  aspect-ratio:4/5;
  border-radius:34px;
  box-shadow:0 22px 55px rgba(64,60,52,.13);
}
.why-knitting .knit-visual > img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
.why-knitting .knit-visual > p {
  left:28px;
  bottom:26px;
  padding:9px 14px;
  border-radius:999px;
  background:rgba(251,250,245,.82);
  color:#53604d;
  text-shadow:none;
  backdrop-filter:blur(8px);
}
.why-knitting .why-story {
  padding:68px 0;
  background:transparent;
}
.why-knitting .why-topline {
  gap:28px;
  align-items:center;
}
.why-knitting .why-story h2 {
  margin:38px 0 40px;
  font-size:clamp(34px,3.5vw,50px);
  line-height:1.55;
}
@media (max-width:800px) {
  .why-knitting { padding:72px 6vw 84px; display:block; }
  .why-knitting .knit-visual { aspect-ratio:3/2; border-radius:24px; }
  .why-knitting .why-story { padding:58px 2vw 0; }
  .why-knitting .why-story h2 { margin:30px 0 34px; font-size:clamp(26px,7vw,31px); }
}

/* Korean-inspired story layout */
.why-knitting {
  padding:110px 7vw;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:7vw;
  align-items:center;
  background:#f3efe5;
}
.why-knitting .knit-visual {
  width:100%;
  margin:0;
  aspect-ratio:4/5;
  border-radius:34px;
  box-shadow:0 22px 55px rgba(64,60,52,.13);
}
.why-knitting .knit-visual > img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
.why-knitting .knit-visual > p {
  left:28px;
  bottom:26px;
  padding:9px 14px;
  border-radius:999px;
  background:rgba(251,250,245,.82);
  color:#53604d;
  text-shadow:none;
  backdrop-filter:blur(8px);
}
.why-knitting .why-story {
  padding:68px 0;
  background:transparent;
}
.why-knitting .why-topline {
  gap:28px;
  align-items:center;
}
.why-knitting .why-story h2 {
  margin:38px 0 40px;
  font-size:clamp(34px,3.5vw,50px);
  line-height:1.55;
}
@media (max-width:800px) {
  .why-knitting { padding:72px 6vw 84px; display:block; }
  .why-knitting .knit-visual { aspect-ratio:3/2; border-radius:24px; }
  .why-knitting .why-story { padding:58px 2vw 0; }
  .why-knitting .why-story h2 { margin:30px 0 34px; font-size:clamp(26px,7vw,31px); }
}


/* Soft Korean-style arched photo frame */
.why-knitting .knit-visual {
  border-radius:48% 52% 34px 40px / 22% 18% 34px 40px;
  box-shadow:0 0 0 10px rgba(255,255,255,.46), 0 24px 58px rgba(64,60,52,.14);
}
.why-knitting .knit-visual > img { border-radius:inherit; }
@media (max-width:800px) {
  .why-knitting .knit-visual {
    border-radius:46% 54% 24px 30px / 18% 22% 24px 30px;
    box-shadow:0 0 0 7px rgba(255,255,255,.46), 0 18px 42px rgba(64,60,52,.13);
  }
}


/* Refined cute symmetrical arch */
.why-knitting .knit-visual {
  border-radius:50% 50% 32px 32px / 24% 24% 32px 32px;
}
@media (max-width:800px) {
  .why-knitting .knit-visual {
    border-radius:50% 50% 24px 24px / 30% 30% 24px 24px;
  }
}


/* Rounder arch refinement */
.why-knitting .knit-visual {
  border-radius:50% 50% 32px 32px / 40% 40% 32px 32px;
}
@media (max-width:800px) {
  .why-knitting .knit-visual {
    border-radius:50% 50% 24px 24px / 62% 62% 24px 24px;
  }
}

/* FINAL HERO BALANCE 2026-09-08 */
html body > main:first-of-type section.hero {
  height: 1180px !important;
}
html body > main:first-of-type section.hero > .hero-copy {
  top: 220px !important;
  left: 9vw !important;
  width: min(520px, 42vw) !important;
}
html body > main:first-of-type section.hero > .hero-photo.hero-slides {
  left: 4vw !important;
  right: 4vw !important;
  bottom: 0 !important;
  height: 630px !important;
  border-radius: 50% 50% 30px 30px / 30% 30% 30px 30px !important;
}
@media screen and (max-width: 800px) {
  html body > main:first-of-type section.hero {
    height: 760px !important;
  }
  html body > main:first-of-type section.hero > .hero-copy {
    top: 118px !important;
    left: 22px !important;
    right: 22px !important;
    width: auto !important;
  }
  html body > main:first-of-type .hero-copy h1 {
    font-size: 35px !important;
    line-height: 1.4 !important;
  }
  html body > main:first-of-type .hero-copy .lead {
    margin: 14px 0 10px !important;
    font-size: 14.5px !important;
    line-height: 1.85 !important;
  }
  html body > main:first-of-type .hero-copy .text-link {
    width: auto !important;
    min-height: 40px !important;
    padding: 7px 0 !important;
  }
  html body > main:first-of-type section.hero > .hero-photo.hero-slides {
    left: 12px !important;
    right: 12px !important;
    bottom: 0 !important;
    height: 320px !important;
    border-radius: 50% 50% 22px 22px / 28% 28% 22px 22px !important;
  }
}

/* WORKS ALIGNMENT + MOBILE FULL HERO 2026-09-08 */
html body > main:first-of-type section.works {
  width: calc(100% - 8vw) !important;
  max-width: none !important;
  margin: 160px 4vw !important;
  padding: 104px 4vw 92px !important;
  background: #e6e2d7 !important;
  border-radius: 84px 24px 84px 24px !important;
}
html body > main:first-of-type .works .section-heading {
  margin-bottom: 58px !important;
}
html body > main:first-of-type .works .work-grid {
  gap: 34px !important;
}
html body > main:first-of-type .works .work-card {
  overflow: hidden !important;
  border-radius: 28px !important;
  background: rgba(251, 250, 245, .62) !important;
  box-shadow: 0 12px 34px rgba(64, 60, 52, .07) !important;
}
html body > main:first-of-type .works .work-image {
  border-radius: 28px 28px 0 0 !important;
}
html body > main:first-of-type .works .work-meta {
  padding: 24px 20px 28px !important;
}

@media screen and (max-width: 800px) {
  html body > main:first-of-type .site-header {
    background: transparent !important;
    border-bottom: 0 !important;
  }
  html body > main:first-of-type .site-header .brand {
    color: #fff !important;
    text-shadow: 0 1px 12px rgba(0,0,0,.35) !important;
  }
  html body > main:first-of-type .site-header .brand-mark {
    background: rgba(77, 91, 72, .82) !important;
    box-shadow: 0 4px 18px rgba(0,0,0,.14) !important;
  }
  html body > main:first-of-type section.hero {
    height: 100svh !important;
    min-height: 680px !important;
    max-height: 860px !important;
    background: #6f7168 !important;
  }
  html body > main:first-of-type section.hero::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    pointer-events: none !important;
    background: linear-gradient(180deg, rgba(27,29,25,.18) 0%, rgba(27,29,25,.03) 34%, rgba(27,29,25,.20) 57%, rgba(27,29,25,.66) 100%) !important;
  }
  html body > main:first-of-type section.hero > .hero-photo.hero-slides {
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    border-radius: 0 !important;
  }
  html body > main:first-of-type section.hero > .hero-copy {
    top: auto !important;
    bottom: 54px !important;
    left: 24px !important;
    right: 24px !important;
    z-index: 5 !important;
    width: auto !important;
    color: #fff !important;
    text-shadow: 0 2px 18px rgba(0,0,0,.35) !important;
  }
  html body > main:first-of-type .hero-copy .eyebrow,
  html body > main:first-of-type .hero-copy .text-link {
    color: #fff !important;
  }
  html body > main:first-of-type .hero-copy .text-link {
    border-bottom-color: rgba(255,255,255,.82) !important;
  }
  html body > main:first-of-type .hero-slides .hero-slide:nth-child(1) {
    object-position: 58% center !important;
  }
  html body > main:first-of-type .hero-slides .hero-slide:nth-child(2) {
    object-position: 58% center !important;
  }
  html body > main:first-of-type section.works {
    width: calc(100% - 24px) !important;
    margin: 88px 12px !important;
    padding: 68px 18px 54px !important;
    border-radius: 72px 24px 72px 24px !important;
  }
  html body > main:first-of-type .works .section-heading {
    margin-bottom: 42px !important;
  }
  html body > main:first-of-type .works .work-card {
    margin-bottom: 34px !important;
    border-radius: 24px !important;
  }
  html body > main:first-of-type .works .work-image {
    min-height: 300px !important;
    border-radius: 24px 24px 0 0 !important;
  }
}

/* ALICE STORY PHOTO REFINEMENT 2026-09-12 */
@media screen and (min-width: 801px) {
  html body > main:first-of-type .why-knitting {
    grid-template-columns: minmax(410px, 44%) minmax(0, 1fr) !important;
    gap: clamp(56px, 6vw, 88px) !important;
  }
  html body > main:first-of-type .why-knitting .knit-visual {
    height: 700px !important;
    border-radius: 50% 50% 34px 34px / 34% 34% 34px 34px !important;
    box-shadow:
      0 0 0 12px rgba(251, 250, 245, .92),
      24px 26px 0 rgba(214, 220, 207, .82),
      0 28px 64px rgba(64, 60, 52, .14) !important;
    transform: rotate(-.6deg) !important;
  }
  html body > main:first-of-type .why-knitting .knit-visual > img {
    border-radius: inherit !important;
    object-position: 52% center !important;
  }
  html body > main:first-of-type .why-knitting .knit-visual > p {
    left: 26px !important;
    bottom: 24px !important;
    padding: 10px 16px !important;
    border: 1px solid rgba(83, 96, 77, .12) !important;
    box-shadow: 0 8px 22px rgba(64, 60, 52, .10) !important;
  }
  html body > main:first-of-type .why-knitting .why-story h2 {
    font-size: clamp(40px, 3.35vw, 46px) !important;
  }
  html body > main:first-of-type .why-knitting .why-story h2 .headline-line {
    white-space: nowrap !important;
    overflow-wrap: normal !important;
  }
}
@media screen and (max-width: 800px) {
  html body > main:first-of-type .why-knitting .knit-visual {
    width: calc(100% - 12px) !important;
    height: auto !important;
    aspect-ratio: 4 / 5 !important;
    margin: 0 12px 58px 0 !important;
    border-radius: 50% 50% 26px 26px / 34% 34% 26px 26px !important;
    box-shadow:
      0 0 0 7px rgba(251, 250, 245, .94),
      12px 14px 0 rgba(214, 220, 207, .82),
      0 20px 46px rgba(64, 60, 52, .13) !important;
  }
  html body > main:first-of-type .why-knitting .knit-visual > img {
    border-radius: inherit !important;
    object-position: 52% center !important;
  }
  html body > main:first-of-type .why-knitting .knit-visual > p {
    left: 18px !important;
    bottom: 18px !important;
    padding: 9px 14px !important;
    box-shadow: 0 6px 18px rgba(64, 60, 52, .10) !important;
  }
}

/* PROFILE LABEL READABILITY 2026-09-12 */
html body > main:first-of-type .fukiyo-profile .profile-label {
  position: relative !important;
  box-sizing: border-box !important;
  width: 220px !important;
  height: 98px !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  padding: 18px 22px 16px 28px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 6px !important;
  align-self: center !important;
  justify-self: center !important;
  border: 1px solid rgba(83, 96, 77, .20) !important;
  border-left: 5px solid #7d8f75 !important;
  border-radius: 20px 20px 20px 8px !important;
  background: rgba(251, 250, 245, .94) !important;
  color: #394137 !important;
  box-shadow: 0 12px 28px rgba(64, 60, 52, .09) !important;
  transform: rotate(-1.2deg) !important;
}
html body > main:first-of-type .fukiyo-profile .profile-label::before {
  content: "" !important;
  position: absolute !important;
  top: 14px !important;
  left: -11px !important;
  width: 16px !important;
  height: 16px !important;
  border: 2px solid #7d8f75 !important;
  border-right-color: transparent !important;
  border-radius: 50% !important;
  background: transparent !important;
}
html body > main:first-of-type .fukiyo-profile .profile-label::after {
  content: "•••" !important;
  position: absolute !important;
  right: 13px !important;
  bottom: 9px !important;
  color: #a7b49f !important;
  font-size: 10px !important;
  letter-spacing: 4px !important;
  line-height: 1 !important;
}
html body > main:first-of-type .fukiyo-profile .profile-label span {
  font-size: 17px !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  letter-spacing: .18em !important;
  color: #394137 !important;
}
html body > main:first-of-type .fukiyo-profile .profile-label small {
  font-size: 13px !important;
  line-height: 1.5 !important;
  letter-spacing: .05em !important;
  color: #596356 !important;
}
@media screen and (max-width: 800px) {
  html body > main:first-of-type .fukiyo-profile .profile-label {
    width: min(220px, 82%) !important;
    height: 92px !important;
    min-height: 0 !important;
    aspect-ratio: auto !important;
    margin: 0 0 30px 0 !important;
    padding: 17px 20px 15px 25px !important;
    align-self: auto !important;
    justify-self: auto !important;
    transform: rotate(-.7deg) !important;
  }
}


/* DESKTOP FULL HERO + UNIFIED SECTION WIDTH 2026-09-23 */
@media screen and (min-width: 801px) {
  html body > main:first-of-type section.hero {
    height: 100svh !important;
    min-height: 720px !important;
    max-height: none !important;
    background: #5f625b !important;
  }

  html body > main:first-of-type section.hero::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    pointer-events: none !important;
    background: linear-gradient(180deg, rgba(24, 27, 22, .34) 0%, rgba(24, 27, 22, .05) 38%, rgba(24, 27, 22, .18) 58%, rgba(24, 27, 22, .68) 100%) !important;
  }

  html body > main:first-of-type section.hero > .hero-photo.hero-slides {
    inset: 0 !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    border-radius: 0 !important;
  }

  html body > main:first-of-type section.hero > .hero-copy {
    top: auto !important;
    bottom: clamp(72px, 9vh, 100px) !important;
    left: 8vw !important;
    right: auto !important;
    width: min(600px, 46vw) !important;
    z-index: 5 !important;
    color: #fff !important;
    text-shadow: 0 2px 22px rgba(0, 0, 0, .34) !important;
  }

  html body > main:first-of-type .hero-copy .eyebrow,
  html body > main:first-of-type .hero-copy .text-link {
    color: #fff !important;
  }

  html body > main:first-of-type .hero-copy .text-link {
    border-bottom-color: rgba(255, 255, 255, .84) !important;
  }

  html body > main:first-of-type .site-header .brand,
  html body > main:first-of-type .site-header nav a {
    color: #fff !important;
    text-shadow: 0 1px 16px rgba(0, 0, 0, .38) !important;
  }

  html body > main:first-of-type .site-header nav::before {
    background: rgba(255, 255, 255, .76) !important;
  }

  html body > main:first-of-type .site-header .brand-mark {
    background: rgba(77, 91, 72, .86) !important;
    box-shadow: 0 5px 20px rgba(0, 0, 0, .16) !important;
  }

  html body > main:first-of-type section.intro,
  html body > main:first-of-type section.fukiyo-profile,
  html body > main:first-of-type section.why-knitting,
  html body > main:first-of-type section.mother-message,
  html body > main:first-of-type section.works,
  html body > main:first-of-type section.donation,
  html body > main:first-of-type section.closing {
    box-sizing: border-box !important;
    width: calc(100% - 8vw) !important;
    max-width: none !important;
    margin-left: 4vw !important;
    margin-right: 4vw !important;
  }
}

/* SOFT CURVES + CLEAN SECTION LABELS 2026-09-25 */
html body > main:first-of-type section.intro,
html body > main:first-of-type section.fukiyo-profile,
html body > main:first-of-type section.mother-message,
html body > main:first-of-type section.works,
html body > main:first-of-type section.donation,
html body > main:first-of-type section.closing {
  border-radius: 52px !important;
}

/* Remove decorative sequence numbers and reclaim their space */
html body > main:first-of-type .intro > .section-number,
html body > main:first-of-type .why-knitting .why-topline > span:first-child,
html body > main:first-of-type .mother-message .message-heading > .section-number,
html body > main:first-of-type .works .work-meta > span:first-child {
  display: none !important;
}

html body > main:first-of-type section.intro {
  grid-template-columns: minmax(330px, 520px) minmax(0, 1fr) !important;
  column-gap: clamp(36px, 5vw, 72px) !important;
}
html body > main:first-of-type .intro > div:nth-child(2),
html body > main:first-of-type .intro > .intro-body {
  grid-column: 1 !important;
}
html body > main:first-of-type .why-knitting .why-topline,
html body > main:first-of-type .mother-message .message-heading {
  gap: 0 !important;
}
html body > main:first-of-type .works .work-meta {
  gap: 0 !important;
}

/* Improve contrast in the donation message */
html body > main:first-of-type .donation .eyebrow {
  color: #536050 !important;
}
html body > main:first-of-type .donation .donation-copy > p:last-child {
  color: #3f493e !important;
  font-weight: 500 !important;
  line-height: 2 !important;
}

@media screen and (max-width: 800px) {
  html body > main:first-of-type section.intro,
  html body > main:first-of-type section.fukiyo-profile,
  html body > main:first-of-type section.mother-message,
  html body > main:first-of-type section.works,
  html body > main:first-of-type section.donation,
  html body > main:first-of-type section.closing {
    border-radius: 30px !important;
  }
  html body > main:first-of-type section.intro {
    display: block !important;
  }
  html body > main:first-of-type .works .work-meta {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }
}

/* VISIBLE DONATION RATE + CONTINUOUS YARN LINE 2026-09-25 */
html body > main:first-of-type {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate;
}

/* A single soft yarn strand connects the sections from top to bottom. */
html body > main:first-of-type::before {
  content: "";
  position: absolute;
  top: calc(100svh - 16px);
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 1000' preserveAspectRatio='none'%3E%3Cpath d='M92 0 C99 38 82 69 94 105 C102 130 98 151 86 168 C66 198 19 178 8 224 C3 246 17 258 13 278 C9 296 -2 284 4 266 C14 238 43 255 84 304 C101 325 100 354 91 383 C78 425 25 410 10 455 C2 480 17 494 13 514 C9 532 -2 520 4 502 C15 472 42 492 85 542 C101 561 99 591 91 620 C79 664 27 649 10 695 C1 719 16 735 12 754 C8 773 -2 759 4 741 C15 713 44 729 85 781 C100 801 98 832 89 860 C76 901 25 891 12 932 C5 954 13 979 30 1000' fill='none' stroke='%23b8a58c' stroke-opacity='.18' stroke-width='5' vector-effect='non-scaling-stroke' stroke-linecap='round'/%3E%3Cpath d='M92 0 C99 38 82 69 94 105 C102 130 98 151 86 168 C66 198 19 178 8 224 C3 246 17 258 13 278 C9 296 -2 284 4 266 C14 238 43 255 84 304 C101 325 100 354 91 383 C78 425 25 410 10 455 C2 480 17 494 13 514 C9 532 -2 520 4 502 C15 472 42 492 85 542 C101 561 99 591 91 620 C79 664 27 649 10 695 C1 719 16 735 12 754 C8 773 -2 759 4 741 C15 713 44 729 85 781 C100 801 98 832 89 860 C76 901 25 891 12 932 C5 954 13 979 30 1000' fill='none' stroke='%239a846b' stroke-opacity='.54' stroke-width='1.35' vector-effect='non-scaling-stroke' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}

html body > main:first-of-type > section {
  position: relative;
  z-index: 1;
}

/* Keep the 30% prominent and use a Japanese Mincho face. */
html body > main:first-of-type .donation .donation-figure,
html body > main:first-of-type .donation .donation-figure strong,
html body > main:first-of-type .donation .donation-figure span {
  color: #66705f !important;
  font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", serif !important;
}
html body > main:first-of-type .donation .donation-figure strong {
  font-weight: 500 !important;
  letter-spacing: -.06em !important;
}
html body > main:first-of-type .donation .donation-figure span {
  font-weight: 500 !important;
}

@media screen and (max-width: 800px) {
  html body > main:first-of-type::before {
    top: calc(100svh - 8px);
    background-size: 118% 100%;
    background-position: center top;
  }
  html body > main:first-of-type .donation .donation-figure {
    margin-bottom: 18px !important;
  }
}

/* TRANSLUCENT PANELS + SOFT FOOTER GRADIENT 2026-09-25 */
/* Photo-backed sections stay unchanged; solid panels let the yarn show through. */
html body > main:first-of-type section.fukiyo-profile {
  background: rgba(236, 239, 231, .82) !important;
}
html body > main:first-of-type section.mother-message {
  background: rgba(235, 231, 223, .84) !important;
}
html body > main:first-of-type section.works {
  background: rgba(230, 226, 215, .82) !important;
}
html body > main:first-of-type section.donation {
  background: rgba(223, 229, 220, .82) !important;
}
html body > main:first-of-type section.closing {
  background: rgba(244, 242, 237, .78) !important;
}

html body > footer.site-footer,
html body .site-footer {
  background-color: rgba(43, 50, 44, .9) !important;
  background-image: linear-gradient(135deg, rgba(47, 55, 47, .94) 0%, rgba(87, 96, 79, .84) 52%, rgba(40, 47, 41, .93) 100%) !important;
  color: #f7f5ef !important;
}

/* MOBILE YARN FLOW 2026-10-05 */
@media screen and (max-width:800px){html body > main:first-of-type::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%201000%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M88%200%20C98%2028%2096%2050%2088%2070%20S12%20110%208%20145%20S92%20190%2092%20235%20S8%20280%208%20325%20S92%20370%2092%20415%20S8%20460%208%20505%20S92%20550%2092%20595%20S8%20640%208%20685%20S92%20730%2092%20775%20S8%20820%208%20865%20S92%20910%2092%20955%20C92%20978%2076%20992%2060%201000%22%20fill%3D%22none%22%20stroke%3D%22%23b8a58c%22%20stroke-opacity%3D%22.25%22%20stroke-width%3D%225%22%20vector-effect%3D%22non-scaling-stroke%22%2F%3E%3Cpath%20d%3D%22M88%200%20C98%2028%2096%2050%2088%2070%20S12%20110%208%20145%20S92%20190%2092%20235%20S8%20280%208%20325%20S92%20370%2092%20415%20S8%20460%208%20505%20S92%20550%2092%20595%20S8%20640%208%20685%20S92%20730%2092%20775%20S8%20820%208%20865%20S92%20910%2092%20955%20C92%20978%2076%20992%2060%201000%22%20fill%3D%22none%22%20stroke%3D%22%23947c60%22%20stroke-opacity%3D%22.82%22%20stroke-width%3D%222.2%22%20vector-effect%3D%22non-scaling-stroke%22%2F%3E%3C%2Fsvg%3E")!important;background-size:100% 100%!important;background-position:center top!important;}}

/* CLEAR HANDWORK PHOTO + PROFILE PORTRAIT + FLAT FOOTER 2026-10-05 */
html body > main:first-of-type section.intro::after {content:none!important;display:none!important;}
html body > main:first-of-type section.intro {background:linear-gradient(90deg,rgba(244,242,237,.98) 0%,rgba(244,242,237,.94) 34%,rgba(244,242,237,.60) 48%,rgba(244,242,237,0) 66%),url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center 54%/cover no-repeat!important;}
html body > main:first-of-type .profile-visual {display:flex;flex-direction:column;align-items:center;gap:26px;min-width:0;}
html body > main:first-of-type .fukiyo-profile .profile-label {margin:0!important;}
html body > main:first-of-type .profile-portrait {width:clamp(160px,17vw,220px);aspect-ratio:1;margin:0;border-radius:50%;overflow:hidden;background:rgba(250,249,244,.8);box-shadow:0 0 0 7px rgba(255,255,255,.46);flex-shrink:0;}
html body > main:first-of-type .profile-portrait img {display:block;width:100%;height:100%;object-fit:cover;object-position:center;}
html body > main:first-of-type .profile-portrait-placeholder {display:grid;place-items:center;color:#65705e;font-size:14px;letter-spacing:.08em;border:1px solid rgba(101,112,94,.18);}
html body .site-footer {border-radius:0!important;}
@media screen and (max-width:800px){
html body > main:first-of-type section.intro {padding:54px 22px 340px!important;min-height:780px!important;background:linear-gradient(180deg,rgba(244,242,237,.99) 0%,rgba(244,242,237,.97) 52%,rgba(244,242,237,0) 68%),url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center bottom/auto 44% no-repeat!important;}
html body > main:first-of-type .profile-visual {margin-bottom:36px;gap:28px;}
html body > main:first-of-type .profile-portrait {width:180px;}
}

/* Keep mobile text above the clear handwork photograph. */
@media screen and (max-width:800px){html body > main:first-of-type section.intro{background:#f4f2ed!important;min-height:0!important;padding-bottom:340px!important;}html body > main:first-of-type section.intro::before{content:"";position:absolute;left:0;right:0;bottom:0;height:300px;background:url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center/cover no-repeat;z-index:0;pointer-events:none;}html body > main:first-of-type .intro h2{font-size:clamp(20px,6.4vw,31px)!important;}html body > main:first-of-type .intro h2 .headline-line{white-space:nowrap!important;}}

/* QUIET ATELIER DESIGN 2026-10-05 — preserve continuous yarn */
html body {color:#393c33!important;}
html body > main:first-of-type .eyebrow {font-family:"Helvetica Neue",Arial,sans-serif!important;font-size:10px!important;font-weight:500!important;letter-spacing:.22em!important;line-height:1.6!important;}
html body > main:first-of-type h2 {font-weight:400!important;letter-spacing:.045em!important;}
html body > main:first-of-type .intro-body p,html body > main:first-of-type .profile-text,html body > main:first-of-type .why-story>p,html body > main:first-of-type .message-intro,html body > main:first-of-type .donation-copy>p {font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif!important;font-size:16px!important;line-height:2.1!important;letter-spacing:.045em!important;}
html body > main:first-of-type section.fukiyo-profile {background:transparent!important;border:0!important;box-shadow:none!important;padding:70px clamp(30px,7vw,110px)!important;}
html body > main:first-of-type .fukiyo-profile .profile-label {width:auto!important;height:auto!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;transform:none!important;align-items:center!important;gap:9px!important;}
html body > main:first-of-type .fukiyo-profile .profile-label::before,html body > main:first-of-type .fukiyo-profile .profile-label::after {content:none!important;}
html body > main:first-of-type .fukiyo-profile .profile-label span {font-family:Arial,sans-serif!important;font-size:10px!important;letter-spacing:.24em!important;}
html body > main:first-of-type .fukiyo-profile .profile-label small {font-size:14px!important;}
html body > main:first-of-type .profile-visual {gap:24px!important;}
html body > main:first-of-type .profile-copy {border-top:1px solid rgba(89,101,79,.24);padding-top:32px;}
html body > main:first-of-type .profile-likes dd span {background:rgba(236,239,231,.65)!important;border:0!important;padding:7px 16px!important;}
html body > main:first-of-type section.mother-message {background:rgba(235,231,223,.65)!important;box-shadow:none!important;}
html body > main:first-of-type .letter-placeholder {border-radius:12px!important;box-shadow:0 16px 45px rgba(60,50,40,.05)!important;}
html body > main:first-of-type section.works {background:transparent!important;padding-top:40px!important;padding-bottom:40px!important;}
html body > main:first-of-type .works .work-card {background:transparent!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;}
html body > main:first-of-type .works .work-image {border-radius:24px!important;min-height:0!important;aspect-ratio:4/5!important;background:rgba(230,226,215,.68)!important;}
html body > main:first-of-type .works .work-meta {display:block!important;border:0!important;padding:24px 0 0!important;}
html body > main:first-of-type .works .work-meta h3 {font-size:20px!important;font-weight:400!important;line-height:1.6!important;}
html body > main:first-of-type .works .work-meta p {font-family:"Yu Gothic",sans-serif!important;font-size:14px!important;line-height:1.9!important;}
html body > main:first-of-type section.donation {background:rgba(223,229,220,.72)!important;box-shadow:none!important;}
html body > main:first-of-type section.closing {background:transparent!important;border:0!important;}
html body > main:first-of-type .why-knitting .knit-visual {transform:none!important;box-shadow:0 0 0 8px rgba(251,250,245,.8),14px 18px 0 rgba(214,220,207,.55)!important;}
html body > main:first-of-type .why-knitting .knit-visual>p {background:rgba(250,249,244,.88)!important;border:0!important;border-radius:14px!important;font-size:12px!important;letter-spacing:.08em!important;box-shadow:none!important;}
html body > main:first-of-type .why-story blockquote {border-left:1px solid #98a58c!important;padding:14px 0 14px 24px!important;font-size:19px!important;line-height:1.95!important;color:#65705c!important;}
html body .site-footer {border-radius:0!important;padding-top:64px!important;padding-bottom:42px!important;}
@media screen and (min-width:801px){
html body > main:first-of-type section.fukiyo-profile {display:grid!important;grid-template-columns:280px minmax(0,1fr)!important;gap:clamp(50px,8vw,120px)!important;margin-top:110px!important;margin-bottom:130px!important;}
html body > main:first-of-type section.intro {margin-top:100px!important;min-height:650px!important;padding:80px clamp(38px,6vw,95px)!important;grid-template-columns:minmax(0,46%) minmax(0,1fr)!important;background:linear-gradient(90deg,rgba(244,242,237,.99) 0%,rgba(244,242,237,.97) 42%,rgba(244,242,237,.58) 55%,rgba(244,242,237,0) 73%),url("https://fukiyo.mkopenworks.com/wp-content/uploads/2026/08/img002-1024x683.jpg") center 54%/cover no-repeat!important;}
html body > main:first-of-type .intro h2 {font-size:clamp(30px,3vw,44px)!important;}
html body > main:first-of-type section.why-knitting {grid-template-columns:minmax(0,44%) minmax(0,1fr)!important;gap:clamp(45px,6vw,90px)!important;margin-top:140px!important;margin-bottom:140px!important;}
html body > main:first-of-type .why-story {padding:10px 0!important;}
html body > main:first-of-type .why-story h2 {font-size:clamp(28px,2.7vw,40px)!important;}
html body > main:first-of-type .why-story h2 .headline-line {white-space:normal!important;}
html body > main:first-of-type .mother-message .message-heading {max-width:680px;margin-left:auto;margin-right:auto;}
html body > main:first-of-type .works .section-heading {display:flex!important;align-items:flex-end!important;gap:40px!important;}
html body > main:first-of-type .works .section-heading>p {max-width:360px;font-family:"Yu Gothic",sans-serif;font-size:14px;line-height:2;}
html body > main:first-of-type .hero-copy h1 {font-size:clamp(48px,5.3vw,76px)!important;}
}
@media screen and (max-width:800px){
html body > main:first-of-type section.intro,html body > main:first-of-type section.fukiyo-profile,html body > main:first-of-type section.why-knitting,html body > main:first-of-type section.mother-message,html body > main:first-of-type section.works,html body > main:first-of-type section.donation {width:calc(100% - 36px)!important;margin-left:18px!important;margin-right:18px!important;}
html body > main:first-of-type section.intro {margin-top:64px!important;padding-left:22px!important;padding-right:22px!important;}
html body > main:first-of-type section.fukiyo-profile {padding:20px 12px!important;margin-top:76px!important;margin-bottom:88px!important;}
html body > main:first-of-type .profile-copy {padding-top:26px;}
html body > main:first-of-type .profile-copy h2 {font-size:34px!important;}
html body > main:first-of-type section.why-knitting {margin-top:90px!important;margin-bottom:100px!important;}
html body > main:first-of-type .why-story {padding:0 8px!important;}
html body > main:first-of-type .why-story h2,html body > main:first-of-type .message-heading h2,html body > main:first-of-type .closing h2 {font-size:clamp(22px,6.4vw,30px)!important;}
html body > main:first-of-type section.mother-message {padding:48px 22px!important;margin-top:80px!important;margin-bottom:80px!important;}
html body > main:first-of-type section.works {padding:22px 8px!important;margin-top:90px!important;margin-bottom:90px!important;}
html body > main:first-of-type .works .work-card {margin-bottom:42px!important;}
html body > main:first-of-type .works .work-image {aspect-ratio:5/4!important;border-radius:20px!important;}
html body > main:first-of-type .works .section-heading>p {font-size:14px!important;line-height:1.95!important;}
html body > main:first-of-type section.donation {padding:50px 22px!important;margin-top:80px!important;margin-bottom:80px!important;}
html body > main:first-of-type .donation-copy h2 {font-size:clamp(20px,5.6vw,27px)!important;}
html body > main:first-of-type .intro-body p,html body > main:first-of-type .profile-text,html body > main:first-of-type .why-story>p,html body > main:first-of-type .message-intro,html body > main:first-of-type .donation-copy>p {font-size:15px!important;line-height:2!important;}
html body > main:first-of-type .hero-copy h1 {font-size:clamp(32px,9vw,44px)!important;}
}

@media screen and (max-width:800px){html body > main:first-of-type .why-story h2{font-size:clamp(18px,5.8vw,28px)!important;}html body > main:first-of-type .why-story h2 .headline-line{white-space:nowrap!important;overflow-wrap:normal!important;}}

/* Keep the continuous yarn clear of heading lettering at every screen width. */
html body > main:first-of-type::before{-webkit-mask-image:var(--fukiyo-yarn-mask,none);mask-image:var(--fukiyo-yarn-mask,none);-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;}

html body > main:first-of-type::before{mask-mode:luminance;}
