/*
Theme Name: Keita Cinematic Portfolio
Theme URI: https://example.com/
Author: Keita
Description: Cinematic portfolio theme for videographers. Includes Works, Reviews, Profile, Contact and selectable design skins. Compatible with standard WordPress hosting including ConoHa WING.
Version: 4.0.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: keita-cinematic
*/

:root{
  --bg:#0b0b0c;--surface:#121214;--surface-2:#19191c;--text:#f5f5f2;--muted:#9a9a9f;
  --line:rgba(255,255,255,.12);--accent:#f2f2ed;--accent-text:#111;--radius:18px;
  --max:1280px;--header-h:76px;--shadow:0 18px 60px rgba(0,0,0,.24);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Noto Sans JP",Arial,sans-serif;line-height:1.75;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button,input,textarea,select{font:inherit}.site-wrap{overflow:hidden}.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.eyebrow{font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:650}.section{padding:110px 0}.section--tight{padding:72px 0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:42px}.section-title{font-size:clamp(2rem,4vw,4.5rem);line-height:1.04;letter-spacing:-.04em;margin:.3rem 0 0}.section-copy{max-width:650px;color:var(--muted)}
.site-header{position:fixed;z-index:1000;inset:0 0 auto;background:linear-gradient(to bottom,rgba(0,0,0,.58),transparent);transition:.3s}.site-header.is-scrolled{background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.header-inner{height:var(--header-h);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-weight:750;letter-spacing:.08em;font-size:.9rem;white-space:nowrap}.brand span{color:var(--muted);font-weight:500}.nav{display:flex;align-items:center;gap:26px;font-size:.82rem;letter-spacing:.07em;text-transform:uppercase}.nav a{opacity:.78}.nav a:hover,.nav .current-menu-item>a{opacity:1}.header-cta{padding:10px 16px;border:1px solid var(--line);border-radius:999px}.menu-toggle{display:none;background:none;border:1px solid var(--line);color:var(--text);border-radius:999px;padding:8px 12px}
.hero{min-height:100svh;position:relative;display:grid;align-items:end;background:#050506}.hero-media{position:absolute;inset:0;overflow:hidden}.hero-media video,.hero-media img{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.82) 5%,rgba(0,0,0,.22) 62%,rgba(0,0,0,.28))}.hero-content{position:relative;z-index:2;padding:calc(var(--header-h) + 120px) 0 70px}.hero h1{font-size:clamp(3.2rem,8vw,8.3rem);line-height:.94;letter-spacing:-.055em;max-width:1100px;margin:10px 0 28px}.hero p{font-size:clamp(1rem,1.5vw,1.25rem);max-width:680px;color:#ddd}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 21px;border-radius:999px;border:1px solid var(--line);transition:.2s;background:transparent}.btn--primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.btn:hover{transform:translateY(-1px);opacity:.9}
.grid{display:grid;gap:20px}.works-grid{grid-template-columns:repeat(12,1fr)}.work-card{grid-column:span 6;position:relative;background:var(--surface);border-radius:var(--radius);overflow:hidden;min-height:420px;border:1px solid var(--line)}.work-card:nth-child(3n+1){grid-column:span 7}.work-card:nth-child(3n+2){grid-column:span 5}.work-card:nth-child(3n){grid-column:span 12;min-height:560px}.work-thumb{position:absolute;inset:0}.work-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.work-card:hover .work-thumb img{transform:scale(1.025)}.work-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.78),transparent 62%)}.work-meta{position:absolute;left:26px;right:26px;bottom:24px;z-index:2}.work-meta h3{font-size:clamp(1.35rem,2vw,2rem);margin:4px 0}.work-meta p{margin:0;color:#c7c7c7;font-size:.9rem}.placeholder{display:grid;place-items:center;height:100%;background:linear-gradient(135deg,var(--surface),var(--surface-2));color:var(--muted);letter-spacing:.14em}
.services{grid-template-columns:repeat(3,1fr)}.service{padding:30px;border-top:1px solid var(--line)}.service h3{font-size:1.2rem;margin:0 0 10px}.service p{margin:0;color:var(--muted)}
.reviews-grid{grid-template-columns:repeat(3,1fr)}.review-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.review-card .thumb{aspect-ratio:16/10;background:var(--surface-2)}.review-card .thumb img{width:100%;height:100%;object-fit:cover}.review-card .content{padding:24px}.review-card h3{margin:8px 0 10px;line-height:1.35}.review-card p{color:var(--muted);font-size:.92rem}
.profile-home{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:70px;align-items:center}.profile-photo{aspect-ratio:4/5;background:var(--surface);border-radius:var(--radius);overflow:hidden;border:1px solid var(--line)}.profile-photo img{width:100%;height:100%;object-fit:cover}.profile-copy h2{font-size:clamp(2.5rem,5vw,5.4rem);line-height:1;letter-spacing:-.05em;margin:12px 0 28px}.profile-copy p{color:var(--muted);font-size:1.03rem}.profile-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin:32px 0;border-top:1px solid var(--line)}.fact{padding:16px 0;border-bottom:1px solid var(--line)}.fact span{display:block;color:var(--muted);font-size:.74rem;text-transform:uppercase;letter-spacing:.12em}.fact strong{display:block;margin-top:5px;font-size:.96rem;font-weight:500}
.cta-panel{padding:clamp(40px,7vw,90px);border-radius:calc(var(--radius) + 8px);background:var(--surface);border:1px solid var(--line);text-align:center}.cta-panel h2{font-size:clamp(2.2rem,5vw,5.5rem);line-height:1.02;letter-spacing:-.05em;margin:0 auto 20px;max-width:900px}.cta-panel p{max-width:650px;margin:0 auto;color:var(--muted)}
.page-hero{padding:calc(var(--header-h) + 110px) 0 65px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(3rem,7vw,7rem);line-height:1;letter-spacing:-.055em;margin:12px 0}.archive-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}.archive-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.archive-card .thumb{aspect-ratio:16/9}.archive-card .thumb img{width:100%;height:100%;object-fit:cover}.archive-card .body{padding:24px}.archive-card h2{margin:7px 0 8px}.prose{max-width:820px}.prose>*:first-child{margin-top:0}.prose p,.prose li{color:color-mix(in srgb,var(--text) 80%,var(--muted))}.single-cover{aspect-ratio:16/8;border-radius:var(--radius);overflow:hidden;background:var(--surface);margin-bottom:48px}.single-cover img{width:100%;height:100%;object-fit:cover}.meta-list{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:32px 0 55px}.meta-item{padding:18px;border-right:1px solid var(--line)}.meta-item:last-child{border-right:0}.meta-item span{display:block;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.11em}.meta-item strong{font-size:.9rem;font-weight:500}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{margin-bottom:16px}.field label{display:block;font-size:.8rem;color:var(--muted);margin:0 0 7px}.field input,.field textarea,.field select{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:12px;color:var(--text);padding:13px 14px}.field textarea{min-height:170px;resize:vertical}.notice{padding:14px 16px;border:1px solid var(--line);border-radius:12px;margin-bottom:18px}.site-footer{padding:50px 0 28px;border-top:1px solid var(--line)}.footer-top{display:flex;justify-content:space-between;gap:40px;align-items:flex-start}.footer-links{display:flex;gap:20px;flex-wrap:wrap;color:var(--muted);font-size:.85rem}.copyright{margin-top:50px;color:var(--muted);font-size:.75rem}.empty-state{padding:44px;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted)}
@media(max-width:900px){.nav{position:fixed;inset:var(--header-h) 16px auto;background:var(--surface);padding:24px;border:1px solid var(--line);border-radius:18px;flex-direction:column;align-items:flex-start;display:none;box-shadow:var(--shadow)}.nav.is-open{display:flex}.menu-toggle{display:block}.works-grid{display:grid;grid-template-columns:1fr}.work-card,.work-card:nth-child(n){grid-column:auto;min-height:420px}.services,.reviews-grid{grid-template-columns:1fr}.profile-home,.contact-grid{grid-template-columns:1fr}.profile-photo{max-width:640px}.archive-grid{grid-template-columns:1fr}.meta-list{grid-template-columns:1fr 1fr}.meta-item:nth-child(2){border-right:0}.meta-item:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:600px){.container{width:min(calc(100% - 28px),var(--max))}.section{padding:80px 0}.hero-content{padding-bottom:44px}.section-head{display:block}.section-copy{margin-top:18px}.work-card,.work-card:nth-child(n){min-height:360px}.form-row{grid-template-columns:1fr}.profile-facts{grid-template-columns:1fr}.meta-list{grid-template-columns:1fr}.meta-item{border-right:0;border-bottom:1px solid var(--line)}.meta-item:last-child{border-bottom:0}.footer-top{display:block}.footer-links{margin-top:26px}}
