:root{--ink:#142B3B;--muted:#506576;--surface:#FFFFFF;--canvas:#F1F5F7;--line:#CBD6DE;--action:#145BDB;--action-hover:#1048AE;--brand:#B84613;--error:#A72125;--success:#1D6B48;--warning:#71520D;--focus:#145BDB;--heading:Tahoma, Arial, sans-serif;--body:Arial, sans-serif;--technical:Courier New, monospace;--container:1280px;--gutter:48px;--gap:24px;--control:48px;--radius-control:4px;--radius-card:8px;--radius-dialog:12px;}
body{font-family:Arial, sans-serif;font-size:18px;font-weight:400;line-height:1.65;letter-spacing:0;color:var(--ink);}
.home-title{font-family:Tahoma, Arial, sans-serif;font-size:64px;font-weight:700;line-height:1.12;letter-spacing:0;color:var(--ink);}
h1{font-family:Tahoma, Arial, sans-serif;font-size:48px;font-weight:700;line-height:1.18;letter-spacing:0;color:var(--ink);}
h2{font-family:Tahoma, Arial, sans-serif;font-size:32px;font-weight:700;line-height:1.25;letter-spacing:0;color:var(--ink);}
h3,.service-card span{font-family:Tahoma, Arial, sans-serif;font-size:24px;font-weight:700;line-height:1.3;letter-spacing:0;color:var(--ink);}
.lead{font-family:Arial, sans-serif;font-size:22px;font-weight:400;line-height:1.5;letter-spacing:0;color:var(--ink);}
nav,.contact-strip{font-family:Arial, sans-serif;font-size:17px;font-weight:700;line-height:1.35;letter-spacing:0;color:var(--ink);}
button,.button{font-family:Arial, sans-serif;font-size:17px;font-weight:700;line-height:1.25;letter-spacing:0;color:var(--ink);}
label{font-family:Arial, sans-serif;font-size:18px;font-weight:700;line-height:1.35;letter-spacing:0;color:var(--ink);}
.form-hint,.source-context{font-family:Arial, sans-serif;font-size:16px;font-weight:400;line-height:1.5;letter-spacing:0;color:var(--ink);}
.field-error{font-family:Arial, sans-serif;font-size:16px;font-weight:700;line-height:1.5;letter-spacing:0;color:var(--error);}
.gallery-caption{font-family:Arial, sans-serif;font-size:16px;font-weight:400;line-height:1.5;letter-spacing:0;color:var(--ink);}
td{font-family:Arial, sans-serif;font-size:17px;font-weight:400;line-height:1.45;letter-spacing:0;color:var(--ink);}
th{font-family:Arial, sans-serif;font-size:17px;font-weight:700;line-height:1.45;letter-spacing:0;color:var(--ink);}
.technical{font-family:Courier New, monospace;font-size:17px;font-weight:400;line-height:1.5;letter-spacing:0;color:var(--ink);}
.breadcrumbs{font-family:Arial, sans-serif;font-size:16px;font-weight:400;line-height:1.5;letter-spacing:0;color:var(--ink);}
footer{font-family:Arial, sans-serif;font-size:17px;font-weight:400;line-height:1.5;letter-spacing:0;color:var(--ink);}
.admin-main h1{font-family:Tahoma, Arial, sans-serif;font-size:32px;font-weight:700;line-height:1.25;letter-spacing:0;color:var(--ink);}
.notice{font-family:Arial, sans-serif;font-size:17px;font-weight:700;line-height:1.4;letter-spacing:0;color:var(--ink);}
.brand{font-family:Tahoma, Arial, sans-serif;font-size:24px;font-weight:700;line-height:1.2;letter-spacing:0;color:var(--ink);}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:160px}body{margin:0;background:var(--canvas)}a{color:var(--action);text-underline-offset:4px}a:hover{color:var(--action-hover)}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.container{width:min(calc(100% - 2*var(--gutter)),var(--container));margin-inline:auto}.skip-link{position:fixed;top:8px;left:20px;transform:translateY(-200%);background:var(--surface);padding:12px;z-index:40}.skip-link:focus{transform:none}.site-header{position:sticky;top:0;background:var(--surface);z-index:20;border-bottom:1px solid var(--line)}.contact-strip{background:var(--ink);padding:12px 0}.contact-strip .container{display:flex;flex-wrap:wrap;gap:24px}.contact-strip a{color:var(--surface);text-decoration:none}.header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{color:var(--ink);text-decoration:none}.brand::first-letter{color:var(--brand)}.desktop-nav,.admin-nav{display:flex;align-items:center;flex-wrap:wrap;gap:24px}.desktop-nav>a,.nav-group>summary{text-decoration:none;color:var(--ink);cursor:pointer}.nav-group{position:relative}.nav-group summary{list-style:none;padding:12px 0}.nav-group summary::after{content:' +';color:var(--action)}.nav-group[open] summary::after{content:' −'}.nav-panel{position:absolute;top:100%;left:0;min-width:320px;max-height:calc(100dvh - 160px);overflow:auto;display:grid;gap:4px;background:var(--surface);border:1px solid var(--line);padding:16px;border-radius:var(--radius-card)}.nav-panel a{padding:12px;text-decoration:none}.nav-panel a:hover{background:var(--canvas)}.mobile-menu{display:none}.public-main,.admin-main{padding-top:48px;padding-bottom:80px}h1,h2,h3,p{margin-top:0}h1{margin-bottom:32px;max-width:100%;overflow-wrap:anywhere}h2{margin-top:48px;margin-bottom:24px}h3{margin-bottom:16px}p{margin-bottom:24px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin-bottom:64px}.hero img{display:block;width:100%;height:320px;object-fit:contain;max-width:480px;margin:auto}.hero .button{margin-right:24px}.text-link{display:inline-flex;align-items:center;gap:12px;padding:16px 0}.button,button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;border:1px solid var(--action);border-radius:var(--radius-control);background:var(--action);color:var(--surface);padding:12px 24px;text-decoration:none;cursor:pointer}button:hover,.button:hover{background:var(--action-hover);color:var(--surface)}button:disabled{opacity:.5;cursor:wait}.secondary{background:var(--surface);color:var(--action)}.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.breadcrumbs span:before{content:' / ';color:var(--muted)}.article{overflow-wrap:anywhere}.article p,.article ul,.article ol,.article .company-copy{max-width:860px}.article ul,.article ol{padding-left:24px;margin-bottom:32px}.article li{margin-bottom:12px}.article img{max-width:100%;height:auto;object-fit:contain}.source-image{display:block}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:48px}.service-card{display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:24px;text-decoration:none;min-width:0}.service-card span{color:var(--ink)}.service-card img{width:100%;height:200px;object-fit:contain}.service-card:hover{border-color:var(--action)}.service-card:hover span{color:var(--action)}.source-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:32px 0}.source-gallery>div{min-width:0}.source-gallery img{width:100%;height:200px;object-fit:contain}.image-link{display:inline-block;max-width:100%;margin-bottom:16px}.table-scroll{overflow-x:auto;max-width:100%;margin:32px 0;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface)}table{border-collapse:collapse;min-width:680px;width:100%}th,td{border:1px solid var(--line);padding:12px 16px;vertical-align:top}th{background:var(--canvas)}td p,th p{margin:0}td img{max-width:240px}.home-updates{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin:48px 0}.home-updates img{max-height:200px}.pagination,.navigation,.wp-pagenavi{display:flex;flex-wrap:wrap;gap:16px;padding:24px 0}.pagination>*{padding:8px}.newsList{display:grid;gap:24px}.newsList>div{padding:24px;border:1px solid var(--line);background:var(--surface)}.request-panel,.route-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:32px;margin-top:48px}.request-panel h2{margin-top:0}.form-panel{display:grid;gap:24px;max-width:760px}label{display:grid;gap:8px}input,textarea,select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);padding:12px 16px;min-height:52px;max-width:100%;width:100%}textarea{min-height:160px;resize:vertical}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--error)}.field-error{margin:8px 0 0;color:var(--error)}.consent{display:flex;align-items:flex-start;gap:12px}.consent input{width:24px;height:24px;min-height:24px;flex-shrink:0;margin:0}.form-hint{color:var(--muted);margin:0}.form-panel>button{justify-self:start}.notice{border:1px solid var(--line);background:var(--surface);padding:24px;margin-bottom:32px;border-radius:var(--radius-card)}.error-notice{border-color:var(--error);color:var(--error)}.success{border-color:var(--success);color:var(--success)}.empty{background:var(--surface);padding:32px}.request-details{display:grid;grid-template-columns:200px 1fr;gap:16px}.request-details dt{font-weight:700}.request-details dd{margin:0;overflow-wrap:anywhere}.preserve-lines{white-space:pre-wrap}.filter-form{display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin-bottom:32px}.admin-nav form{margin:0}.revision-picker{display:grid;gap:16px}.revision-content{margin-top:32px}.admin-main .form-panel{margin-bottom:32px}.source-context{color:var(--warning);padding:16px;border-left:4px solid var(--warning)}footer{background:var(--ink);color:var(--surface);padding:48px 0 24px}footer a{color:var(--surface)}footer a:hover{color:var(--surface)}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px}.footer-main nav{display:grid;align-content:start;gap:16px}.footer-main p{margin-bottom:16px}.footer-brand{font-weight:700}.credit{border-top:1px solid var(--muted);padding-top:24px;margin-top:32px}.rating iframe{border:0;width:100%;max-width:240px;height:160px}.rating a{display:block}dialog{border:1px solid var(--line);border-radius:var(--radius-dialog);background:var(--surface);max-width:calc(100vw - 40px);max-height:calc(100dvh - 40px);width:1080px;padding:24px}dialog::backdrop{background:rgba(20,43,59,.8)}.gallery-toolbar{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.gallery-image img{display:block;max-width:100%;max-height:64dvh;object-fit:contain;margin:auto}.gallery-caption,.gallery-status{margin:16px 0 0}.promo .ships,.promo .engines,.promo .clients,.promo .pluses,.promo .how,.promo .reasons,.promo .contacts{margin:48px 0}.promo .ship,.promo .how_one,.promo .engine,.promo .plus,.promo .reason{display:inline-block;vertical-align:top;width:calc(33.333% - 24px);margin:0 20px 24px 0;padding:24px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-card)}.promo .engine_img{margin-bottom:16px}.promo .clients_logos img{max-width:100%;height:auto}.promo .modal{position:static;display:block}.promo h2{text-transform:none}.promo img{max-width:100%;height:auto}.promo .order_block{padding:24px;background:var(--surface)}.promo a[href='#go']{display:none}.search-results{display:grid;gap:24px}.search-results>a{background:var(--surface);padding:24px;border:1px solid var(--line)}
@media(max-width:1080px){body{font-size:18px;}.home-title{font-size:48px;}h1{font-size:40px;}h2{font-size:28px;}h3,.service-card span{font-size:23px;}.lead{font-size:21px;}nav,.contact-strip{font-size:17px;}button,.button{font-size:17px;}label{font-size:18px;}.form-hint,.source-context{font-size:16px;}.field-error{font-size:16px;}.gallery-caption{font-size:16px;}td{font-size:17px;}th{font-size:17px;}.technical{font-size:17px;}.breadcrumbs{font-size:16px;}footer{font-size:17px;}.admin-main h1{font-size:28px;}.notice{font-size:17px;}.brand{font-size:22px;}}@media(max-width:680px){body{font-size:18px;}.home-title{font-size:36px;}h1{font-size:32px;}h2{font-size:26px;}h3,.service-card span{font-size:22px;}.lead{font-size:20px;}nav,.contact-strip{font-size:17px;}button,.button{font-size:17px;}label{font-size:18px;}.form-hint,.source-context{font-size:16px;}.field-error{font-size:16px;}.gallery-caption{font-size:16px;}td{font-size:17px;}th{font-size:17px;}.technical{font-size:17px;}.breadcrumbs{font-size:16px;}footer{font-size:17px;}.admin-main h1{font-size:26px;}.notice{font-size:17px;}.brand{font-size:20px;}}@media(max-width:1080px){:root{--gutter:32px;--gap:20px}.header-inner{flex-wrap:wrap;padding-block:20px;gap:20px}.desktop-nav{width:100%;gap:20px}.hero{gap:32px}.service-grid,.source-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-main{grid-template-columns:2fr 1fr}.rating{grid-column:1/-1}.promo .ship,.promo .how_one,.promo .engine,.promo .plus,.promo .reason{width:calc(50% - 24px)}}@media(max-width:680px){:root{--gutter:20px;--gap:16px}html{scroll-padding-top:200px}.contact-strip .container{gap:8px 16px}.contact-strip a{font-size:17px}.header-inner{padding-block:16px;gap:16px}.brand{font-size:20px}.desktop-nav{display:none}.mobile-menu{display:block;width:100%}.mobile-menu summary{padding:12px;border:1px solid var(--line);color:var(--ink);border-radius:var(--radius-control);cursor:pointer}.mobile-menu>nav{max-height:calc(100dvh - 200px);overflow:auto;display:grid;gap:8px;padding:16px;background:var(--surface)}.mobile-menu nav>a{padding:12px}.nav-panel{position:static;min-width:0;max-height:none;padding:8px}.hero{grid-template-columns:1fr;gap:24px}.hero img{height:240px}.public-main,.admin-main{padding-top:32px;padding-bottom:48px}.service-grid,.source-gallery,.home-updates{grid-template-columns:1fr;gap:16px}.service-card{padding:20px}.service-card img{height:200px}.request-panel,.route-panel{padding:20px}.footer-main{grid-template-columns:1fr;gap:32px}.request-details{grid-template-columns:1fr;gap:8px}.request-details dd{margin-bottom:16px}.admin-nav{gap:16px}.gallery-toolbar button{padding:12px 16px}.promo .ship,.promo .how_one,.promo .engine,.promo .plus,.promo .reason{display:block;width:100%;margin:0 0 24px}.form-panel button{width:100%}dialog{padding:16px}.filter-form{display:grid;width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.brand{display:inline-flex;align-items:center;gap:12px}.brand img{width:40px;height:40px;object-fit:contain}.source-banner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.source-banner{display:grid;gap:16px;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card)}.source-banner img{height:200px;object-fit:contain;margin:auto}.shared-source details{padding:24px;border:1px solid var(--line)}.shared-source summary{cursor:pointer;padding:12px 0}@media(max-width:680px){.brand img{width:32px;height:32px}.source-banner-grid{grid-template-columns:1fr}}

.source-illustration{max-width:860px;margin:32px 0}.source-illustration figcaption{font:400 16px/1.5 Arial,sans-serif;color:var(--muted)}
