/* Studio nana - homepage only; other pages remain unchanged */
.home-page{max-width:none;padding:0;margin:0;min-height:0}.home-page h1,.home-page h2,.home-page h3{font-weight:500;line-height:1.5}.home-page p{max-width:none}.home-page a{text-decoration:none}.home-page .nana-section-inner{max-width:1160px;margin:auto;padding:0 28px}.nana-eyebrow{font-size:11px!important;letter-spacing:.23em;font-weight:600;color:#9a826c;margin:0 0 20px;text-transform:uppercase}.nana-hero{position:relative;min-height:min(760px,86vh);background:#202321;overflow:hidden;display:flex;align-items:center;color:white}.nana-hero-photo{position:absolute;inset:0}.nana-hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,23,23,.7),rgba(18,23,23,.25) 68%,rgba(18,23,23,.1))}.nana-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 40%;filter:saturate(.8)}.nana-hero-copy{position:relative;z-index:1;width:min(1160px,100%);margin:auto;padding:100px 38px}.nana-hero-copy .nana-eyebrow{color:#e6d6c5}.nana-hero-copy h1{font-size:clamp(34px,5.2vw,70px);letter-spacing:.13em;line-height:1.48;margin:0 0 26px;text-shadow:0 1px 16px #0003}.nana-hero-copy>p:not(.nana-eyebrow){font-size:clamp(14px,1.3vw,17px);line-height:2.2;letter-spacing:.06em}.nana-link{display:inline-flex;align-items:center;gap:22px;margin-top:20px;padding-bottom:9px;border-bottom:1px solid #ac9580;font-size:12px;letter-spacing:.1em}.nana-link.light{color:white;border-color:#ffffff9e}.nana-scroll{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:.2em;display:flex;align-items:center;gap:14px}.nana-scroll span{display:block;height:1px;width:55px;background:white}.nana-section{padding:112px 0}.nana-about{background:#f8f7f3}.nana-about-layout{display:grid;grid-template-columns:1fr .88fr;gap:clamp(35px,8vw,115px);align-items:center}.nana-about-copy h2{font-size:clamp(29px,3.2vw,45px);letter-spacing:.1em;margin:0 0 30px}.nana-about-copy p:not(.nana-eyebrow){font-size:15px;line-height:2.35;color:#4f5352}.nana-about-photo{height:550px;overflow:hidden}.nana-about-photo img{height:100%;width:100%;object-fit:contain;object-position:center center;user-select:none;-webkit-user-drag:none}.nana-about-photo{background:#f8f7f3}.nana-services{background:#fff}.nana-section-heading{text-align:center;margin-bottom:52px}.nana-section-heading h2{font-size:clamp(27px,3vw,42px);letter-spacing:.12em;margin:0 0 15px}.nana-section-heading>p:last-child{color:#6f706c;font-size:14px}.nana-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.nana-service{display:block;color:inherit}.nana-service-image{height:340px;overflow:hidden;background:#eae6df}.nana-service-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.nana-service:hover img,.nana-portfolio-photo:hover img{transform:scale(1.04)}.nana-service-caption{position:relative;padding:20px 5px}.nana-service-caption span{font-size:10px;letter-spacing:.15em;color:#9a826c}.nana-service-caption h3{font-size:19px;margin:6px 25px 5px 0}.nana-service-caption p{font-size:12px;color:#777;margin:0}.nana-service-caption b{position:absolute;right:4px;top:28px;font-size:18px;font-weight:400}.nana-center{text-align:center;margin-top:36px}.nana-outline{display:inline-flex;gap:24px;align-items:center;justify-content:space-between;border:1px solid #bdb6ac;padding:13px 23px;font-size:13px;letter-spacing:.05em;transition:background .2s}.nana-outline:hover{background:#f0ece6}.nana-portfolio{background:#eeece7}.nana-portfolio-grid{display:grid;grid-template-columns:1.15fr 1fr;grid-template-rows:245px 245px;gap:16px}.nana-portfolio-photo{overflow:hidden;display:block;background:#d6d1c8}.nana-portfolio-photo.tall{grid-row:span 2}.nana-portfolio-photo img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.nana-visit{background:#f8f7f3}.nana-visit-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.nana-visit h2{font-size:clamp(27px,3vw,40px);margin:0 0 25px;letter-spacing:.08em}.nana-visit p:not(.nana-eyebrow){font-size:14px;line-height:2.2}.nana-visit-photo{height:350px;overflow:hidden}.nana-visit-photo img{width:100%;height:100%;object-fit:cover}.nana-visit-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.home-page a:focus-visible{outline:3px solid #9a826c;outline-offset:4px}
@media(max-width:850px){.nana-service-grid{gap:14px}.nana-service-image{height:250px}.nana-service-caption h3{font-size:16px}.nana-about-photo{height:440px}.nana-section{padding:76px 0}.nana-visit-layout{gap:30px}}
@media(max-width:640px){.home-page .nana-section-inner{padding:0 20px}.nana-hero{min-height:620px;max-height:none}.nana-hero-photo img{object-position:55% center}.nana-hero-photo:after{background:linear-gradient(90deg,#141818b3,#14181855)}.nana-hero-copy{padding:95px 24px 80px}.nana-hero-copy h1{font-size:clamp(30px,8.3vw,42px)}.nana-hero-copy>p:not(.nana-eyebrow){font-size:13px}.nana-section{padding:66px 0}.nana-about-layout,.nana-visit-layout{grid-template-columns:1fr;gap:35px}.nana-about-photo{height:400px}.nana-service-grid{grid-template-columns:1fr;gap:24px}.nana-service-image{height:300px}.nana-section-heading{margin-bottom:35px}.nana-portfolio-grid{grid-template-columns:1fr 1fr;grid-template-rows:190px 190px;gap:8px}.nana-portfolio-photo.tall{grid-row:span 2}.nana-visit-photo{height:240px}.nana-visit-links{flex-direction:column;align-items:stretch}.nana-outline{width:100%}}
@media(prefers-reduced-motion:reduce){.nana-service-image img,.nana-portfolio-photo img{transition:none}}

/* NEWS: three most recent entries from info.txt, placed above footer */
.nana-news{background:#fff;padding:75px 0 85px}
.nana-news-header{margin-bottom:30px}
.nana-news-header .nana-eyebrow{margin-bottom:8px}
.nana-news-header h2{font-size:clamp(28px,3vw,42px);letter-spacing:.15em;margin:0}
.nana-news-list{border-top:1px solid #d8d4cd}
.nana-news-row{display:grid;grid-template-columns:145px minmax(0,1fr);align-items:start;gap:24px;padding:20px 0;border-bottom:1px solid #e5e1da}
.nana-news-date{font-size:12px;color:#9a826c;letter-spacing:.04em;white-space:nowrap;padding-top:3px}
.nana-news-row p{font-size:14px;line-height:1.8;color:#4f5352;margin:0;overflow-wrap:anywhere}
@media(max-width:640px){.nana-news{padding:60px 0}.nana-news-row{grid-template-columns:1fr;gap:5px;padding:17px 0}.nana-news-row p{font-size:13px}}

/* LINE inquiry button */
.home-page .nana-visit-links .nana-line-button{background:#06C755;color:#fff;border-color:#06C755;font-weight:600;transition:background-color .2s,border-color .2s,transform .2s}
.home-page .nana-visit-links .nana-line-button:hover{background:#05a847;border-color:#05a847;transform:translateY(-1px)}
.home-page .nana-visit-links .nana-line-button:focus-visible{outline:3px solid #087f3c;outline-offset:3px}

/* Keep the top navigation visible while scrolling */
.site-header{position:sticky;top:0;z-index:1000;background:#fff;}

/* Hero: fade in the original photo, then darken at 2 seconds and reveal copy. */
.home-page .nana-hero-photo img{filter:saturate(1) brightness(1)}
.home-page .nana-hero-photo img{opacity:0;animation:nanaHeroPhotoFade 1.2s ease-out 0s both}
@keyframes nanaHeroPhotoFade{from{opacity:0}to{opacity:1}}
.home-page .nana-hero-photo::after{opacity:0;animation:nanaHeroDim 1.5s ease-in-out 2s both}
.home-page .nana-hero-copy{opacity:0;animation:nanaHeroCopyReveal 1.5s ease-out 2.3s both}
@keyframes nanaHeroDim{from{opacity:0}to{opacity:1}}
@keyframes nanaHeroCopyReveal{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.home-page .nana-hero-photo img,.home-page .nana-hero-photo::after,.home-page .nana-hero-copy{animation:none;opacity:1}.home-page .nana-hero-copy{transform:none}}

/* Show white behind the hero image during its initial fade-in. */
.home-page .nana-hero{background:#fff;}
.home-page .nana-hero-photo{background:#fff;}
