*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:7rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Yu Gothic',Meiryo,sans-serif;line-height:1.9}a{color:inherit;text-underline-offset:5px}img{max-width:100%;display:block}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #dc6b21;outline-offset:5px}.skip{position:absolute;left:1rem;top:-5rem;background:white;padding:1rem;z-index:9}.skip:focus{top:1rem}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}header{background:#fff;border-bottom:1px solid #ddd}header .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:106px}.brand{display:flex;align-items:center;gap:15px;text-decoration:none;font-weight:700}.brand img{width:76px;height:76px;object-fit:contain}.brand small{display:block;font-weight:400;font-size:11px;letter-spacing:.14em}.wordmark{font-size:30px;letter-spacing:.06em}nav{display:flex;flex-wrap:wrap;gap:24px;font-size:13px}nav a{text-decoration:none;padding:10px 0}.eyebrow{font-size:12px;letter-spacing:.2em;font-weight:700;color:var(--accent)}h1,h2,h3,p{margin-top:0}h1{font-family:'Yu Mincho',serif;font-weight:500;line-height:1.55;font-size:clamp(34px,4.7vw,66px);letter-spacing:.07em;margin-bottom:26px}h2{font-family:'Yu Mincho',serif;font-size:clamp(27px,3vw,40px);font-weight:500;line-height:1.6}h3{font-size:21px;line-height:1.6}p{max-width:42em}.hero{padding:70px 0 0}.hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:55px}.hero-photo{height:580px;width:100%;object-fit:cover}.hero-copy{padding:20px 0 50px}.lead{font-size:16px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:52px;background:var(--ink);color:#fff;padding:12px 24px;text-decoration:none;border:0;cursor:pointer}.button:after{content:'↗'}.button:hover{background:var(--accent)}.band{padding:24px 0;border-bottom:1px solid var(--line);font-size:13px;letter-spacing:.07em}.band .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}section{padding:90px 0}.section-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:70px}.row{border-top:1px solid var(--line);padding:25px 0;display:grid;grid-template-columns:44px 1fr;gap:18px}.row:last-child{border-bottom:1px solid var(--line)}.num{font-size:13px;color:var(--accent)}.row p{margin-bottom:0}.soft{background:var(--soft)}.pill{font-size:12px;border:1px solid currentColor;padding:3px 9px;display:inline-block;margin-bottom:12px}.values{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.value{border-top:2px solid var(--accent);padding:26px 0}.value b{font-family:'Yu Mincho',serif;font-size:28px;display:block;margin-bottom:10px}.value p{font-size:14px}.details{margin:0}.details div{display:grid;grid-template-columns:100px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:18px 0}.details dt{font-size:13px}.details dd{margin:0}.contact{background:var(--ink);color:#fff}.contact .eyebrow{color:inherit}.contact .button{background:#fff;color:var(--ink)}footer{padding:38px 0;font-size:12px}footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.note{font-size:13px;color:var(--muted)}.contact .note{color:#ddd}.ourvillage .hero-photo{border-radius:48% 48% 0 0}.ourvillage h1{font-family:inherit;font-weight:700}.ourvillage .hero{background:var(--soft)}.agrias .hero{padding-bottom:70px;background:var(--ink);color:#fff}.agrias .hero .eyebrow{color:#cfdd85}.agrias .hero .button{background:#dfeb9a;color:#173d32}.graphic{min-height:450px;border:1px solid #708b70;padding:45px;display:flex;flex-direction:column;justify-content:space-between;background:repeating-linear-gradient(125deg,transparent,transparent 35px,#ffffff08 36px,#ffffff08 38px)}.graphic strong{font-size:clamp(45px,6vw,85px);font-family:Georgia,serif;line-height:1.15;letter-spacing:-.04em}.graphic span{font-size:14px;letter-spacing:.15em}.memo{display:grid;gap:18px}.memo label{display:grid;gap:6px;font-size:14px}.memo input,.memo textarea{width:100%;min-width:0;border:1px solid #82978a;background:white;padding:12px;color:#173d32}.memo textarea{min-height:100px}.memo-actions{display:flex;flex-wrap:wrap;gap:16px}.status{min-height:1.8em;font-size:13px}details{border-top:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:700;min-height:44px}details p{padding-top:12px;font-size:14px}@media(max-width:760px){.wrap{width:calc(100% - 36px)}header .wrap{align-items:flex-start;flex-direction:column;padding:14px 0;gap:8px}.brand img{width:58px;height:58px}.brand small{font-size:10px}nav{gap:18px;font-size:12px;width:100%}.hero{padding-top:35px}.hero-grid,.section-grid{grid-template-columns:1fr;gap:28px}.hero-copy{padding:10px 0 5px}.hero-photo{height:390px}.hero-grid{gap:30px}section{padding:58px 0}.values{grid-template-columns:1fr 1fr;gap:20px}h1{font-size:36px}.details div{grid-template-columns:75px 1fr;gap:12px}.graphic{min-height:320px;padding:28px}.agrias .hero{padding-bottom:36px}footer .wrap{flex-direction:column}.band{font-size:11px}p,dd,a{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Photo-led revision: shared rhythm, individual brand colors */
.hero-photo{border-radius:26px 26px 6px 6px}.button{border-radius:30px}.photo-story{margin:0;min-width:0}.photo-story img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:20px}.photo-story figcaption{font-size:13px;line-height:1.8;margin-top:12px;color:var(--muted)}.photo-story.wide img{aspect-ratio:16/8}.photo-album{display:grid;grid-template-columns:1.2fr 1fr;gap:42px;align-items:start;margin-top:38px}.photo-album .photo-story:nth-child(2){margin-top:80px}.story-heading{max-width:620px}.photo-break{padding:24px 0 70px}.soft .photo-album{margin-bottom:32px}.hero figure{margin:0}.hero figcaption{font-size:11px;padding:10px 0;opacity:.85}.agrias .hero-photo{height:540px}.agrias .hero{background:#eef1df;color:var(--ink)}.agrias .hero .eyebrow{color:var(--accent)}.agrias .hero .button{background:var(--ink);color:white}.video-frame{width:100%;aspect-ratio:16/9;border:0;border-radius:18px;background:#132d22}.video-story{max-width:920px;margin:30px auto 0}.video-story p{font-size:13px;margin-top:14px}.contact-pending{padding:24px 28px;border:1px solid #ffffff66;border-radius:18px}.contact-pending p{margin:0}.row{padding:28px 0}.values{margin-top:32px}.section-grid>*{min-width:0}@media(max-width:760px){.photo-album{grid-template-columns:1fr;gap:28px;margin-top:25px}.photo-album .photo-story:nth-child(2){margin-top:0}.photo-break{padding:10px 0 40px}.photo-story.wide img{aspect-ratio:4/3}.hero-photo,.agrias .hero-photo{height:360px}.contact-pending{padding:20px}.brand small{letter-spacing:.05em}.hero-copy{padding-bottom:10px}}

/* Keep each headline phrase together; scale to the actual text column. */
.hero-copy{min-width:0;container-type:inline-size}.hero-copy h1{font-size:clamp(26px,4vw,48px);font-size:clamp(24px,8.8cqw,48px);letter-spacing:.02em;line-height:1.5}.hero-line{display:block;white-space:nowrap}@media(max-width:760px){.hero-copy h1{font-size:clamp(26px,7.6vw,36px);font-size:clamp(24px,8.8cqw,36px)}}

.agrias .brand .agri-logo{width:195px;height:auto;object-fit:contain}.agri-label{font-size:12px;font-weight:400}@media(max-width:760px){.agrias .brand .agri-logo{width:165px}.agri-label{font-size:11px}}

/* Shared navigation behavior; each site retains its own palette, type and imagery. */
nav{flex-wrap:wrap}nav a{min-height:44px;display:inline-flex;align-items:center}
.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.overview-card{border-top:1px solid var(--line);padding:24px 0}.overview-card h3{font-size:23px}.overview-card p{max-width:36em}
.text-link{display:inline-flex;align-items:center;min-height:44px;font-weight:700}
.detail-heading{padding-top:35px;padding-bottom:25px;max-width:1000px}.detail-heading h1{font-size:clamp(30px,4.5vw,52px);white-space:normal;overflow-wrap:anywhere;line-height:1.5;margin:22px 0}.detail-heading>p{max-width:42em}.back-link{display:inline-flex;align-items:center;min-height:44px;font-size:14px}
.detail-nav{display:flex;flex-wrap:wrap;gap:12px 28px;border-top:1px solid var(--line);padding-top:24px;padding-bottom:32px}.detail-nav a{font-size:14px;overflow-wrap:anywhere}
@media(max-width:760px){.overview-grid{grid-template-columns:1fr;gap:12px}header nav{column-gap:18px;row-gap:0;max-width:100%}.detail-heading{padding-top:22px;padding-bottom:10px}.detail-heading h1{font-size:30px}.detail-nav{flex-direction:column;gap:4px}.overview-card{padding:20px 0}}
