/* Portfolio content and responsive refinements */
@media(min-width:901px){.hero .hero-copy h1{font-size:clamp(2rem,3.35vw,3.5rem);line-height:1.6;letter-spacing:-.04em}}
:root{--ink:#594633;--green:#315b47;--deep:#294d3c;--lime:#a9bb7e;--yellow:#efdbac;--paper:#fcfaf5;--cream:#f2ecdf;--muted:#756d60;--line:rgba(89,70,51,.18)}.hero .illustration-hero{height:auto;aspect-ratio:1;background:#fff;border-radius:50% 50% 44% 44%;box-shadow:12px 16px 0 #f2ecdf;overflow:hidden;transform:none;max-width:520px;width:100%;justify-self:center}.illustration-hero img{display:block;width:100%;height:auto}.strength-card{border-radius:22px}.strength-card.dark{transform:none;background:var(--green);color:#fff}.strength-card .line-icon{color:#8a6848}.strength-card.dark .line-icon{color:#efdbac}.trust{background:#f3e7cd}.metrics small{background:transparent}.message{background:var(--paper)}.message .signature{color:#8a6848}.ai-note{border-radius:22px}.plan{border-radius:16px}.contact{background:var(--green)}.contact .light-button{color:var(--green)}.hero:before{border-color:#e8d9c6}@media(max-width:900px){.hero .illustration-hero{max-width:410px;margin-top:2.5rem}}@media(max-width:600px){.hero .illustration-hero{max-width:330px;box-shadow:7px 9px 0 #f2ecdf;margin-bottom:1rem}.hero{padding-bottom:3rem}}
.template-heading{margin:4rem 0 2rem;padding-top:2rem;border-top:1px solid var(--line)}.template-heading h3{font-family:var(--serif);font-size:1.65rem}.template-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.template-grid .work-item h3{font-size:1.1rem;line-height:1.8}.template-grid .work-image{object-fit:cover;object-position:top}.work-item .demo-note{font-size:.8125rem;letter-spacing:0}@media(max-width:900px){.template-grid{grid-template-columns:1fr}.template-grid .work-image{aspect-ratio:1.75;object-fit:contain}}
.photo-profile{align-self:center;width:100%;max-width:none}.profile-photo-frame{overflow:hidden;border-radius:22px;box-shadow:12px 12px 0 rgba(31,77,59,.08)}.profile-photo-frame img{display:block;width:100%;height:auto}.photo-profile figcaption{margin-top:1.7rem}@media(max-width:600px){.profile-photo-frame{border-radius:14px;box-shadow:7px 7px 0 rgba(31,77,59,.08)}}
body{font-size:16px}.reveal{opacity:1;transform:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b78623;outline-offset:5px}img{max-width:100%}.section-index,.eyebrow,.tag,.name-en{font-size:.8rem}.site-header nav a{font-size:.875rem}.case-screens{display:grid;grid-template-columns:minmax(0,1fr) 22%;gap:2rem;align-items:center;margin:3rem 0 1.8rem}.desktop-screen{display:block;border:8px solid #e9ece5;border-radius:12px;overflow:hidden;box-shadow:0 18px 35px #102d2440}.desktop-screen img,.mobile-screen img{width:100%;height:auto;display:block}.mobile-screen{margin:0;border:7px solid #e9ece5;border-radius:25px;overflow:hidden;box-shadow:0 18px 35px #102d2440}.case-link{display:inline-block;color:white;border-bottom:1px solid #aec2b9;padding:.5rem 0}.work-item a{text-decoration:none;color:inherit}.work-image,.own-work{width:100%;aspect-ratio:1.6;object-fit:contain;background:#e9e9e0;display:block;border-radius:4px}.own-work{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2rem;gap:1rem;background:#ede8dc}.own-work img{width:45%;max-height:80px;object-fit:contain}.own-work span{font-family:var(--serif);font-size:1.35rem;text-align:center;line-height:1.9}.work-item .work-description{font-size:1rem;letter-spacing:0;line-height:1.9}.work-item:nth-child(even){margin-top:0}.work-item h3{font-size:1.2rem}.works-more p{font-size:1rem}.tools-list{font-size:.875rem;line-height:2;border-top:1px solid var(--line);padding-top:1rem}.voices article{padding:1.1rem 0;border-bottom:1px solid #1f4d3b33}.voices h3{font-family:var(--serif);font-size:1.2rem;line-height:1.8}.voices p{font-size:1rem}.voices .tag,.voices small{font-size:.8125rem}.metrics p{font-size:.875rem}.metrics small{font-size:.8125rem;line-height:1.9}.trust-links{display:flex;gap:1.5rem;flex-wrap:wrap;margin:2rem 0 1rem}.trust-links a{color:inherit;text-underline-offset:5px;font-size:.875rem}.trust-note{font-size:.875rem;line-height:1.9}.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:stretch}.plan{background:#fff;padding:2rem 1.5rem;display:flex;flex-direction:column;border-top:4px solid #bdc8b9}.plan.featured{border-color:var(--green);box-shadow:0 10px 30px #1f4d3b0d}.plan h3{font-family:var(--serif);font-size:1.7rem;margin:.4rem 0}.plan>p{font-size:.875rem}.plan .amount{font:500 clamp(2rem,3.3vw,3rem) 'DM Sans',sans-serif;letter-spacing:-.04em;margin:1rem 0}.amount small{display:block;font-family:'Noto Sans JP',sans-serif;font-size:.8rem;letter-spacing:0;margin-top:.6rem}.plan .plan-condition{font-size:.8125rem;line-height:1.9;color:var(--green);background:#eff3eb;padding:.8rem}.plan dl{margin-top:auto;padding-top:1rem}.plan dl div{display:flex;justify-content:space-between;gap:.75rem;border-bottom:1px solid var(--line);padding:.7rem 0;font-size:.875rem}.plan dd{margin:0;text-align:right}.plan .text-link{font-size:.875rem;margin-top:1rem}.price-details{margin-top:2.5rem;font-size:.9375rem}.price-details h3{font-size:1.1rem}.options{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.75rem 2rem}.options li{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:.5rem 0;gap:1rem}.fineprint{font-size:.875rem;line-height:2}.faq{background:var(--paper)}.faq details{border-bottom:1px solid var(--line)}.faq summary{padding:1.5rem 2rem 1.5rem 0;cursor:pointer;font-weight:500;line-height:1.8}.faq details p{max-width:850px;line-height:2;margin:0 0 1.5rem;color:var(--muted)}.policies{margin-top:4rem;padding:2rem;background:#ede8dc}.policies h3{font-family:var(--serif);font-size:1.5rem;margin:0}.contact address{font-style:normal;display:grid;gap:.9rem;margin:1rem 0 2rem;overflow-wrap:anywhere}.contact address a{color:white;text-decoration:none}.contact-tel{font:500 1.65rem 'DM Sans',sans-serif}.contact small{color:#d5e1d9;font-size:.8125rem}.contact .light-button{margin-top:1.5rem}.section-pad{scroll-margin-top:70px}.menu-button em{font-size:.65rem}footer>p{font-size:.8125rem}.copyright{font-size:.75rem}
@media(max-width:1000px){.plans{grid-template-columns:1fr}.plan{padding:2rem}.plan .amount{font-size:2.8rem}.plan dl{margin-top:0}.case-screens{gap:1rem}.own-work span{font-size:1.1rem}}
@media(max-width:600px){body{font-size:16px}.hero h1{font-size:clamp(1.5rem,6.7vw,2.35rem)}.hero-lead br{display:none}.case-screens{grid-template-columns:minmax(0,1fr) 26%;gap:.6rem}.desktop-screen{border-width:4px;border-radius:7px}.mobile-screen{border-width:3px;border-radius:12px}.options{grid-template-columns:1fr}.policies{padding:1.3rem}.faq summary{padding-right:.5rem}.trust-links{flex-direction:column;gap:1rem}.own-work span{font-size:1.2rem}.work-image{aspect-ratio:1.45}.contact h2{font-size:1.8rem}.plan .amount{font-size:2.7rem}.case-title h2{font-size:2rem}.hero-visual{margin-top:2rem}.service-list article{grid-template-columns:30px 1fr}.career{flex-wrap:wrap}}
