/*
Theme Name: SALSIA Official
Theme URI: https://salsia.jp
Author: SALSIA
Description: SALSIA公式ホームページ。外観→カスタマイズから画像と主要文章を変更できます。
Version: 1.0.2
Requires PHP: 7.4
Text Domain: salsia-official
*/
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#4d3931;background:#faf8f5;font-family:"Hiragino Mincho ProN","Yu Mincho",Georgia,serif}a{color:inherit}header{height:88px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:10px 5%;position:sticky;top:0;z-index:3;border-bottom:1px solid #ede8e2}header img{width:112px;height:67px;object-fit:contain}nav{display:flex;gap:22px;align-items:center;font-family:sans-serif;font-size:12px}nav a{text-decoration:none}.button{display:inline-block;border-radius:50px;background:#a98770;color:#fff;text-decoration:none;padding:16px 27px;font-family:sans-serif;font-size:13px;font-weight:600}.button:hover{background:#846650}.hero{display:grid;grid-template-columns:52% 48%;min-height:660px;background:#f3ede5}.hero-copy{padding:120px 9% 80px 12%}.eyebrow{font:italic 12px Georgia,serif;color:#ad907a;letter-spacing:.16em}.hero h1{font-size:clamp(28px,3.1vw,48px);line-height:1.65;letter-spacing:.05em;font-weight:400;margin:34px 0}.hero p,.lead{font-size:15px;line-height:2.3;color:#76655a}.hero-photo img{width:100%;height:100%;object-fit:cover}.hero-links{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:32px}.textlink{font-size:13px;text-decoration:none;border-bottom:1px solid #ad907a;padding-bottom:6px}.section{padding:110px 7%}.wrap{max-width:1150px;margin:auto}.narrow{max-width:790px;margin:auto}.center{text-align:center}.section h2{font-size:clamp(28px,3vw,42px);font-weight:400;line-height:1.6;letter-spacing:.04em;margin:16px 0 26px}.section h3{font-size:22px;font-weight:400;line-height:1.5}.section p{line-height:2.2;font-size:14px;color:#6d615a}.sand{background:#f0e9e1}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.story-grid img{width:100%;height:580px;object-fit:cover}.story-grid p{white-space:pre-line}.factrow{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:55px 0 36px;border-top:1px solid #d9c9bb;border-bottom:1px solid #d9c9bb;padding:30px 0}.factrow div{text-align:center}.factrow strong{display:block;font:36px Georgia,serif;color:#92745f;margin:10px 0}.factrow small{font-size:11px;color:#7e6e62}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.photo-grid img{width:100%;height:290px;object-fit:cover}.program{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:50px}.tile{padding:34px;background:#fff;border:1px solid #e9e1d9}.tile .number{font:italic 13px Georgia;color:#b99a81}.tile h3{font-size:20px}.support{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:50px}.support .tile{background:#f7f2ed}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:50px}.profile{background:#fff}.profile img{width:100%;height:380px;object-fit:cover;object-position:center 25%}.profile-copy{padding:30px}.profile .role{font-family:sans-serif;color:#a98770;font-size:12px}.widephoto{width:100%;max-height:440px;object-fit:cover;margin-bottom:70px}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:45px}.video-frame{position:relative;aspect-ratio:16/9;background:#ddd}.video-frame iframe{width:100%;height:100%;border:0}.video-card h3{font-size:18px}.tuition{background:#fff;border:1px solid #e2d5c9;padding:45px;margin:38px auto;max-width:650px}.price{font:52px Georgia,serif;color:#886a55;margin:16px 0}.price small{font:16px sans-serif}.faq{max-width:850px;margin:45px auto 0}.faq details{border-bottom:1px solid #d9cbbd;padding:24px 10px}.faq summary{cursor:pointer;font-size:16px}.cta{padding:100px 7%;text-align:center;background:#493b35;color:#fff}.cta h2{font-size:36px;font-weight:400;line-height:1.7}.cta p{color:#e0d4cc;line-height:2.2}footer{background:#352b27;color:#d9c9bd;text-align:center;padding:36px;font:12px sans-serif}.note{font:11px/1.8 sans-serif;color:#8d8178}.preview-label{background:#e7dbce;padding:8px;text-align:center;font:11px sans-serif;color:#725947}@media(max-width:850px){header{height:70px}header img{width:90px}nav a:not(.button){display:none}nav .button{padding:12px;font-size:11px}.hero{grid-template-columns:1fr}.hero-copy{padding:65px 7%}.hero-photo{height:380px}.section{padding:75px 6%}.story-grid,.profile-grid,.video-grid{grid-template-columns:1fr}.story-grid img{height:350px}.factrow{grid-template-columns:1fr 1fr}.program{grid-template-columns:1fr 1fr}.support{grid-template-columns:1fr 1fr}.photo-grid img{height:150px}.widephoto{margin-bottom:35px}.price{font-size:38px}}@media(max-width:480px){.program,.support{grid-template-columns:1fr}.hero h1{font-size:30px}.photo-grid{gap:5px}.photo-grid img{height:120px}.cta h2{font-size:26px}}
/* Profile portrait: keep the entire head visible */
.profile img[alt="講師 颯一"]{height:460px;object-fit:contain;object-position:center top;background:#f3f5f7}
/* Instagram visible on desktop and mobile */
nav a.instagram-nav{display:inline-flex;align-items:center;gap:6px;color:#875b4d;font-weight:700;border-bottom:2px solid #b48b75;padding-bottom:5px}
.instagram-section{background:#f3ece6;text-align:center;padding:65px 20px 75px}
.instagram-section .ig-heading{font-size:27px;font-weight:400;margin:8px 0 12px}
.instagram-section p{font-size:14px;line-height:2;color:#74665c}
.instagram-button{display:inline-flex;align-items:center;gap:12px;padding:17px 32px;border-radius:40px;background:#fff;border:1px solid #b28d77;color:#694c40;text-decoration:none;font:700 14px sans-serif;box-shadow:0 4px 16px #8b6e5a18;margin-top:14px}
.instagram-button:hover{background:#e9dcd2}
@media(max-width:850px){nav a.instagram-nav{display:inline-flex!important;font-size:12px;white-space:nowrap}nav{gap:11px}nav .button{padding:11px 13px}.profile img[alt="講師 颯一"]{height:400px}}
@media(max-width:480px){header{padding:8px 3%}header img{width:75px}nav a.instagram-nav{font-size:11px}.instagram-section{padding:50px 20px}}

body.admin-bar header{top:32px}@media(max-width:782px){body.admin-bar header{top:46px}}

/* Readable hero headline on medium screens */
.hero-copy{padding-left:8%;padding-right:6%}.hero h1{font-size:clamp(27px,2.7vw,43px);letter-spacing:0.015em;overflow-wrap:normal;word-break:normal}
@media(max-width:1100px){.hero{grid-template-columns:54% 46%}.hero h1{font-size:clamp(25px,2.65vw,36px)}}
@media(max-width:850px){.hero h1{font-size:clamp(27px,5vw,38px)}}

/* SALSIA 1.0.2: Mobile-first final overrides (after all desktop breakpoints). */
@media (max-width:850px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  .hero{display:flex!important;flex-direction:column!important;grid-template-columns:none!important;min-height:0!important}
  .hero-photo{order:0;width:100%;height:auto!important;aspect-ratio:16/10;overflow:hidden}
  .hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%}
  .hero-copy{order:1;width:100%;min-width:0;padding:35px 6% 48px!important}
  .hero h1{font-size:clamp(26px,6vw,36px)!important;line-height:1.55;letter-spacing:0;overflow-wrap:anywhere;word-break:normal;margin:20px 0}
  .hero p{font-size:14px;line-height:1.95}
  .hero p br{display:none}
  .hero-links{gap:16px;align-items:stretch}
  .hero-links .button{text-align:center}
  .story-grid,.profile-grid,.video-grid{grid-template-columns:minmax(0,1fr)!important}
  .story-grid img{width:100%;height:auto;max-height:430px;object-fit:cover}
  .section{padding:66px 6%}
  .section h2{font-size:clamp(25px,6vw,34px)}
  .cta{padding:70px 6%}
  .cta h2{font-size:clamp(25px,6vw,32px)}
  .cta h2 br{display:none}
  .tuition{padding:26px 18px}
  .price{font-size:clamp(30px,8vw,42px)}
  .profile img[alt="講師 颯一"]{height:auto;max-height:490px;object-fit:contain;object-position:center top}
  .salsia-video{aspect-ratio:16/9}
}
@media(max-width:480px){
  header{height:64px;padding:6px 4%}
  header img{width:72px;height:52px}
  nav{gap:7px}
  nav a.instagram-nav{font-size:10px}
  nav .button{font-size:10px;padding:11px 10px;white-space:nowrap}
  .hero-photo{aspect-ratio:16/11}
  .hero-copy{padding:28px 6% 42px!important}
  .hero h1{font-size:clamp(25px,7vw,32px)!important}
  .hero-links{flex-direction:column}
  .hero-links .button{width:100%}
  .photo-grid{grid-template-columns:1fr 1fr;gap:8px}
  .photo-grid img{height:150px}
  .factrow{gap:12px}
  .factrow strong{font-size:28px}
  .section p{font-size:14px;line-height:2}
}
