:root{color-scheme:light;--bg:#fff;--alt:#f7f2e8;--tx:#16211d;--mu:#5d6577;--pr:#00503e;--ac:#d4b483;--ac-tx:#0b2a22;--card:#fff;--bd:#e4ddd0;--ft:#003a2d;--ft-tx:#e3efe9;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}

:root[data-theme="dark"]{color-scheme:dark;--bg:#0c1512;--alt:#111d19;--tx:#e8ecf4;--mu:#a2abbd;--pr:#8fd4b8;--card:#15241f;--bd:#22372f;--ft:#06201a}
*,*:before,*:after{box-sizing:border-box}
html{scroll-padding-top:calc(80px + env(safe-area-inset-top,0px));scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--tx);font:16px/1.65 "Helvetica Neue",Arial,sans-serif}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);background:var(--bg);z-index:60}
a{color:inherit;text-decoration:none}h1,h2,h3{font-family:Georgia,serif;line-height:1.2;margin:0 0 .5em}
.w{max-width:1140px;margin:0 auto;padding:0 20px}
.btn{display:inline-block;background:var(--ac);color:var(--ac-tx);font-weight:700;letter-spacing:.05em;padding:14px 28px;border:0;border-radius:4px;cursor:pointer;font-size:.9rem;transition:.2s}
.btn:hover{transform:translateY(-2px);filter:brightness(1.08)}.btn.o{background:none;border:2px solid currentColor;color:var(--pr)}
.top{background:var(--ft);color:var(--ft-tx);font-size:.82rem}.top .w{display:flex;justify-content:space-between;gap:12px;padding:8px 20px;flex-wrap:wrap}.top a:hover{color:var(--ac)}
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--bg);border-bottom:1px solid var(--bd)}
header .w{display:flex;align-items:center;justify-content:space-between;height:72px}
.logo{display:flex;align-items:center;gap:10px;font-family:Georgia,serif;font-weight:700;color:var(--pr);line-height:1.1}
.logo span{display:flex;flex-direction:column;border-top:2px solid #d4b483;border-bottom:2px solid #d4b483;padding:2px 0}.logo b{font-size:1.6rem;line-height:1}.logo small{font:600 .72rem Arial;letter-spacing:.03em}
nav{display:flex;align-items:center;gap:4px}nav a,nav .dd>a{padding:10px 9px;font-size:.82rem;font-weight:600;letter-spacing:.06em;display:block}
nav a:hover,nav a.on{color:var(--pr);box-shadow:inset 0 -3px var(--ac)}
.dd{position:relative}.dd ul{display:none;position:absolute;left:0;top:100%;list-style:none;margin:0;padding:8px 0;background:var(--card);border:1px solid var(--bd);box-shadow:0 12px 30px #0002;min-width:250px}
.dd:hover ul,.dd:focus-within ul{display:block}.dd li a{box-shadow:none!important;padding:9px 18px}.dd li a:hover{background:var(--alt)}
nav .btn{margin-left:8px;padding:10px 18px;color:var(--ac-tx)}
#bg{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;color:var(--tx)}
#bg span,#bg span:before,#bg span:after{display:block;width:24px;height:2px;background:currentColor;position:relative;margin:auto;transition:.2s}
#bg span:before,#bg span:after{content:"";position:absolute;left:0}#bg span:before{top:-7px}#bg span:after{top:7px}
@media(max-width:1120px){#bg{display:block}nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--bg);flex-direction:column;align-items:stretch;padding:10px 20px 20px;border-bottom:1px solid var(--bd);max-height:calc(100vh - 120px);overflow:auto}
nav.open{display:flex}.dd ul{display:block;position:static;border:0;box-shadow:none;padding:0 0 0 14px}nav .btn{margin:10px 0 0;text-align:center}}
.hero{position:relative;color:#fff;background:linear-gradient(120deg,#003a2de6,#00503ecc),repeating-linear-gradient(45deg,#0a5a47 0 22px,#08503f 22px 44px);padding:110px 0 100px;overflow:hidden}
.hero h1{font-size:clamp(2.2rem,6vw,4rem);max-width:760px}.hero h1 em{color:var(--ac);font-style:normal}.hero p{font-size:1.15rem;max-width:620px;opacity:.92}
.hero .loc{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 30px}.hero .loc span{border:1px solid #fff5;border-radius:99px;padding:5px 14px;font-size:.85rem}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:-50px;position:relative;z-index:2}
.tile{background:var(--pr);color:#fff;padding:32px;border-right:1px solid #fff2;transition:.2s;display:block}.tile:nth-child(2){background:#00463a}.tile:last-child{background:#003a2d}
.tile:hover{transform:translateY(-6px)}.tile b{display:block;font-family:Georgia,serif;font-size:1.3rem;margin:8px 0}.tile small{opacity:.8}.tile .ic{font-size:1.8rem}
@media(max-width:760px){.tiles{grid-template-columns:1fr}}
section{padding:80px 0}section.alt{background:var(--alt)}.cen{text-align:center}
h2{font-size:clamp(1.7rem,4vw,2.5rem);color:var(--pr)}.bar{width:60px;height:4px;background:var(--ac);margin:0 0 22px;border:0}.cen .bar{margin:0 auto 22px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}@media(max-width:820px){.two{grid-template-columns:1fr;gap:30px}}
.pic{aspect-ratio:4/3;border-radius:8px;background:linear-gradient(135deg,var(--pr),#0a6b54);display:grid;place-items:center;color:#fff;font-size:4rem;position:relative}
.pic.g{background:linear-gradient(135deg,#b8934f,var(--ac))}
.vis{background:var(--pr);color:#fff;text-align:center}.vis h2{color:#fff;font-size:clamp(1.4rem,3.5vw,2.2rem)}.vis b{color:var(--ac);font-size:1.15em}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}
.card{background:var(--card);border:1px solid var(--bd);border-radius:8px;padding:28px;transition:.2s}.card:hover{box-shadow:0 14px 30px #0001;transform:translateY(-4px)}
.card h3{font-size:1.2rem;color:var(--pr)}.card p{color:var(--mu);margin:0}.card .n{font-family:Georgia,serif;font-size:2rem;color:var(--ac)}
.msg{display:grid;grid-template-columns:350px 1fr;gap:0 40px;align-items:start}.msg .eb{grid-column:1/-1;font:700 .8rem Arial;letter-spacing:.3em;color:var(--pr);margin-bottom:14px}.msg .ph{aspect-ratio:350/460;border-radius:16px;position:relative;overflow:hidden;background:linear-gradient(160deg,#0a6b54,#00503e 60%,#003a2d);display:flex;align-items:flex-end;color:#fff}.msg .ph:before{content:"";position:absolute;top:14%;left:0;right:0;text-align:center;font:700 6rem Georgia;opacity:.18}.msg .ph div{padding:60px 20px 22px;width:100%;background:linear-gradient(transparent,#001a14e6)}.msg .ph b{font-size:1.1rem}.msg .ph small{display:block;color:#d4b483;margin-top:4px;font-size:.88rem}.msg h2{font-size:clamp(2.2rem,5vw,3.2rem);color:var(--tx);margin:0 0 .4em}.msg p{color:var(--mu);margin:0 0 .6em;line-height:1.9}.sig{border-left:4px solid var(--pr);padding-left:18px;margin-top:26px}.sig b{display:block;color:var(--tx)}.sig span{color:var(--pr);font-size:.92rem}@media(max-width:860px){.msg{grid-template-columns:1fr;gap:14px}.msg .eb{margin-bottom:0}.msg .ph{max-width:350px}}
.band{background:radial-gradient(circle at 92% 18%,#4a5a3a66,transparent 40%),radial-gradient(circle at 6% 92%,#3c8a5a55,transparent 35%),linear-gradient(120deg,#0a6b54,#00503e 55%,#003a2d);border-top:4px solid #d4b483;border-bottom:4px solid #d4b483;color:#fff;text-align:center;padding:clamp(64px,11vw,130px) 0}.band h2{color:#fff;font-style:italic;font-weight:400;font-size:clamp(1.5rem,3.6vw,2.5rem);line-height:1.4;max-width:900px;margin:0 auto}.band .dv{display:block;width:80px;height:4px;border-radius:4px;background:linear-gradient(90deg,#d4b483,#7fc241);margin:34px auto 0}
.prof{display:block;width:100%;height:auto;border-radius:12px;box-shadow:0 14px 34px #0003}
.team .av{width:130px;height:130px;border-radius:50%;margin:0 auto 14px;background:linear-gradient(135deg,var(--pr),#0a6b54);color:#fff;display:grid;place-items:center;font:700 2rem Georgia}
.team{text-align:center}.team h3{margin:0;font-size:1.1rem}.team p{margin:2px 0 0}
.page{padding:18px 0 16px;background:#00503e;color:#fff}.page h1{font-size:clamp(1.5rem,3.4vw,2rem);margin:0;line-height:1.15}.page p{margin:3px 0 0;opacity:.85;font-size:.92rem;line-height:1.4}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.gal button{aspect-ratio:16/10;border:0;border-radius:8px;color:#fff;cursor:pointer;font:600 .95rem Arial;display:flex;align-items:flex-end;text-align:left;padding:14px;transition:.2s;background-size:cover;background-position:center;background-color:var(--pr)}.gal button:hover{transform:scale(1.03)}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.chips button{border:1px solid var(--bd);background:var(--card);color:var(--tx);padding:8px 18px;border-radius:99px;cursor:pointer;font-size:.9rem}.chips button.on{background:var(--pr);color:#fff;border-color:var(--pr)}
#lb{position:fixed;inset:0;background:#000d;display:none;place-items:center;z-index:100;padding:20px}#lb.on{display:grid}#lb div{width:min(1000px,100%);aspect-ratio:2.27/1;border-radius:10px;color:#fff;position:relative;background-size:cover;background-position:center}#lbt{position:absolute;left:0;right:0;bottom:0;padding:12px 16px;background:#000a;font:1rem Arial;border-radius:0 0 10px 10px}@media(max-width:700px){#lb div{aspect-ratio:4/3;background-size:contain;background-repeat:no-repeat;background-color:#000}}.pic,.hero{background-size:cover;background-position:center}
#lb button{position:absolute;top:10px;right:10px;background:#0006;color:#fff;border:0;border-radius:50%;width:38px;height:38px;font-size:1.2rem;cursor:pointer}
form label{display:block;font-weight:600;font-size:.88rem;margin:14px 0 4px}
input,select,textarea{width:100%;padding:12px 14px;border:1px solid var(--bd);border-radius:4px;background:var(--card);color:var(--tx);font:inherit}input:focus,select:focus,textarea:focus{outline:2px solid var(--ac);border-color:var(--ac)}
.ok{display:none;background:#e6f4ea;color:#14532d;padding:12px 16px;border-radius:4px;margin-top:14px}.ok.on{display:block}
.camp{border-left:4px solid var(--ac);padding-left:16px;margin-bottom:20px}.camp b{color:var(--pr)}
footer{background:var(--ft);color:var(--ft-tx);padding:60px 0 24px;font-size:.92rem}footer .grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
footer h4{color:#fff;margin:0 0 12px;font-family:Georgia,serif;font-size:1.1rem}footer a:hover{color:var(--ac)}footer ul{list-style:none;padding:0;margin:0}footer li{margin:6px 0}
footer .nl{display:flex;gap:6px}footer .nl input{border:0}footer .nl .btn{padding:10px 14px}
.soc{display:flex;gap:10px;margin-top:12px}.soc a{width:38px;height:38px;border:1px solid #fff4;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:.85rem}.soc a:hover{background:var(--ac);color:var(--ac-tx);border-color:var(--ac)}
.copy{border-top:1px solid #fff2;margin-top:36px;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.82rem;opacity:.8}
#up{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));width:46px;height:46px;border-radius:50%;border:0;background:var(--ac);color:var(--ac-tx);font-size:1.2rem;cursor:pointer;display:none;z-index:40;box-shadow:0 6px 16px #0004}#up.on{display:block}
.view{display:none}.view.on{display:block;animation:f .35s}@keyframes f{from{opacity:0;transform:translateY(8px)}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.logo{white-space:nowrap;flex-shrink:0}.logo small{white-space:nowrap}
@media(min-width:1121px){header .w{max-width:1360px;padding:0 clamp(24px,4vw,56px)}nav{gap:0;flex-wrap:nowrap;white-space:nowrap}nav a,nav .dd>a{white-space:nowrap;font-size:.7rem;letter-spacing:.03em;padding:10px 6px;line-height:1.2}nav .btn{padding:9px 14px;margin-left:6px;font-size:.7rem;letter-spacing:.04em}.logo b{font-size:1.4rem}.logo small{font-size:.66rem}.logo svg{width:40px;height:40px}.dd ul{min-width:250px}.dd li a{font-size:.82rem;letter-spacing:.02em;white-space:nowrap;padding:9px 18px}}
.gh{text-align:center;color:var(--pr);font-size:1.5rem;margin:52px 0 26px}.sg{display:flex;flex-wrap:wrap;justify-content:center;gap:34px 28px}.sp{text-align:center;width:240px}@media(max-width:520px){.sg{gap:28px 12px}.sp{width:calc(50% - 6px)}.ph2{width:100%;max-width:165px}}.ph2{width:190px;aspect-ratio:1/1;border-radius:50%;margin:0 auto 12px;background-size:cover;background-position:center;background-color:var(--alt);border:3px solid var(--bd)}.ph2.in{display:grid;place-items:center;background:var(--pr);color:#fff;font:700 2rem Georgia}.sp b{display:block;font-size:.98rem;color:var(--tx)}.sp small{display:block;color:var(--mu);font-size:.8rem;line-height:1.4;margin-top:2px}.av[data-simg]{background-size:cover;background-position:center}
.hire{max-width:430px;aspect-ratio:4/5;border-radius:8px;background:linear-gradient(160deg,#0a6b54,#00503e 55%,#003a2d);color:#fff;padding:28px;display:flex;flex-direction:column;justify-content:center;gap:12px;position:relative;overflow:hidden}.hire:after{content:"";position:absolute;right:-50px;bottom:-50px;width:170px;height:170px;background:#d4b483;transform:rotate(45deg)}.hire>*{position:relative;z-index:1}.hire h3{margin:0 0 10px;font-size:clamp(2.2rem,6vw,3.4rem);line-height:1;color:#fff}.hire h3 b{color:#d4b483}.hire .rb{background:#fff;color:#003a2d;font-weight:700;padding:10px 14px;border-left:6px solid #d4b483;font-size:.95rem}.hire .ap{background:#d4b483;color:#0b2a22;font-weight:800;text-align:center;padding:12px;border-radius:99px;letter-spacing:.06em;margin-top:8px;width:70%}
.logo img.lg{height:54px;width:auto;display:block;border-radius:6px}:root[data-theme="dark"] .logo img.lg{background:#fff;padding:4px 8px}@media(max-width:420px){.logo img.lg{height:44px}}
footer .grid{grid-template-columns:1.2fr .8fr 2.2fr 1.3fr;gap:36px}.fc p{margin:0 0 14px;line-height:1.55}.fc b{display:block;color:#d4b483;font-size:.85rem;letter-spacing:.04em;margin-bottom:2px}.fci{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;margin-top:14px}@media(max-width:1000px){footer .grid{grid-template-columns:1fr 1fr}.fc{grid-column:1/-1}}@media(max-width:600px){footer .grid{grid-template-columns:1fr}.fci{grid-template-columns:1fr}}
.top .w{justify-content:space-between;align-items:center;gap:6px 24px;padding:7px 20px}.tl,.tr{display:flex;align-items:center;gap:6px 22px;flex-wrap:wrap}.ti{display:inline-flex;align-items:center;gap:7px}.top svg{width:15px;height:15px;color:#d4b483;flex:none}.tr a+a{border-left:1px solid #ffffff40;padding-left:22px}@media(max-width:600px){.top .w,.tl,.tr{justify-content:center}.top{font-size:.78rem}}
@media(max-width:1120px){.dd li a{font-size:.9rem;padding:8px 14px}}
.soc{gap:12px}.soc a{width:40px;height:40px;border:0;background:none;border-radius:50%;display:block;transition:.2s}.soc a:hover{background:none;transform:translateY(-3px)}.soc svg{width:40px;height:40px;display:block}
.flg{height:66px;width:auto;display:block;margin:0 0 14px}
.cam{display:block;width:100%;max-width:260px;height:auto;background:#fff;border-radius:6px;margin-top:18px}
