/* Pachira — a photographic, editorial identity. */
:root{--ink:#143f35;--emerald:#087b60;--mint:#d9eee5;--paper:#edf4ee;--line:#174e3e30;--muted:#506b60;--serif:'Hiragino Mincho ProN','Yu Mincho',Georgia,serif;--gutter:clamp(24px,6vw,100px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.9 'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:#18bd8833}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2{font-weight:400}a,button,input,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #22aa80;outline-offset:5px}a:hover{text-decoration-thickness:1px}.skip{position:fixed;top:-100px;left:24px;z-index:50;background:#fff;padding:12px 20px}.skip:focus{top:12px}[hidden]{display:none!important}
header{position:absolute;inset:38px 3.5% auto;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 25px;border:1px solid #ffffffa8;border-radius:15px;background:#f2fff0e8;box-shadow:0 10px 30px #003f2921}.brand{font:38px/1 Georgia,serif;letter-spacing:-.045em}.brand span{display:block;font:12px/1.5 sans-serif;letter-spacing:.12em;margin-top:7px}nav{display:flex;align-items:center;gap:30px}nav>a{font-size:14px;min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}.nav-contact{background:var(--emerald);color:white;border-radius:8px;padding:12px 22px;gap:22px;transition:background .2s}.nav-contact:hover{background:#075d49}
.hero{position:relative;isolation:isolate;min-height:860px;height:calc(100svh - 32px);max-height:1050px;margin:16px;border-radius:24px;overflow:hidden;color:#f5fff5}.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-photo{object-fit:cover;object-position:70% center;z-index:-3}.hero-shade{background:linear-gradient(90deg,#003f39b8,#00412f80 35%,#04442d05 75%),linear-gradient(0deg,#043e34c7,transparent 46%);z-index:-2}.hero-copy{position:relative;padding:185px 0 255px;margin-left:6%;width:56%;max-width:790px}.eyebrow{font-size:12px;font-weight:500;letter-spacing:.16em}.hero .eyebrow{color:#d0ead8;margin-bottom:28px}.hero h1{font:400 clamp(46px,5.1vw,78px)/1.55 var(--serif);letter-spacing:.025em;margin-bottom:26px;text-shadow:0 2px 22px #00241830}.hero h1 em{font-style:normal;color:#e3ffd8}.hero-description{font-size:16px;line-height:2.1;color:#e1f1e6;margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:54px;border:1px solid #e6f9e983;padding:9px 11px 9px 21px;border-radius:32px;background:#e9fff211;color:#f6fff8;font-size:14px;transition:background .2s}.button span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#e6f6dc;color:#214e37;font-size:20px}.button:hover{background:#e9fff229}.connection-map{position:absolute;bottom:80px;left:6%;right:6%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#f4fff217;border:1px solid #edfff14d;border-radius:12px;overflow:hidden}.connection-node{display:grid;grid-template-columns:1fr auto;gap:2px 16px;padding:21px 25px;min-width:0;align-items:center;transition:background .2s}.connection-node+.connection-node{border-left:1px solid #edfff14d}.connection-node span{font-size:12px;letter-spacing:.1em;color:#d6ebdc}.connection-node b{font-size:18px;font-weight:500;grid-column:1;white-space:nowrap}.connection-node small{font-size:14px;grid-column:2;grid-row:1/3;white-space:nowrap}.connection-node:hover{background:#effff219}.hero-bottom{position:absolute;bottom:24px;left:6%;right:6%;display:flex;justify-content:space-between;gap:24px;font-size:12px;letter-spacing:.08em;color:#daecde}.motion-toggle{position:absolute;top:154px;right:5%;min-height:44px;border:1px solid #efffeb70;border-radius:24px;background:#efffead9;color:#174938;padding:8px 15px;font-size:12px}
.section{padding:110px var(--gutter);max-width:1680px;margin:0 auto}.about{display:grid;grid-template-columns:1.15fr 1fr;gap:9%;align-items:center;padding-top:125px;padding-bottom:125px}.large-word{font:clamp(56px,6.2vw,92px)/1.12 Georgia,serif;letter-spacing:-.065em;margin:30px 0}.large-word i{font-weight:400;color:#288568}.chapter-label,.section-number{font-size:14px;color:var(--muted)}.about-copy{max-width:540px}.about-copy h2{font:400 clamp(28px,3vw,40px)/1.7 var(--serif);margin:20px 0 24px}.about-copy>p{margin-bottom:20px;color:var(--muted);line-height:2.15}.text-link{display:inline-flex;align-items:center;min-height:48px;border-bottom:1px solid #2a7860;padding:10px 0;font-size:14px;margin-top:10px}.text-link:hover{color:var(--emerald)}
.business{background:#d6eae0;max-width:none;border-radius:28px 28px 0 0}.chapter-line{display:flex;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid var(--line);font-size:12px;letter-spacing:.12em;color:#315f4d;margin-bottom:50px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:45px}.section-heading h2{font:400 clamp(32px,3.3vw,49px)/1.6 var(--serif);letter-spacing:.015em;margin-top:18px}.section-heading>p{font-size:16px;line-height:2;color:var(--muted)}.business-layout{display:grid;grid-template-columns:.92fr 1.08fr;gap:7%;align-items:start}.business-photo{position:sticky;top:40px;border-radius:130px 16px 16px 16px;overflow:hidden;isolation:isolate;aspect-ratio:4/5;min-width:0}.business-photo img{width:100%;height:100%;object-fit:cover;object-position:64% center}.business-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#084e3cbd,transparent 70%);z-index:1}.business-photo figcaption{position:absolute;bottom:35px;left:35px;color:#efffef;z-index:2}.business-photo figcaption span{font-size:12px;letter-spacing:.16em}.business-photo figcaption strong{display:block;font:48px/1.12 Georgia,serif;letter-spacing:-.045em;margin-top:12px}.connection-stories{min-width:0}.connection-story{padding:30px 0;border-top:1px solid #1c6a4d3b;display:grid;grid-template-columns:44px 1fr;column-gap:12px;scroll-margin-top:50px}.connection-story:first-child{padding-top:0;border-top:0}.story-art{display:contents}.story-art>span{grid-column:1;grid-row:1/5;font:italic 24px/1.8 Georgia,serif;color:#4c826c}.story-art>strong{grid-column:2;font:43px/1.1 Georgia,serif;letter-spacing:-.04em;color:#20684f;margin-bottom:18px}.story-art small{display:none}.connection-story>div:not(.story-art){grid-column:2}.connection-story .eyebrow{display:none}.connection-story h3{font-size:21px;font-weight:500;line-height:1.6;margin-bottom:12px}.connection-story p{font-size:16px;line-height:2;color:#476459}.card-foot{grid-column:2;font-size:12px;color:#567666;margin-top:17px}.story-link{grid-column:2;justify-self:start;min-height:44px;display:inline-flex;align-items:center;font-size:14px;border-bottom:1px solid #548c70;margin-top:8px}.story-link:hover{color:#078667}
.vision{position:relative;isolation:isolate;margin:0;min-height:550px;padding:75px var(--gutter);overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:35px;color:#f5fff5}.vision>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 43%;z-index:-3}.vision:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#00694fc7,#0646379c);z-index:-2}.vision-word{font:clamp(65px,8vw,115px)/.98 Georgia,serif;letter-spacing:-.055em;color:#d8f4de}.vision-glass{max-width:560px;border-left:1px solid #effff14d;padding:24px 0 24px 40px}.vision-glass h2{font:400 clamp(27px,3vw,39px)/1.7 var(--serif);margin:22px 0}.vision-glass p:last-child{font-size:16px;line-height:2.2;color:#d2e8da}
.news-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:8%;padding-top:95px;padding-bottom:95px}.news-section .section-heading{display:block;margin:0}.news-section .section-heading>p{margin-top:20px}.news-section h2{font-size:36px}.news-entry{padding:25px 0;border-top:1px solid var(--line)}.news-entry:last-child{border-bottom:1px solid var(--line)}.news-entry time{font-size:14px;color:#477861}.news-entry h3{font-size:21px;font-weight:500;margin:9px 0}.news-entry p{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted)}#news-list>p{padding:25px 0;border-top:1px solid var(--line);font-size:16px;color:var(--muted)}.retry-button{font:inherit;min-height:44px;padding:8px 20px;border:1px solid #3c765e;border-radius:6px;background:transparent;color:inherit}.company{display:grid;grid-template-columns:.7fr 1.3fr;gap:8%;border-top:1px solid var(--line);padding-top:95px}.company h2{font:clamp(50px,5vw,76px)/1.25 Georgia,serif;letter-spacing:-.06em;margin:24px 0 15px}.company>div>p:last-of-type{font-size:16px;color:var(--muted)}.company-location{display:flex;flex-direction:column;margin-top:55px;color:#3b7960}.company-location span{font-size:12px;letter-spacing:.15em}.company-location strong{font:italic 50px/1.5 Georgia,serif;letter-spacing:-.035em}dl{margin:0}dl>div{display:grid;grid-template-columns:110px 1fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}dl>div:first-child{border-top:1px solid var(--line)}dt{font-size:14px;color:#4e725f}dd{margin:0;font-size:16px;overflow-wrap:anywhere}dd a{display:inline-block;text-decoration:underline;text-underline-offset:5px;min-height:36px}
.contact-section{max-width:none;background:linear-gradient(120deg,#b8dfce,#d2eade 72%);border-radius:28px 28px 0 0}.contact-section .section-heading{margin-bottom:65px}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:start}.contact-layout>*{min-width:0}.contact-details{position:sticky;top:60px;padding-top:10px}.contact-details>p:first-child{font-size:16px}.contact-phone{display:block;font:clamp(28px,3.1vw,46px)/1.8 Georgia,serif;letter-spacing:-.025em;margin:15px 0 0}.contact-details .caption{font-size:14px;color:#506f60;line-height:1.9;max-width:350px;margin-top:28px}#contact-form{padding:36px;border:1px solid #effff0c9;background:#f3fff057;border-radius:18px;box-shadow:0 18px 60px #14583c0a}#contact-form>p:first-child{font-size:14px;color:#4a6958;margin-bottom:20px}label{display:block;font-size:15px;margin:20px 0 8px}label span{font-size:12px;color:#4c725d;margin-left:10px}input:not([type=checkbox]),textarea{width:100%;display:block;min-height:50px;padding:13px 15px;font:16px/1.7 sans-serif;color:var(--ink);background:#f1f9ef;border:1px solid #6eaa8d75;border-radius:7px}input::placeholder,textarea::placeholder{color:#6b8073}textarea{resize:vertical}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:#ac3338;outline:2px solid #ac333830}.form-note{font-size:14px;color:#4d6d5a;line-height:1.9;margin:24px 0}.consent{display:flex;align-items:center;gap:12px;min-height:48px;font-size:15px}.consent input{width:23px;height:23px;accent-color:var(--emerald);flex-shrink:0}.form-status{font-size:16px;white-space:pre-wrap;overflow-wrap:anywhere;margin:16px 0}.form-status.error{color:#9b252f}.form-status.success{color:#085c41}.submit-button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:57px;padding:15px 23px;border:1px solid #00785b;border-radius:8px;background:var(--emerald);color:#fff;font:500 16px/1.6 sans-serif;transition:background .2s}.submit-button:hover{background:#086249}.submit-button:disabled{opacity:.6;cursor:wait}.honey{position:absolute;left:-10000px;opacity:0}
footer{background:#087b60;color:#e1f4e8;padding:55px var(--gutter) 25px;overflow:hidden}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-top>p{font-size:14px}.back-top{font-size:14px;min-height:44px;display:inline-flex;align-items:center;border-bottom:1px solid #e4f4e577}.footer-word{font:clamp(95px,22vw,330px)/1.12 Georgia,serif;letter-spacing:-.075em;margin:35px 0 15px;color:#c7e8d6;user-select:none}.footer-bottom{border-top:1px solid #e5fbed44;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:.04em}
.motion-on .hero-photo{animation:hero-breathe 24s ease-in-out infinite alternate;transform-origin:70% 50%}.motion-on .vision>img{animation:hero-breathe 28s ease-in-out infinite alternate}.motion-on .hero-copy{animation:hero-arrive .85s ease-out both}.motion-on .reveal-item{transition:opacity .65s ease,translate .65s ease}.motion-on .reveal-pending{opacity:0;translate:0 20px}.reveal-pending:focus-within{opacity:1!important;translate:0!important}.tab-hidden .hero-photo,.tab-hidden .vision>img{animation-play-state:paused}@keyframes hero-breathe{from{transform:scale(1)}to{transform:scale(1.045)}}@keyframes hero-arrive{from{opacity:0;translate:0 15px}to{opacity:1;translate:0 0}}
@media(min-width:1600px){.hero-copy{padding-top:210px}.section{padding-inline:max(var(--gutter),calc((100vw - 1450px)/2))}}
@media(max-width:1100px){header{padding:15px 20px}nav{gap:20px}.hero-copy{width:67%}.connection-node{padding:19px 18px;grid-template-columns:1fr}.connection-node small{grid-column:1;grid-row:auto}.connection-node b{font-size:17px}.hero{min-height:850px}.business-layout{gap:5%;grid-template-columns:.85fr 1.15fr}.business-photo figcaption{left:25px;bottom:25px}.business-photo figcaption strong{font-size:37px}.business-photo{border-top-left-radius:95px}.vision-glass{padding-left:25px}.vision-word{font-size:80px}.contact-layout{gap:5%}.contact-phone{font-size:32px}}
@media(max-width:760px){:root{--gutter:24px}html{scroll-padding-top:30px}header{inset:25px 25px auto;padding:14px 16px;border-radius:12px}.brand{font-size:31px}.brand span{font-size:12px;letter-spacing:.02em;margin-top:5px}nav{gap:0}nav>a:not(.nav-contact){display:none}.nav-contact{font-size:13px;padding:10px 13px;gap:10px;min-height:46px}.hero{margin:10px;border-radius:20px;min-height:0;height:auto;max-height:none;padding-bottom:30px}.hero-photo{object-position:65% center}.hero-shade{background:linear-gradient(90deg,#004235c7,#0749363b),linear-gradient(0deg,#073c32de,transparent 70%)}.hero-copy{padding:155px 0 55px;width:auto;margin:0 25px;max-width:none}.hero .eyebrow{font-size:12px;letter-spacing:.09em;margin-bottom:25px}.hero h1{font-size:clamp(36px,9vw,56px);line-height:1.6;letter-spacing:0;margin-bottom:22px}.hero-description{font-size:16px;margin-bottom:25px}.button{font-size:14px;gap:25px}.connection-map{position:relative;inset:auto;margin:0 25px 25px;grid-template-columns:1fr;background:#e9fff210}.connection-node{grid-template-columns:1fr auto;padding:14px 17px;gap:0 10px}.connection-node+.connection-node{border-left:0;border-top:1px solid #edfff14d}.connection-node span{font-size:12px;letter-spacing:.06em}.connection-node b{font-size:16px}.connection-node small{grid-column:2;grid-row:1/3;font-size:13px}.hero-bottom{position:relative;inset:auto;margin:0 25px;font-size:12px;letter-spacing:0;flex-wrap:wrap;gap:5px}.hero-bottom>a{min-height:44px;display:inline-flex;align-items:center}.hero-bottom>span{display:flex;align-items:center}.motion-toggle{top:auto;bottom:325px;right:30px;font-size:12px;min-height:40px;padding:8px 13px}.section{padding:75px var(--gutter)}.about{grid-template-columns:1fr;gap:45px;padding-top:75px;padding-bottom:80px}.large-word{font-size:clamp(51px,12.5vw,79px);margin:24px 0}.about-copy{max-width:none}.about-copy h2{font-size:30px;margin:18px 0 22px}.about-copy>p{font-size:16px}.chapter-line{font-size:12px;margin-bottom:35px;flex-wrap:wrap;gap:8px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:31px;margin-top:16px}.section-heading>p{margin-top:20px;font-size:16px}.business{border-radius:22px 22px 0 0}.business-layout{grid-template-columns:1fr;gap:38px}.business-photo{position:relative;top:auto;aspect-ratio:4/3;max-height:360px;border-radius:70px 12px 12px 12px}.business-photo img{object-position:65% 54%}.business-photo figcaption{bottom:24px;left:25px}.business-photo figcaption strong{font-size:38px}.connection-story{grid-template-columns:33px 1fr;column-gap:10px;padding:30px 0}.story-art>strong{font-size:40px;margin-bottom:16px}.story-art>span{font-size:21px}.connection-story h3{font-size:20px}.vision{min-height:560px;display:flex;flex-direction:column;align-items:flex-start;gap:40px;padding:50px 28px}.vision-word{font-size:76px;line-height:1}.vision-glass{border-left:0;border-top:1px solid #effff14d;padding:28px 0 0}.vision-glass h2{font-size:28px;margin:20px 0}.vision-glass p:last-child{font-size:16px}.news-section{grid-template-columns:1fr;gap:30px}.news-section h2{font-size:32px}.news-entry h3{font-size:20px}.company{grid-template-columns:1fr;gap:32px}.company h2{font-size:60px}.company-location{display:none}dl>div{grid-template-columns:82px 1fr;gap:15px;padding:22px 0}dd{font-size:15px;line-height:1.9}.contact-section .section-heading{margin-bottom:32px}.contact-layout{grid-template-columns:1fr;gap:35px}.contact-details{position:static;padding:0}.contact-phone{font-size:35px}.contact-details .caption{max-width:none}.contact-section{border-radius:22px 22px 0 0}#contact-form{padding:24px 18px;border-radius:14px}.form-note{font-size:14px}.consent{font-size:14px}.submit-button{font-size:15px;padding:15px 16px}footer{padding:40px 24px 25px}.footer-top{flex-wrap:wrap;gap:25px}.footer-top>p{flex-basis:100%;order:3}.footer-word{font-size:23vw;line-height:1.2;margin:30px 0 25px;letter-spacing:-.07em}.footer-bottom{flex-wrap:wrap;gap:8px}}
@media(max-width:370px){header{inset:23px 23px auto;padding:12px}.brand{font-size:27px}.brand span{font-size:12px}.nav-contact{font-size:12px;padding:9px 10px;gap:5px}.hero-copy{margin-inline:20px}.hero h1{font-size:34px}.connection-map{margin-inline:20px}.connection-node{padding:12px;grid-template-columns:1fr}.connection-node small{grid-column:1;grid-row:auto}.hero-bottom{margin-inline:20px}.motion-toggle{bottom:390px}.contact-phone{font-size:31px}#contact-form{padding:22px 14px}.large-word{font-size:48px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-item{opacity:1!important;translate:none!important}}

/* Compact, non-overlapping mobile navigation and motion control. */
@media(max-width:760px){.hero-copy{padding-top:145px;padding-bottom:40px}.hero .eyebrow{margin-bottom:22px}.hero-description{margin-bottom:22px}.connection-map{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px}.connection-node{grid-template-columns:1fr;gap:8px;padding:14px 10px;align-content:start;min-height:102px}.connection-node+.connection-node{border-top:0;border-left:1px solid #edfff14d}.connection-node span{overflow-wrap:anywhere;line-height:1.5}.connection-node b{display:none}.connection-node small{grid-column:1;grid-row:auto;white-space:normal;font-size:14px;line-height:1.6}.motion-toggle{position:relative;inset:auto;margin:0 25px 12px;min-height:44px;display:inline-flex;align-items:center}.hero-bottom{align-items:center}.hero-bottom>span{display:none}.hero-bottom>a{min-height:35px}.hero{min-height:0}}

/* Japanese labels, supplied brand image, and landscape service photography. */
.brand-logo{display:inline-flex;align-items:center;flex-shrink:0;line-height:1}.brand-logo img{display:block;width:142px;height:auto;aspect-ratio:432/219;object-fit:contain;border-radius:5px}.footer-top .brand-logo img{width:182px}
.hero .eyebrow,.eyebrow,.chapter-line,.chapter-label{letter-spacing:.08em}.large-word{font-family:var(--serif);font-size:clamp(42px,4.6vw,67px);line-height:1.5;letter-spacing:.015em;margin:25px 0 14px}.large-word i{font-style:normal}.about{align-items:start}.about-copy{padding-top:45px}
.about-image{margin-top:30px}.about-image img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:16px 70px 16px 16px}.about-image figcaption,.service-image figcaption{font-size:12px;line-height:1.7;color:#496857;padding-top:8px;letter-spacing:.03em}
.business-photo figcaption strong{font-family:var(--serif);font-size:clamp(28px,3vw,42px);line-height:1.6;letter-spacing:.035em}.business-photo figcaption span{letter-spacing:.08em}.service-image{grid-column:2;margin-bottom:22px;min-width:0}.service-image img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:11px}.connection-story h3{font-size:23px;margin-bottom:15px}.connection-story .story-art>span{font-size:25px}.connection-story{padding-block:33px}
.vision-word{font-family:var(--serif);font-size:clamp(44px,5vw,72px);line-height:1.55;letter-spacing:.02em}.company h2{font-family:var(--serif);font-size:clamp(34px,3.6vw,49px);line-height:1.6;letter-spacing:.04em}.company-location strong{font-family:var(--serif);font-style:normal;font-size:40px;letter-spacing:.08em;margin:8px 0}.company-location span{letter-spacing:.1em}.hero-bottom{letter-spacing:.06em}.connection-node span{letter-spacing:.04em;font-size:12px}
@media(max-width:760px){header{padding:12px 14px;gap:14px}.brand-logo img{width:110px}.footer-top .brand-logo img{width:160px}.large-word{font-size:clamp(40px,10vw,55px);line-height:1.45;margin:20px 0 15px}.about{gap:35px}.about-copy{padding-top:0}.about-image{margin-top:25px}.about-image img{aspect-ratio:16/10;max-height:320px;border-radius:12px 55px 12px 12px}.service-image{grid-column:1/-1;margin-bottom:23px}.connection-story .story-art>span{grid-row:auto;grid-column:1;font-size:23px}.connection-story h3{font-size:21px}.connection-story .story-art>small{display:none}.connection-story .story-art{display:contents}.connection-story>div:not(.story-art){grid-column:2}.vision-word{font-size:49px;line-height:1.5}.vision{gap:35px}.business-photo figcaption strong{font-size:31px}.company h2{font-size:36px}.connection-node span{font-size:12px;line-height:1.5}.hero .eyebrow{letter-spacing:.05em}}
@media(max-width:370px){header{gap:10px}.brand-logo img{width:98px}.connection-node span{font-size:12px;letter-spacing:0}}

/* Borderless first screen: let the photograph remain visible behind navigation. */
header{inset:34px 6% auto;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;color:#f5fff6}
header nav>a{color:#f5fff6;text-shadow:0 1px 6px #00322480}
header .nav-contact{background:transparent;border:0;border-bottom:1px solid #effff399;border-radius:0;padding:10px 0;gap:18px}
header .nav-contact:hover{background:transparent;border-bottom-color:#fff}
header .brand-logo img{border-radius:0}
.hero{margin:0;border:0;border-radius:0;height:100svh;min-height:860px}
.hero-shade{background:linear-gradient(180deg,#073d3059,transparent 28%),linear-gradient(90deg,#003c31a8,#034b343d 48%,transparent 80%),linear-gradient(0deg,#043d32bf,transparent 53%)}
.hero .button{background:transparent;border:0;border-bottom:1px solid #e8fff4a6;border-radius:0;padding:10px 0;gap:23px}
.hero .button:hover{background:transparent;border-bottom-color:#fff}
.hero .button span{background:transparent;color:inherit;border:0;border-radius:0;font-size:25px}
.connection-map{background:transparent;border:0;border-radius:0;overflow:visible;gap:28px}
.connection-node{background:transparent;border:0;border-radius:0;padding:16px 0;box-shadow:none;text-shadow:0 1px 5px #00362988}
.connection-node+.connection-node{border:0}
.connection-node:hover{background:transparent}
.connection-node small{text-decoration:underline;text-underline-offset:8px;text-decoration-color:#e8fff35c;text-decoration-thickness:1px}
.connection-node:hover small{text-decoration-color:#fff}
.motion-toggle{background:transparent;color:#f3fff4;border:0;border-bottom:1px solid #e8fff363;border-radius:0;padding:8px 0;text-shadow:0 1px 5px #00362988;font-size:13px}
.hero-bottom{color:#edf9ef}
@media(max-width:760px){header{inset:24px 26px auto;padding:0;gap:18px}.brand-logo img{width:120px}header .nav-contact{font-size:14px;gap:10px;padding:9px 0}.hero{margin:0;border-radius:0;min-height:0;height:auto;padding-bottom:30px}.hero-copy{margin-inline:28px;padding-top:143px;padding-bottom:32px}.hero-shade{background:linear-gradient(180deg,#07392a70,transparent 33%),linear-gradient(90deg,#004233ad,#0749361f),linear-gradient(0deg,#073c32d6,transparent 70%)}.connection-map{margin:0 28px 14px;gap:18px}.connection-node{padding:12px 0;min-height:87px;gap:10px}.connection-node+.connection-node{border:0}.connection-node span{font-size:12px;letter-spacing:0}.connection-node small{font-size:14px;white-space:nowrap}.motion-toggle{margin:0 28px 12px;min-height:44px;padding:8px 0}.hero-bottom{margin-inline:28px}.hero .button{font-size:14px}.hero .button span{width:28px}.hero-copy h1{text-shadow:0 2px 18px #002b2538}}
@media(max-width:370px){header{inset:22px 24px auto;gap:15px}.brand-logo img{width:105px}header .nav-contact{font-size:13px;gap:8px}.hero-copy{margin-inline:24px}.connection-map{margin-inline:24px;gap:12px}.connection-node small{font-size:13px}.connection-node span{font-size:12px}.motion-toggle,.hero-bottom{margin-inline:24px}}

/* Logo is part of the photograph; anchor remains available to keyboard users. */
.brand-baked{display:block;width:clamp(180px,16.5vw,320px);aspect-ratio:432/219;flex-shrink:0}
.hero-art{position:absolute;inset:0;z-index:-3;display:block}
.hero-art .hero-photo{z-index:auto;object-position:left top}
.motion-on .hero-art .hero-photo{animation:none;transform:none}
.hero-shade{mask-image:linear-gradient(180deg,transparent 85px,#000 170px);-webkit-mask-image:linear-gradient(180deg,transparent 85px,#000 170px)}
@media(max-width:760px){.brand-baked{width:40vw;min-width:128px;max-width:304px;aspect-ratio:432/219}.hero-art .hero-photo{object-position:left top}.hero-shade{mask-image:linear-gradient(180deg,transparent 85px,#000 150px);-webkit-mask-image:linear-gradient(180deg,transparent 85px,#000 150px)}}
@media(min-width:761px){header{left:4.4%}.hero-copy{padding-top:clamp(185px,13.5vw,350px)}}
@media(min-width:500px) and (max-width:760px){.hero-copy{padding-top:clamp(155px,31vw,240px)}}

/* Emerald Pachira leaflets drift outward, turn, and settle. */
.tap-leaves{position:fixed;inset:0;z-index:100;overflow:hidden;pointer-events:none;user-select:none;-webkit-user-select:none;contain:strict}
.leaf-scatter{position:absolute;width:0;height:0;pointer-events:none}
.leaf-scatter img{position:absolute;left:-19px;top:-19px;width:38px;height:38px;max-width:none;object-fit:contain;opacity:0;pointer-events:none;animation:pachira-scatter 1300ms ease-out var(--leaf-delay) both;will-change:transform,opacity}
@keyframes pachira-scatter{0%{opacity:0;transform:translate(0,0) scale(.18) rotate(var(--leaf-start))}16%{opacity:.32}52%{opacity:.22;transform:translate(var(--leaf-mid-x),var(--leaf-mid-y)) scale(var(--leaf-size)) rotate(var(--leaf-mid-turn))}100%{opacity:0;transform:translate(var(--leaf-end-x),var(--leaf-end-y)) scale(var(--leaf-size)) rotate(var(--leaf-end-turn))}}
html:not(.motion-on) .tap-leaves{display:none}
@media(prefers-reduced-motion:reduce){.tap-leaves{display:none}}

/* Direct social link, with a clear account name and generous touch target. */
.instagram-link{display:flex;align-items:center;gap:14px;width:fit-content;max-width:100%;min-height:60px;margin-top:24px;padding:10px 0;border-bottom:1px solid #2a786077;color:var(--ink);font-size:15px;line-height:1.7}
.instagram-link svg{flex:none}.instagram-link small{display:block;font-size:14px;color:var(--muted)}
.instagram-link:hover{color:var(--emerald);border-bottom-color:var(--emerald)}
.footer-bottom{align-items:center}.footer-social{display:inline-flex;align-items:center;min-height:44px;font-size:14px;text-decoration:underline;text-underline-offset:5px}

/* Persistent, translucent contact shortcuts with full-size touch targets. */
.contact-dock{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:calc(20px + env(safe-area-inset-bottom));z-index:40;display:flex;gap:4px;padding:5px;border:1px solid #ffffff8c;border-radius:20px;background:linear-gradient(140deg,#e9fff7a3,#c8efdf80);box-shadow:0 5px 24px #003b291a,inset 0 1px 0 #ffffff8c;color:#07523f}
.dock-link{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:66px;min-height:62px;padding:6px;border-radius:15px;font-size:14px;font-weight:500;line-height:1.4;transition:background .2s,color .2s}
.dock-link svg{flex:none}.dock-link:hover,.dock-link:focus-visible{background:#effff9d9;color:#006447}.dock-link:active{background:#bcecdcc9}
footer{padding-bottom:calc(115px + env(safe-area-inset-bottom))}
@media(max-width:760px){.contact-dock{right:max(12px,env(safe-area-inset-right));bottom:calc(14px + env(safe-area-inset-bottom));border-radius:18px}.dock-link{width:62px;min-height:60px}}
@media(prefers-reduced-motion:reduce){.dock-link{transition:none}}

/* In-page contact options also work without handing off to another app. */
.contact-options{width:min(480px,calc(100% - 32px));max-height:calc(100dvh - 40px);margin:auto;padding:34px 26px 24px;overflow:auto;border:1px solid #d7f1e7;border-radius:22px;background:#f3fcf8;color:var(--ink);box-shadow:0 24px 80px #002f3540;line-height:1.8}
.contact-options::backdrop{background:#002f3659}
.contact-options h2{font-family:var(--serif);font-size:23px;line-height:1.6;padding-right:24px;margin-bottom:10px}
.contact-options>p{font-size:15px}.contact-options-close{position:absolute;top:6px;right:7px;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--ink);font-size:27px;line-height:1}
.contact-options .contact-destination-label{font-size:14px;margin-top:21px}.contact-options input.contact-destination{font-size:16px;padding:12px 10px;min-height:48px;border-color:#7eaf9c;background:#fff;user-select:text;-webkit-user-select:text}
.contact-options-actions{display:grid;gap:10px;margin-top:20px}.contact-open,.contact-copy,.contact-form-option{display:flex;align-items:center;justify-content:center;min-height:50px;padding:12px 14px;border-radius:10px;font:500 15px/1.7 'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;text-align:center}
.contact-open{background:#087b60;color:#fff}.contact-copy{border:1px solid #83bda6;background:transparent;color:#174e3e}.contact-copy:disabled{opacity:.6}.contact-form-option{border:1px solid #087b60;color:#075d49;background:#e2f5ec}
.contact-options .contact-options-help{font-size:14px;margin-top:20px;color:#4d6d60}.contact-copy-status{min-height:1.8em;margin-top:12px;color:#075d49}
@media(max-width:370px){.contact-options{padding:32px 18px 20px}.contact-options h2{font-size:21px}}

.contact-help-links{display:flex;flex-wrap:wrap;gap:4px 18px;margin-top:18px}
.contact-help{min-height:44px;padding:8px 0;border:0;border-bottom:1px solid #508b704a;border-radius:0;background:transparent;color:#315f4d;font-size:14px;line-height:1.7;text-align:left}
.contact-help:hover{color:var(--emerald);border-bottom-color:var(--emerald)}

/* The supplied MVV, set directly over Pachira photography. */
.about-links{display:flex;flex-wrap:wrap;gap:8px 26px}
.mvv{position:relative;isolation:isolate;overflow:hidden;max-width:none;color:#f6fff9;background:#0a604a;padding-block:90px 100px}
.mvv-photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:65% center}
.mvv:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,#064a3cd9,#06624bbd 60%,#064e3ecc),linear-gradient(0deg,#034434a6,transparent 75%)}
.mvv-heading{margin-bottom:50px}.mvv-heading .eyebrow{color:#d1efe1;font-size:14px;letter-spacing:.07em}.mvv-heading h2{font:400 clamp(28px,3vw,40px)/1.7 var(--serif);margin-top:12px}
.mvv-purposes{display:grid;grid-template-columns:1fr 1fr;gap:36px 7%;margin-bottom:65px}.mvv-purpose{min-width:0}.mvv-label{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 14px;font-size:16px;font-weight:500;line-height:1.8;color:#f1fff7;margin:0}.mvv-label span{font-size:12px;letter-spacing:.15em;font-weight:400;color:#c2e8d7}
.mvv-purpose h3{font:400 clamp(28px,3.2vw,48px)/1.65 var(--serif);letter-spacing:.025em;margin:17px 0 0;text-wrap:balance}
.mvv-values{border-top:1px solid #d5f5e756;padding-top:30px}.mvv-value-list{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin:30px 0 0;padding:0}.mvv-value{min-width:0}.mvv-number{display:block;font:italic 28px/1.2 Georgia,serif;color:#b3e7cd;margin-bottom:18px}.mvv-value h4{font-size:21px;font-weight:500;line-height:1.7;letter-spacing:.015em;margin:0 0 16px}.mvv-value p{font-size:16px;line-height:2.05;color:#edf9f1}
@media(min-width:1700px){.mvv{padding-inline:max(var(--gutter),calc((100vw - 1450px)/2))}}
@media(max-width:950px){.mvv-purposes{gap:35px}.mvv-purpose h3{font-size:30px}.mvv-value-list{grid-template-columns:1fr;gap:0;margin-top:10px}.mvv-value{position:relative;padding:26px 0 26px 54px;border-bottom:1px solid #d5f5e733}.mvv-value:last-child{border-bottom:0;padding-bottom:0}.mvv-number{position:absolute;top:31px;left:0;margin:0;font-size:24px}.mvv-value h4{margin-bottom:10px}.mvv-value p{max-width:42em}}
@media(max-width:760px){.mvv{padding-block:65px 70px}.mvv-heading{margin-bottom:35px}.mvv-purposes{grid-template-columns:1fr;gap:33px;margin-bottom:42px}.mvv-purpose h3{font-size:clamp(28px,7.8vw,39px);margin-top:10px;line-height:1.65}.mvv-label{font-size:15px}.mvv-heading h2{font-size:30px}.mvv-values{padding-top:25px}.mvv-value{padding-left:44px}.mvv-number{font-size:22px}.mvv-value h4{font-size:20px}.mvv-photo{object-position:62% top}.mvv:before{background:linear-gradient(110deg,#064a3de8,#08644cbd),linear-gradient(0deg,#034c3bd4,transparent 70%)}}
