:root{
  --primary:#008080;--primary-dark:#006b6b;--primary-deep:#064e52;--primary-soft:#e6f6f5;--primary-soft-2:#cbeceb;
  --ink:#0f3439;--muted:#61777a;--line:#d8e6e6;--surface:#ffffff;--surface-2:#f6fafa;--page:#ffffff;
  --danger:#a52a2a;--success:#147a52;--shadow:0 14px 38px rgba(18,67,70,.10);--radius:16px;--radius-sm:10px;--max:1180px;
}
html[data-theme="red7"]{
  --primary:#cb181d;--primary-dark:#99000d;--primary-deep:#711016;--primary-soft:#fee5d9;--primary-soft-2:#fcbba1;
  --ink:#351b1d;--muted:#765f61;--line:#ead5d2;--surface-2:#fff9f7;--shadow:0 14px 38px rgba(109,20,20,.10);
  --red7-1:#fee5d9;--red7-2:#fcbba1;--red7-3:#fc9272;--red7-4:#fb6a4a;--red7-5:#ef3b2c;--red7-6:#cb181d;--red7-7:#99000d;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--page);color:var(--ink);font-family:"Arial Narrow",Arial,sans-serif;font-size:16px;line-height:1.55}img{max-width:100%;display:block}a{color:var(--primary-dark);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}.container{width:min(calc(100% - 32px),var(--max));margin-inline:auto}.narrow{max-width:820px}.skip-link{position:absolute;left:-999px;top:0;z-index:1000;background:var(--ink);color:#fff;padding:8px 12px}.skip-link:focus{left:8px;top:8px}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.89);backdrop-filter:blur(16px);border-bottom:1px solid rgba(210,228,228,.85)}html[data-theme="red7"] .site-header{border-color:rgba(234,213,210,.9)}.header-inner{min-height:72px;display:flex;align-items:center;gap:18px}.brand{flex:0 0 198px;display:flex;align-items:center}.brand img{width:190px;height:auto}.site-nav{display:flex;align-items:center;gap:20px;margin-left:auto;white-space:nowrap}.site-nav a{color:var(--ink);font-weight:700;font-size:.93rem}.site-nav a:hover{color:var(--primary);text-decoration:none}.header-actions{display:flex;align-items:center;gap:10px;margin-left:10px}.lang-switch{display:flex;align-items:center;gap:4px;color:var(--ink);font-size:.88rem;white-space:nowrap}.lang-switch strong{color:var(--primary)}.menu-toggle{display:none;background:transparent;border:0;padding:6px}.menu-toggle span{display:block;width:22px;height:2px;background:var(--ink);margin:4px 0}.menu-toggle b{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid var(--primary);border-radius:10px;background:var(--primary);color:#fff;font-weight:800;line-height:1;text-decoration:none;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease}.button:hover{background:var(--primary-dark);border-color:var(--primary-dark);text-decoration:none;transform:translateY(-1px)}.button-small{min-height:38px;padding:8px 13px;font-size:.88rem}.button-ghost{background:#fff;color:var(--primary-dark)}.button-ghost:hover{background:var(--primary-soft);color:var(--primary-deep)}.text-link{font-weight:800;color:var(--primary-dark)}
.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--primary-soft) 0%,#fff 58%,var(--surface-2) 100%);border-bottom:1px solid var(--line)}.hero-grid{min-height:575px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(400px,.95fr);gap:48px;align-items:center;padding-block:64px}.hero-copy{position:relative;z-index:2}.pill{display:inline-flex;align-items:center;min-height:28px;padding:5px 10px;border:1px solid color-mix(in srgb,var(--primary) 28%,transparent);border-radius:999px;background:color-mix(in srgb,var(--primary-soft) 70%,#fff);color:var(--primary-dark);font-size:.74rem;font-weight:900;letter-spacing:.055em;text-transform:uppercase}.hero h1,.page-hero h1{margin:14px 0 15px;font-size:clamp(2.6rem,5.3vw,5rem);line-height:.98;letter-spacing:-.045em;max-width:850px}.hero-lead,.page-hero p{margin:0;max-width:760px;color:var(--muted);font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.55}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.company-facts{display:grid;grid-template-columns:1fr 1.2fr 1fr;margin:30px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.company-facts div{padding:13px 16px 13px 0}.company-facts div+div{padding-left:16px;border-left:1px solid var(--line)}.company-facts dt{font-size:.72rem;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.04em}.company-facts dd{margin:3px 0 0;font-weight:900;font-size:.93rem}.hero-visual{position:relative;min-height:390px;display:grid;place-items:center}.hero-logo-card{position:relative;z-index:2;width:min(100%,490px);min-height:260px;display:flex;flex-direction:column;justify-content:center;gap:28px;padding:34px;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.9);border-radius:26px;box-shadow:var(--shadow);transform:rotate(1.6deg)}.hero-logo-card>img{width:100%;height:auto}.hero-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.hero-mini-grid span{display:grid;place-items:center;height:72px;border-radius:14px;background:var(--primary-soft);color:var(--primary)}.hero-mini-grid svg{width:32px;height:32px;fill:currentColor}.visual-block{position:absolute;border-radius:32px;filter:saturate(.9)}.visual-block-a{width:260px;height:260px;right:-70px;top:18px;background:color-mix(in srgb,var(--primary) 40%,transparent);transform:rotate(14deg)}.visual-block-b{width:190px;height:190px;left:0;bottom:0;background:color-mix(in srgb,var(--primary-soft-2) 72%,transparent);transform:rotate(-16deg)}
.section{padding:64px 0}.compact-section{padding:52px 0}.soft-section{background:var(--surface-2);border-block:1px solid var(--line)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.section-heading h2{margin:9px 0 0;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.06;letter-spacing:-.025em;max-width:760px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.service-card{display:grid;grid-template-columns:54px 1fr;gap:14px;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.service-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--primary) 35%,var(--line))}.service-card.primary-service{background:linear-gradient(135deg,var(--primary-soft),#fff 72%);border-color:color-mix(in srgb,var(--primary) 30%,var(--line))}.service-card h2,.service-card h3{margin:0;font-size:1.08rem;line-height:1.2}.service-card p{margin:7px 0 8px;color:var(--muted);font-size:.94rem}.service-grid-full .service-card{padding:22px}.service-grid-full .service-card h2{font-size:1.25rem}.icon-box{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary)}.icon-box svg{width:25px;height:25px;fill:currentColor}.large-icon{width:58px;height:58px}.large-icon svg{width:30px;height:30px}.card-title-line{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}.mini-badge{display:inline-flex;padding:3px 7px;border-radius:999px;background:var(--primary-soft);color:var(--primary-dark);font-size:.68rem;font-weight:900;line-height:1.25}.partnership-preview{display:grid;grid-template-columns:minmax(250px,.6fr) minmax(0,1.4fr);gap:38px;align-items:center}.partner-logo-box,.company-mark{display:grid;place-items:center;min-height:160px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.partner-logo-box img{max-height:112px;width:auto}.partnership-preview h2{font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.08;margin:10px 0}.partnership-preview p{color:var(--muted);max-width:700px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.project-grid-wide{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.project-card>img,.project-placeholder{width:100%;height:210px;object-fit:cover;background:var(--primary-soft)}.project-placeholder{display:grid;place-items:center;color:var(--primary)}.project-placeholder svg{width:54px;height:54px;fill:currentColor}.project-content{padding:16px}.project-content h2,.project-content h3{margin:7px 0 6px;font-size:1.15rem}.project-content p{margin:0;color:var(--muted)}.project-content small{display:block;margin-top:10px;color:var(--ink);font-weight:800}.project-meta{display:flex;gap:18px;flex-wrap:wrap;margin:14px 0 0;padding-top:12px;border-top:1px solid var(--line)}.project-meta dt{font-size:.68rem;text-transform:uppercase;color:var(--muted);font-weight:800}.project-meta dd{margin:2px 0 0;font-weight:800}.empty-state{padding:34px;border:1px dashed color-mix(in srgb,var(--primary) 35%,var(--line));border-radius:var(--radius);background:var(--surface-2);text-align:center}.empty-state .icon-box{margin:0 auto 10px}.empty-state h2,.empty-state h3{margin:0 0 6px}.empty-state p{margin:0;color:var(--muted)}.contact-strip{background:var(--primary-deep);color:#fff}.contact-strip-inner{display:flex;align-items:center;justify-content:space-between;gap:26px}.contact-strip h2{margin:0;font-size:1.7rem}.contact-strip p{margin:5px 0 0;color:rgba(255,255,255,.8)}.contact-strip .button{background:#fff;color:var(--primary-deep);border-color:#fff}.contact-strip .button:hover{background:var(--primary-soft)}
.page-hero{padding:62px 0 48px;background:linear-gradient(135deg,var(--primary-soft),#fff 70%);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.3rem,4.5vw,4.25rem)}.page-hero .button{margin-top:20px}.two-column{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:18px}.content-card,.profile-card,.form-card,.contact-info-card,.partner-large-card{padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.content-card h2,.profile-card h2,.contact-info-card h2{margin:0 0 12px;font-size:1.35rem}.content-card p{color:var(--muted);font-size:1rem}.content-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.profile-list{margin:0}.profile-list>div{padding:10px 0;border-bottom:1px solid var(--line)}.profile-list>div:last-child{border-bottom:0}.profile-list dt{font-size:.72rem;color:var(--muted);text-transform:uppercase;font-weight:900}.profile-list dd{margin:3px 0 0;font-weight:800}.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.activity-card{padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.activity-card.primary-service{background:linear-gradient(135deg,var(--primary-soft),#fff)}.activity-card h3{margin:14px 0 8px;line-height:1.18}.partnership-page{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:18px}.partner-large-card{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;background:var(--surface-2)}.partner-large-card .company-mark{min-height:130px;padding:16px}.partner-symbol{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--primary);color:#fff;font-size:1.4rem;font-weight:900}.partner-large-card p{grid-column:1/-1;margin:0;color:var(--muted);text-align:center}.gallery-grid{columns:3 280px;column-gap:14px}.gallery-item{break-inside:avoid;margin:0 0 14px;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff}.gallery-item img{width:100%;height:auto}.gallery-item figcaption{display:grid;gap:3px;padding:11px 13px}.gallery-item figcaption span{color:var(--muted);font-size:.88rem}.contact-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-form label{display:grid;gap:5px;font-size:.78rem;font-weight:900;color:var(--muted)}.contact-form label span{font-weight:500}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #bfd0d0;border-radius:9px;background:#fff;color:var(--ink);padding:10px 11px;outline:none}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent)}.full-field{grid-column:1/-1}.contact-form .button{margin-top:14px}.alert{padding:10px 12px;border-radius:10px;margin-bottom:14px;border:1px solid}.alert.success{background:#effaf5;border-color:#b7e3ce;color:#14653f}.alert.error{background:#fff2f2;border-color:#efc7c7;color:#8c2626}
.site-footer{padding:46px 0 18px;background:#0d3034;color:#dfeaea}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:28px}.footer-grid h2{margin:0 0 9px;font-size:.94rem;color:#fff}.footer-grid p{margin:0;color:#b9cacc;font-size:.88rem}.footer-grid a{color:#edf8f8}.footer-brand img{width:190px;background:#fff;border-radius:8px;padding:4px;margin-bottom:10px}.footer-partner{display:inline-flex;margin-top:9px;padding:7px;background:#fff;border-radius:7px}.footer-partner img{height:42px;width:auto}.footer-bottom{display:flex;justify-content:space-between;gap:16px;margin-top:28px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);font-size:.78rem;color:#a9bdbf}.footer-bottom a{color:#d7eaea}
@media(max-width:1050px){.site-nav{gap:13px}.site-nav a{font-size:.86rem}.header-actions .button{display:none}.hero-grid{grid-template-columns:1fr 400px;gap:24px}.project-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.header-inner{min-height:64px}.brand{flex-basis:auto}.brand img{width:160px}.menu-toggle{display:block;margin-left:auto}.site-nav{position:absolute;top:64px;left:16px;right:16px;display:none;flex-direction:column;align-items:stretch;gap:0;padding:8px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.site-nav.open{display:flex}.site-nav a{padding:9px 10px;border-bottom:1px solid var(--line)}.site-nav a:last-child{border:0}.header-actions{margin-left:0}.hero-grid{grid-template-columns:1fr;min-height:auto;padding-block:48px}.hero-visual{min-height:310px}.hero-logo-card{max-width:520px}.partnership-preview,.two-column,.partnership-page,.contact-layout{grid-template-columns:1fr}.partner-large-card{max-width:700px}.activity-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){body{font-size:15px}.container{width:min(calc(100% - 22px),var(--max))}.brand img{width:132px}.header-inner{gap:8px}.lang-switch{font-size:.78rem}.hero-grid{padding-block:35px;gap:24px}.hero h1,.page-hero h1{font-size:clamp(2.25rem,12vw,3.4rem)}.hero-lead{font-size:1rem}.company-facts{grid-template-columns:1fr}.company-facts div,.company-facts div+div{padding:9px 0;border-left:0;border-bottom:1px solid var(--line)}.company-facts div:last-child{border-bottom:0}.hero-visual{min-height:250px}.hero-logo-card{min-height:210px;padding:22px;gap:18px;border-radius:18px}.hero-mini-grid span{height:54px}.visual-block-a{width:170px;height:170px}.visual-block-b{width:130px;height:130px}.section{padding:44px 0}.compact-section{padding:38px 0}.section-heading{align-items:flex-start;flex-direction:column;gap:8px}.service-grid,.project-grid,.project-grid-wide,.activity-grid,.form-grid{grid-template-columns:1fr}.service-card{grid-template-columns:44px 1fr;padding:14px}.icon-box{width:42px;height:42px}.partnership-preview{gap:18px}.page-hero{padding:40px 0 34px}.contact-strip-inner{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr;gap:20px}.footer-bottom{flex-direction:column}.partner-large-card{grid-template-columns:1fr}.partner-symbol{margin:auto}.partner-large-card p{grid-column:auto}.gallery-grid{columns:1}.full-field{grid-column:auto}.project-card>img,.project-placeholder{height:190px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.service-card:hover,.button:hover{transform:none}}
:focus-visible{outline:3px solid var(--primary);outline-offset:3px}
@media(prefers-contrast:more){:root{--line:#829496;--muted:#3f5659}.site-header,.service-card,.project-card,.content-card,.profile-card,.form-card,.contact-info-card,.activity-card,.gallery-item{border-width:2px}.button,.pill{border-width:2px}}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
