/* VELNIS — refinements loaded last: legibility, mobile composition, touch targets and the Digital page. */
:root{--champagne-ink:#76603a;--muted:#5f6764}

/* Fictional naval drawings: AVIF first; atmosphere.css keeps the WebP fallback. */
.naval-watermark,.inner .method:before,.inner .contact-layout:before,.home .digital-teaser:before{background-image:image-set(url('assets/velnis-naval-filigree.v2.avif') type('image/avif'),url('assets/velnis-naval-filigree.v2.webp') type('image/webp'))}

/* Legible small labels and darker champagne text on ivory. */
.logo span{font-size:9px;letter-spacing:2.2px}
.eyebrow,.page-heading .eyebrow,.signature-copy>.eyebrow,.agent-story>.eyebrow,.closing .eyebrow{font-size:11px;letter-spacing:2.4px}
h2.eyebrow{font-family:'DM Sans',sans-serif;font-weight:500;line-height:1.5}
.signature-copy>.eyebrow,.agent-story>.eyebrow,.inner .contact-layout .eyebrow,.inner .expertise-list .eyebrow,.inner .closing .eyebrow{color:var(--champagne-ink)}
.number,.inner .expertise-list .number{color:#8b7045}
.inner .method article>span{font-size:11px;color:var(--champagne-ink)}
.inner .method p{color:var(--muted)}
footer>div:last-child,footer small{font-size:11px}
footer>nav{display:flex;flex-wrap:wrap;gap:0 28px;align-content:start;font-size:13px}
footer>nav a{display:inline-block;padding:12px 0}
header .logo{display:inline-block;padding:3px 0}
footer .logo{display:inline-block;padding:8px 0}

/* Hero: one descriptive line under the unchanged title. */
.hero-media{display:contents}
.hero-line{max-width:31em;margin:30px 0 0;font-size:16px;line-height:1.65;letter-spacing:.2px;color:#ece7dc;text-wrap:balance}
.home .hero-copy>.underlink{margin-top:30px}
.luxe-hero .hero-meta{font-size:11px;letter-spacing:2px;gap:12px 24px;flex-wrap:wrap}
.luxe-hero .hero-meta span:last-child{color:#b7b9b1}

/* Competences beside the compass: name plus one precise line. */
.signature-links a{grid-template-columns:28px 1fr 22px}
.signature-links a>.signature-number{font-size:11px;color:var(--champagne-ink);align-self:start;padding-top:.95em}
.signature-links a>.signature-text{display:flex;flex-direction:column;gap:7px;font-size:inherit;letter-spacing:normal;color:inherit}
.signature-text strong{font-family:Manrope,sans-serif;font-weight:400;font-size:clamp(26px,2.8vw,43px);line-height:1.15;letter-spacing:-1.5px}
.signature-text small{font-size:14px;line-height:1.5;letter-spacing:.2px;color:var(--muted);transition:color .35s}
.signature-links a:hover small,.signature-links a:focus-visible small{color:#4f5653}
.compass-motion,.compass-open .compass-motion{width:44px;height:44px}

/* Digital teaser on the home page. */
.digital-teaser .teaser-line{max-width:28em;margin:24px 0 0;font-size:16px;line-height:1.65;color:#c9d1cc}
.home .digital-teaser .button{margin-top:36px}

/* Interior headings: an optional single line under the title. */
.inner .page-heading .lead{position:relative;z-index:1;max-width:34em;margin:30px 0 0;font-size:17px;line-height:1.7;color:#b9c6c6}

/* Competences: one promise and four concrete operations, without extra cards. */
.expertise-copy{min-width:0}
.inner .expertise-list .expertise-copy p{max-width:34em;margin:24px 0 0;font-size:15px;line-height:1.7;color:var(--muted)}
.inner .expertise-list article:nth-child(2) .expertise-copy p{color:#b5c6c8}
.inner .expertise-list li{line-height:1.45}

/* Opening: the skip control is a real 44px target, labelled with its key. */
.intro-skip{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:10px 2px;font-size:12px;letter-spacing:1.4px;color:#e4d9bd;border-bottom-color:#c8b89180}
.intro-skip kbd{font:inherit;font-size:11px;letter-spacing:1px;padding:2px 7px;border:1px solid #c8b89155;border-radius:2px;color:#c6b995}
.intro-skip:hover{color:#fff;border-bottom-color:#e4d9bd}
.intro-skip:focus-visible{outline:0;color:#fff;border-bottom-color:#f3ead2;box-shadow:0 1px 0 #f3ead2}
@media(hover:none){.intro-skip kbd{display:none}}

/* Digital: illustrative report, then what VELNIS actually builds. */
.agent-demo{font-size:11px;letter-spacing:1.4px;text-align:right}
.agent-console-top{flex-wrap:wrap;row-gap:10px}
.agent-selectors button{font-size:15px;min-height:56px}
.agent-selectors button span{font-size:11px;color:var(--champagne-ink)}
.agent-output{grid-template-columns:minmax(118px,auto) 1fr}
.agent-output>span{font-size:11px;letter-spacing:1.2px}
.agent-output>b{font-size:15px}
.toolset{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:1fr 1.1fr;gap:48px 8%;padding:110px 6.5%;background:radial-gradient(ellipse at 10% 0%,#28536155,transparent 55%),linear-gradient(115deg,#0b2430,#163a45);color:#f0eadd;border-top:1px solid #c9b18525}
.toolset .eyebrow{color:#cfb98d}
.toolset h2{font-size:clamp(34px,3.25vw,51px);line-height:1.2}
.toolset h2 em{color:#d4bd93}
.route-schema{margin:44px 0 0;max-width:470px}
.route-schema svg{display:block;width:100%;height:auto}
.route-schema .deck{fill:#ffffff05;stroke:#c9b18570;stroke-width:1}
.route-schema .frames{fill:none;stroke:#c9b18524;stroke-width:1}
.route-schema .route{fill:none;stroke:#dcc79e;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}
.route-schema .route-open{fill:none;stroke:#df9a7c;stroke-width:2;stroke-dasharray:5 6}
.route-schema .node{fill:#f0eadd}
.route-schema .flag{fill:none;stroke:#df9a7c;stroke-width:1.5}
.route-schema text{fill:#cfc6b3;font:500 13px 'DM Sans',sans-serif;text-anchor:middle}
.route-schema figcaption{display:flex;flex-wrap:wrap;gap:8px 26px;margin-top:16px;font-size:12px;letter-spacing:.4px;color:#c3cdcd}
.route-schema figcaption i{display:inline-block;width:24px;margin-right:9px;vertical-align:middle;border-top:2px solid #dcc79e}
.route-schema figcaption .key-open{border-top-style:dashed;border-top-color:#df9a7c}
.tool-list{list-style:none;margin:0;padding:0;align-self:center}
.tool-list li{display:grid;grid-template-columns:1fr auto;gap:8px 24px;padding:26px 0;border-top:1px solid #c9b18530}
.tool-list li:last-child{border-bottom:1px solid #c9b18530}
.tool-list h3{font-size:24px;line-height:1.25;letter-spacing:-.6px}
.tool-list p{grid-column:1;margin:0;font-size:15px;line-height:1.7;color:#b8c7c8}
.tool-status{grid-column:2;grid-row:1;align-self:center;padding:5px 11px;border:1px solid #c9b18560;font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:#dccaa3;white-space:nowrap}
.toolset-note{grid-column:1/-1;margin:0;padding-top:6px;font-size:13px;color:#a9bbbf}

/* Email is the primary contact; messengers remain distinct secondary actions. */
.contact-layout aside{min-width:0}
.contact-email{display:block;width:fit-content;max-width:100%;margin-top:36px;padding:12px 0;font-family:Manrope,sans-serif;font-size:clamp(23px,2.25vw,35px);letter-spacing:-.7px;line-height:1.4;border-bottom:1px solid #a48d6450;overflow-wrap:anywhere}
.contact-email:hover{color:var(--champagne-ink)}
.contact-phone{display:block;width:fit-content;margin-top:8px;padding:12px 0;font-size:17px;letter-spacing:.3px;color:var(--muted)}
.contact-phone:hover{color:var(--ink)}
.contact-channels,.footer-channels{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.contact-channels a,.footer-channels a{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 16px;border:1px solid #a48d6466;font-size:13px;line-height:1.4;background:#f5f2eb99;transition:background .2s,border-color .2s}
.contact-channels svg,.footer-channels svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.contact-channels a:hover{background:#e9e1d2;border-color:#8b7045}
footer .footer-email{display:block;width:fit-content;max-width:100%;margin-top:14px;padding:12px 0;font-size:16px;color:#e7ddcb;letter-spacing:.2px;overflow-wrap:anywhere}
footer .footer-phone{display:block;width:fit-content;padding:8px 0;font-size:13px;color:#bbc7c6;letter-spacing:.4px}
footer .footer-channels{margin-top:12px;gap:10px}
footer .footer-channels a{min-height:44px;padding:10px 12px;font-size:12px;color:#d1dad8;border-color:#c9b18550;background:transparent}
footer .footer-channels a:hover{background:#c9b18512;border-color:#c9b18599;color:#e0c89b}
.inner .contact-layout form .form-heading{margin:0 0 28px;padding-bottom:22px;border-bottom:1px solid #c9b18530;color:#d6c29a}
.inner form .form-note{margin:14px 0 0;padding:0;border:0;font-size:12px;line-height:1.6;color:#c2cfd2}
.inner form label{font-size:13px}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.contact-fields label{min-width:0}
.form-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.inner form .form-note a{text-decoration:underline;text-underline-offset:3px}
.inner form .form-status{padding:15px 18px;border-left:2px solid #d6c29a;background:#ffffff08;font-size:14px}
.inner form .form-status[data-state="error"]{border-color:#e5a492;color:#ffdbd1}
.inner form .form-status[data-state="success"]{border-color:#a2cebf;color:#d6f1e7}
.inner form .button:disabled{opacity:.6;cursor:wait}
@media(max-width:400px){.contact-fields{grid-template-columns:1fr;gap:0}}
@media(prefers-reduced-motion:reduce){.contact-channels a,.footer-channels a{transition:none}}

@media(max-width:1000px){.toolset{grid-template-columns:1fr}}

/* Phones: art-directed yacht, legible hierarchy, compass after the links. */
@media(max-width:650px){
  .logo span{font-size:9px;letter-spacing:1.4px}
  .luxe-hero{height:calc(100svh - 86px);min-height:640px;max-height:860px;background:#061a24}
  .luxe-hero .hero-image{top:auto;bottom:0;height:62%;object-fit:cover;object-position:88% 55%;opacity:1;mask-image:linear-gradient(to bottom,transparent,#000 22%);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 22%)}
  .luxe-hero .shade{background:linear-gradient(0deg,#061a24c4,transparent 26%)}
  .luxe-hero .hero-copy{padding:46px 6.5% 0}
  .luxe-hero h1{font-size:clamp(36px,10.6vw,44px);line-height:1.12}
  .hero-line{margin-top:22px;font-size:15px;line-height:1.6;max-width:21em}
  .home .hero-copy>.underlink{margin-top:20px}
  .luxe-hero .hero-meta{bottom:24px;font-size:11px;letter-spacing:1.2px;gap:6px 18px}
  .luxe-hero .hero-meta span:nth-child(2){display:block;font-size:11px;letter-spacing:1.2px}
  .navigation-signature{gap:8px;padding:56px 6.5% 40px}
  .compass-open{grid-row:auto;max-width:300px}
  .signature-links a{grid-template-columns:24px 1fr 18px;gap:14px;padding:22px 0}
  .signature-text strong{font-size:27px}
  .signature-text small{font-size:13px}
  .signature-copy>.eyebrow{margin-bottom:20px}
  .compass-open .compass-motion{right:0;bottom:2%}
  .digital-teaser .teaser-line{font-size:15px}
  .inner .page-heading .lead{font-size:15px;margin-top:22px}
  .inner .expertise-list .expertise-copy p{margin-top:16px;font-size:14px}
  .page-heading h1,.inner .page-heading h1{font-size:clamp(36px,10.6vw,43px)}
  .closing{flex-direction:column;align-items:flex-start}
  .button{font-size:11px;min-height:52px}
  .agent-output{grid-template-columns:104px 1fr}
  .agent-demo{margin-left:0;width:100%;text-align:left}
  .toolset{padding:72px 6.5%;gap:36px}
  .route-schema{margin-top:32px}
  .tool-list li{grid-template-columns:1fr;padding:22px 0}
  .tool-status{grid-column:1;grid-row:auto;justify-self:start;margin-top:6px}
  .tool-list h3{font-size:22px}
  .tool-list p{font-size:14px}
  .inner form{padding:28px 22px}
  footer>nav{gap:0 22px}
}
@media(prefers-reduced-motion:reduce){.signature-text small{transition:none}}

/* Final detailing: clear interaction, restrained service hierarchy and finish. */
.home .hero-copy>.underlink{display:inline-flex;min-height:44px;gap:28px}
.home .hero-copy>.underlink:hover{gap:38px}
.signature-links a{position:relative}
.signature-links a:before{content:'';position:absolute;left:-18px;top:34px;bottom:34px;width:2px;background:#a58b5b;opacity:0;transform:scaleY(.4);transition:opacity .3s,transform .3s}
.signature-links a.is-pointed:before{opacity:.85;transform:scaleY(1)}
.signature-links a.is-pointed i{color:#725832}
.compass-bearing{font-size:8px;letter-spacing:1.45px}
.inner .expertise-list article{scroll-margin-top:32px}
.inner .expertise-list ul{border-top:1px solid #a48d6440}
.inner .expertise-list li:first-child{padding-top:16px}
.inner .expertise-list li:last-child{border-bottom:0}
.inner .expertise-list article:nth-child(2) ul{border-color:#c9b18540}
.inner .method article>span{display:inline-grid;place-items:center;min-width:38px;height:38px;border:1px solid #a48d6455;border-radius:50%;letter-spacing:.8px}
.inner .method h2{margin-top:22px}
.inner .method p{max-width:34em}
.inner .quote>span{display:block;margin-top:26px;line-height:1.6}
.toolset-intro h2{max-width:13em}
.tool-list h3{font-size:clamp(22px,1.65vw,27px)}
.agent-panel h3{min-height:1.3em}
.agent-output{min-height:106px;align-content:center}
footer a:hover{color:#e0c89b}
#mobile-nav a[aria-current=page]{color:#765c35}
@media(min-width:651px){#mobile-nav{display:none!important}}
@media(max-width:650px){
  .signature-links a:before{left:-12px;top:25px;bottom:25px}
  .inner .method article>span{width:34px;height:34px}
  .inner .expertise-list ul{margin-top:12px}
  .tool-list li{gap:10px}
  .inner input,.inner textarea,.inner select{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.signature-links a:before{transition:none}}

/* Hardening pass: no-JS fallback, AA contrast, balanced titles, direct path to contact. */
html:not(.js) .menu-toggle{display:none}
.logo span{color:#76603a}
.agent-selectors button{color:#566a70}
h1{text-wrap:balance}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px 44px;margin-top:30px}
.hero-actions .underlink{display:inline-flex;min-height:44px;gap:28px}
.hero-actions .underlink:hover{gap:38px}
@media(max-width:650px){.hero-actions{margin-top:18px;gap:4px 34px}}
@media(prefers-reduced-motion:reduce){.hero-actions .underlink{transition:none}}
.nobr{white-space:nowrap}
