*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f1e9;color:#111;font-family:Arial,Helvetica,sans-serif}.wrap{max-width:1440px;margin:auto;padding:0 42px}.top{position:sticky;top:0;z-index:5;background:#f4f1e9ee;border-bottom:1px solid #d8d3c8}.topin{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-weight:800;letter-spacing:.12em}.sub,.eyebrow{font-size:10px;letter-spacing:.24em}.sub{margin-top:6px}nav{display:flex;align-items:center;gap:22px}nav a{color:inherit;text-decoration:none}.lang{display:flex;border:1px solid #bbb;border-radius:20px;overflow:hidden}.lang a{padding:7px 11px}.lang .on{background:#111;color:white}.hero{padding:72px 0 48px}.eyebrow{font-weight:700}h1{font-size:clamp(50px,7vw,96px);line-height:.94;letter-spacing:-.055em;margin:20px 0}.lead{font-size:19px;line-height:1.55;max-width:760px;color:#444}.button{display:inline-block;background:#111;color:#fff;text-decoration:none;padding:15px 22px;margin-top:14px}.section{padding:55px 0;border-top:1px solid #d8d3c8}h2{font-size:clamp(38px,5vw,68px);letter-spacing:-.04em;margin:10px 0 30px}.shot{background:#fff;border:1px solid #d8d3c8;padding:10px}.shot img{display:block;width:100%;height:auto}.note{font-size:17px;line-height:1.6;color:#555;max-width:900px}.about{display:grid;grid-template-columns:1fr 1fr;gap:60px}.about p{font-size:18px;line-height:1.7;color:#444}.contact{font-size:clamp(28px,4vw,48px);font-weight:700}.contact a{color:inherit}.footer{padding:32px 0 50px;border-top:1px solid #d8d3c8;color:#777}@media(max-width:800px){.wrap{padding:0 20px}.topin{padding:18px 0;align-items:flex-start}.sub{display:none}nav{gap:10px;flex-wrap:wrap;justify-content:flex-end}.about{grid-template-columns:1fr}h1{font-size:52px}}
.profile{display:grid;grid-template-columns:minmax(240px,360px) 1fr;gap:58px;align-items:start}.portrait{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 30%;border:1px solid #d8d3c8;background:#ddd}.profile p{font-size:18px;line-height:1.7;color:#444;margin-top:0}.profile-note{font-size:14px!important;color:#777!important;border-top:1px solid #d8d3c8;padding-top:18px;margin-top:28px!important}@media(max-width:800px){.profile{grid-template-columns:1fr}.portrait{max-width:420px}}

/* v4.1 — About layout: compact portrait beside text */
.profile{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:72px;align-items:start}
.profile .portrait{grid-column:2;grid-row:1;width:280px;height:350px;aspect-ratio:auto;object-fit:cover;object-position:center 24%;border:1px solid #d8d3c8;background:#ddd}
.profile .profile-copy{grid-column:1;grid-row:1}
@media(max-width:800px){
  .profile{grid-template-columns:1fr;gap:28px}
  .profile .portrait{grid-column:1;grid-row:1;width:min(100%,280px);height:350px}
  .profile .profile-copy{grid-column:1;grid-row:2}
}


/* v4.2 About: one composed editorial block; photo can never become a full-width standalone image */
.profile{display:none!important}
.about-card{display:grid!important;grid-template-columns:minmax(0,1fr) 300px!important;gap:64px!important;align-items:center!important;max-width:1080px!important;margin:0 auto!important;padding:38px 0 18px!important}
.about-copy{min-width:0!important}
.about-kicker{font-size:11px!important;letter-spacing:.24em!important;font-weight:800!important;margin-bottom:16px!important}
.about-copy h3{font-size:clamp(36px,4.2vw,60px)!important;line-height:1.02!important;letter-spacing:-.035em!important;margin:0 0 26px!important}
.about-copy p{font-size:17px!important;line-height:1.68!important;color:#444!important;margin:0 0 20px!important}
.about-photo{display:block!important;width:300px!important;height:375px!important;max-width:300px!important;min-width:300px!important;object-fit:cover!important;object-position:center 23%!important;border:1px solid #d8d3c8!important;background:#ddd!important}
.about-card .profile-note{font-size:13px!important;color:#777!important;border-top:1px solid #d8d3c8!important;padding-top:16px!important;margin-top:24px!important}
@media(max-width:800px){
 .about-card{grid-template-columns:minmax(0,1fr) 150px!important;gap:22px!important;align-items:start!important;padding-top:22px!important}
 .about-photo{width:150px!important;height:188px!important;min-width:150px!important;max-width:150px!important}
 .about-copy h3{font-size:32px!important}
 .about-copy p{font-size:15px!important}
}
@media(max-width:520px){
 .about-card{grid-template-columns:1fr!important}
 .about-photo{grid-row:1!important;width:180px!important;height:225px!important;min-width:180px!important;max-width:180px!important}
}
