/*
 Theme Name:   i-Foundation.Thema
 Theme URI:    https://github.com/i-foundation/i-foundation-thema
 Author:       i.Foundation
 Author URI:   https://i.foundation
 Description:  虚次元財団 i.Foundation 公式テーマ。WordPress標準構造のクラシックテーマです。
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  i-foundation-thema
*/

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html,body{background-color:#f4f1eb!important;color:#1a1a1a;min-height:100%}
body{font-family:'Noto Serif JP',serif;-webkit-font-smoothing:antialiased;overflow-x:hidden;line-height:1.8}

nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:14px 20px;display:flex;justify-content:space-between;align-items:center;background-color:rgba(244,241,235,0.95);backdrop-filter:blur(16px);border-bottom:1px solid rgba(0,0,0,0.06)}
.nav-logo{font-family:'EB Garamond',serif;font-size:16px;letter-spacing:3px;color:#8a6d2b;font-weight:500}
.nav-sub{font-size:11px;color:#777;letter-spacing:2px;margin-top:2px}

.hero{background-color:#f4f1eb;min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:80px 24px 40px}
.hero-i{font-family:'Cormorant Garamond',serif;font-weight:300;font-style:italic;font-size:130px;color:#8a6d2b;line-height:1;opacity:0;animation:fadeIn 1.5s ease-out .2s forwards}
.hero-dot{width:5px;height:5px;background:#8a6d2b;border-radius:50%;margin:8px auto 28px;opacity:0;animation:fadeIn 1.5s ease-out .5s forwards}
.hero-title{font-family:'Cinzel',serif;font-size:16px;font-weight:600;letter-spacing:10px;color:#1a1a1a;opacity:0;animation:fadeIn 1.5s ease-out .8s forwards;margin-bottom:12px}
.hero-subtitle{font-weight:400;font-size:17px;letter-spacing:8px;color:#444;opacity:0;animation:fadeIn 1.5s ease-out 1.1s forwards;margin-bottom:20px}
.hero-formula{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:26px;color:#8a6d2b;letter-spacing:4px;opacity:0;animation:fadeIn 1.5s ease-out 1.4s forwards;margin-bottom:48px}
@keyframes fadeIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}

.mission{background-color:#eae6dd;padding:80px 24px;text-align:center}
.mission-inner{max-width:700px;margin:0 auto}
.mission-operator{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:72px;color:#8a6d2b;line-height:1;margin-bottom:12px}
.mission-operator-label{font-family:'Cinzel',serif;font-size:12px;font-weight:600;letter-spacing:4px;color:#777;text-transform:uppercase;margin-bottom:40px}
.mission-copy-wrap{padding:80px 0 80px}
.mission-headline{font-weight:500;font-size:20px;line-height:2.4;color:#1a1a1a;letter-spacing:2px}
.mission-headline .hl{color:#8a6d2b;font-weight:600}
.mission-sub{font-weight:400;font-size:15px;line-height:2;color:#555;letter-spacing:1px;margin-top:60px;margin-bottom:80px}
.mission-divider-line{width:1px;height:48px;background:linear-gradient(to bottom,rgba(138,109,43,0.4),transparent);margin:0 auto 56px}
.mission-flow{display:flex;flex-direction:column;align-items:center}
.flow-step{text-align:center;padding:20px 0}
.flow-step-label{font-family:'Cinzel',serif;font-size:12px;font-weight:600;letter-spacing:5px;color:#777;text-transform:uppercase;margin-bottom:8px}
.flow-step-main{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:36px;color:#8a6d2b;letter-spacing:3px}
.flow-step-desc{font-size:14px;color:#555;letter-spacing:1px;margin-top:6px;line-height:1.7}
.flow-arrow{font-size:20px;color:rgba(138,109,43,0.35);padding:8px 0;line-height:1}
.flow-step-final .flow-step-main{font-family:'Cinzel',serif;font-style:normal;font-weight:600;font-size:28px;letter-spacing:8px;color:#1a1a1a}
.flow-step-final .flow-step-desc{color:#8a6d2b;font-weight:500;font-size:14px;letter-spacing:2px}

.section{background-color:#f4f1eb;padding:80px 24px}
.section-alt{background-color:#eae6dd}
.section-inner{max-width:660px;margin:0 auto}
.section-label{font-family:'Cinzel',serif;font-size:12px;font-weight:600;letter-spacing:6px;color:#8a6d2b;text-transform:uppercase;text-align:center;margin-bottom:12px}
.section-divider{width:40px;height:1px;background:#8a6d2b;margin:0 auto 48px;opacity:0.4}

.thesis-block{margin-bottom:56px;text-align:center}
.thesis-block:last-child{margin-bottom:0}
.thesis-keyword{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:32px;color:#8a6d2b;margin-bottom:12px;letter-spacing:2px}
.thesis-body{font-weight:400;font-size:15px;line-height:2.2;color:#444;letter-spacing:1px}
.thesis-body strong{color:#1a1a1a;font-weight:500}
.thesis-separator{width:24px;height:1px;background:#8a6d2b;margin:0 auto 56px;opacity:0.3}

.op-grid{display:flex;flex-direction:column;gap:2px;margin-top:48px}
.op-card{background-color:#f4f1eb;padding:28px 24px;border-left:3px solid #8a6d2b}
.op-card-label{font-family:'Cinzel',serif;font-size:12px;font-weight:600;letter-spacing:4px;color:#8a6d2b;text-transform:uppercase;margin-bottom:8px}
.op-card-body{font-size:14px;line-height:1.9;color:#444}
.op-card-body strong{color:#1a1a1a;font-weight:500}
.op-formula{text-align:center;margin:48px 0 0;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:28px;color:#8a6d2b;letter-spacing:3px}
.op-formula-sub{text-align:center;font-size:13px;color:#777;margin-top:8px;letter-spacing:1px}

/* i.Economy section */
.economy-quote{font-weight:400;font-size:17px;line-height:2;color:#1a1a1a;text-align:center;letter-spacing:1px;margin-bottom:56px}
.economy-quote strong{color:#8a6d2b;font-weight:600}
.economy-formula-wrap{text-align:center;margin:48px 0}
.economy-formula{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:32px;color:#8a6d2b;letter-spacing:3px}
.economy-formula-desc{font-size:14px;color:#555;margin-top:12px;line-height:1.8;letter-spacing:1px}
.economy-layers{display:flex;flex-direction:column;gap:2px;margin-top:48px}
.economy-layer{background-color:#eae6dd;padding:28px 24px;border-left:3px solid #8a6d2b}
.economy-layer-label{font-family:'EB Garamond',serif;font-size:15px;font-weight:600;letter-spacing:2px;color:#8a6d2b;margin-bottom:4px}
.economy-layer-body{font-size:14px;line-height:1.9;color:#444}

.domains-list{display:flex;flex-direction:column;gap:2px}
.domain-card{background-color:#eae6dd;padding:28px 24px;border-left:3px solid #8a6d2b}
.domain-header{display:flex;align-items:baseline;gap:12px;margin-bottom:6px}
.domain-number{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:24px;color:#8a6d2b;line-height:1;opacity:0.5}
.domain-title{font-family:'EB Garamond',serif;font-size:16px;font-weight:600;letter-spacing:2px;color:#1a1a1a}
.domain-title-jp{font-weight:400;font-size:13px;color:#777;letter-spacing:2px;margin-bottom:10px}
.domain-desc{font-weight:400;font-size:14px;line-height:1.9;color:#444}

.formula-section{background-color:#eae6dd;text-align:center;padding:100px 24px;position:relative}
.formula-circle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:240px;height:240px;border:1px solid rgba(138,109,43,0.15);border-radius:50%;pointer-events:none}
.formula-main{font-family:'Cormorant Garamond',serif;font-weight:400;font-style:italic;font-size:48px;color:#8a6d2b;letter-spacing:6px;position:relative;z-index:2}
.formula-sub{margin-top:20px;font-weight:400;font-size:14px;color:#555;letter-spacing:4px;position:relative;z-index:2}
.formula-parts{display:flex;justify-content:center;gap:48px;margin-top:48px;position:relative;z-index:2}
.formula-part{text-align:center}
.formula-part .sym{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:30px;color:#8a6d2b;margin-bottom:6px}
.formula-part .lbl{font-family:'Cinzel',serif;font-size:11px;font-weight:600;letter-spacing:3px;color:#666;text-transform:uppercase}

.philosophy-text{font-weight:400;font-size:16px;line-height:2.4;color:#333;text-align:center;letter-spacing:1px}
.philosophy-text em{font-family:'Cormorant Garamond',serif;font-style:italic;color:#8a6d2b;font-size:21px}
.philosophy-quote{margin-top:56px;padding:40px 0;border-top:1px solid rgba(0,0,0,0.06);border-bottom:1px solid rgba(0,0,0,0.06);text-align:center}
.philosophy-quote p{font-family:'Cormorant Garamond',serif;font-weight:400;font-style:italic;font-size:22px;line-height:1.9;color:#1a1a1a}
.philosophy-quote cite{display:block;margin-top:20px;font-family:'Cinzel',serif;font-size:11px;letter-spacing:4px;color:#8a6d2b;font-style:normal}

.manifesto-lines{display:flex;flex-direction:column;gap:28px;text-align:center}
.manifesto-line{font-weight:400;font-size:17px;line-height:1.8;color:#1a1a1a;letter-spacing:2px;opacity:0;transform:translateY(12px);transition:opacity .8s ease,transform .8s ease}
.manifesto-line.visible{opacity:1;transform:translateY(0)}
.manifesto-line .accent{color:#8a6d2b;font-weight:600}

/* Mobile-specific tweaks */
@media(max-width:767px){
  #thesis .thesis-body{
    font-size:1.2em;
  }
  .mission-operator-label{
    line-height:1.1;
    margin-bottom:32px;
  }
  .mission-operator-label-line{
    display:block;
  }
  .mission-sub-break{
    display:block;
  }
  .thesis-body .thesis-mobile-nobr{
    display:none;
  }
  .thesis-body .thesis-mobile-br{
    display:block;
  }
  .economy-formula-desc .economy-formula-mobile-nobr{
    display:none;
  }
  #operator .op-desc .op-desc-mobile-hidebr{
    display:none;
  }
  #operator .op-desc .op-desc-mobile-br{
    display:block;
  }
  .manifesto-line-br .manifesto-mobile-hidebr{
    display:none;
  }
  .manifesto-line-br .manifesto-mobile-br{
    display:block;
  }
  #domains.section{
    padding-left:12px;
    padding-right:12px;
  }
  .domain-card{
    padding:20px 16px;
  }
  .domain-desc .domain-desc-mobile-br{
    display:block;
  }
}

footer{background-color:#eae6dd;padding:64px 24px 40px;text-align:center;border-top:1px solid rgba(0,0,0,0.06)}
.footer-name{font-family:'EB Garamond',serif;font-size:15px;font-weight:500;letter-spacing:5px;color:#8a6d2b;margin-bottom:40px}
.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:20px 32px;margin-bottom:48px}
.footer-links a{font-family:'Cinzel',serif;font-size:12px;letter-spacing:3px;color:#555;text-decoration:none;transition:color .3s}
.footer-links a:hover{color:#8a6d2b}
.footer-copy{font-size:12px;color:#999;letter-spacing:2px}

/* Utility: accent link (404, etc.) */
a.accent{color:#8a6d2b;font-weight:600;text-decoration:none}
a.accent:hover{text-decoration:underline}

/* Pagination */
.site-main .nav-links{display:flex;justify-content:center;gap:12px;padding:48px 24px;flex-wrap:wrap}
.site-main .nav-links a,.site-main .nav-links span{font-family:'Cinzel',serif;font-size:12px;letter-spacing:2px;color:#8a6d2b}
.site-main .nav-links .current{font-weight:600}

@media(min-width:768px){
  nav{padding:18px 48px}
  .section,.section-alt{padding:120px 48px}
  .mission{padding:120px 48px}
  .mission-copy-wrap{padding:120px 0 120px}
  .mission-sub{margin-top:80px;margin-bottom:120px}
  .hero{padding:80px 48px 40px}
  .hero-i{font-size:160px}
  .hero-title{font-size:20px;letter-spacing:14px}
  .hero-subtitle{font-size:22px;letter-spacing:10px}
  .hero-formula{font-size:30px}
  .mission-operator{font-size:96px}
  .mission-headline{font-size:24px}
  .flow-step-main{font-size:42px}
  .flow-step-final .flow-step-main{font-size:34px;letter-spacing:10px}
  .thesis-keyword{font-size:38px}
  .thesis-body{font-size:16px}
  .op-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2px}
  .op-card{padding:36px 32px}
  .op-formula{font-size:36px}
  .economy-quote{font-size:19px}
  .economy-formula{font-size:40px}
  .economy-layers{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2px}
  .economy-layer{padding:36px 32px}
  .philosophy-text{font-size:18px}
  .philosophy-quote p{font-size:28px}
  .formula-main{font-size:64px}
  .formula-section{padding:140px 48px}
  .formula-circle{width:400px;height:400px}
  .domains-list{display:grid;grid-template-columns:1fr 1fr;gap:2px}
  .domain-card{padding:36px 32px}
  .domain-title{font-size:18px}
  .manifesto-line{font-size:20px;letter-spacing:3px}
}
