/* Only the requested hero graphic, contact modal/triggers and floating control. */
.hero-vision svg{filter:none;overflow:visible}
.hero-vision .vision-paths{stroke:#d6b77a;stroke-width:1.7;fill:none}
.hero-vision .vision-nodes circle{fill:#d5b16b;stroke:#f1dfb6;stroke-width:1.5}
.hero-vision circle.vision-y-node{fill:url('#hero-y-gold');stroke:#f4dfaa;stroke-width:1.6;filter:drop-shadow(0 0 9px #e4bc6d66)}
.hero-vision .vision-y-letter{font:30px var(--serif);fill:#fff6d9;stroke:none}
.hero-vision .vision-center{left:46.154%;top:48.276%;width:50px;height:50px;display:grid;place-items:center;border:1.5px solid #f4dfaa;border-radius:50%;background:radial-gradient(circle at 40% 35%,#c5a15b,#8b692d);color:#fff6d9;font:32px/1 var(--serif);box-shadow:0 0 18px #e4bc6d44;transform:translate(-50%,-50%)}
.hero-vision .vision-label{font:600 12px/1.5 var(--sans);letter-spacing:.08em;white-space:nowrap;color:#f7f3e7;text-shadow:0 1px 5px #071c16,0 1px 2px #071c16}
.hero-vision .decisions{left:3.08%;top:25%;transform:translateX(-50%);text-align:center;color:#172c23;background:radial-gradient(ellipse,#f6f3eae8 25%,#f6f3ea00 75%);padding:3px 7px;text-shadow:0 1px 2px #f6f3ea}
.hero-vision .people{left:70%;top:10%;transform:translateX(-25%)}
.hero-vision .operations{left:61.54%;top:36%;transform:translateX(-25%)}
.hero-vision .data{left:63.85%;top:60%;transform:translateX(-20%)}
.hero-vision .growth{left:70%;top:83%}
.header nav .contact-trigger{background:transparent;color:inherit;font-size:12px;min-height:44px;white-space:nowrap}
.header nav .contact-trigger:hover{background:#c5a76218;color:#ead5a2}
.header nav .contact-trigger:focus-visible{outline:2px solid #b3954e;outline-offset:4px}
.hero .contact-trigger{white-space:nowrap}
.back-to-top{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:4;width:46px;height:46px;border:1px solid #c5a762;border-radius:50%;background:#11271ef5;color:#ead5a2;font:24px/1 var(--sans);display:grid;place-items:center;opacity:0;visibility:hidden;transform:translateY(8px);pointer-events:none;transition:opacity .2s ease,transform .2s ease,visibility .2s}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.back-to-top:hover{background:#253d28;color:#fff2cb}
body:has(dialog[open]) .back-to-top{opacity:0;visibility:hidden;pointer-events:none}
body.brief-is-open{overflow:hidden}
#brief-dialog{padding:28px 30px;width:calc(100% - 32px);max-width:490px;max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #b8bfad;border-radius:10px;background:#f5f2e9;color:#172c23}
#brief-dialog::backdrop{background:#071c16b8;backdrop-filter:blur(3px)}
#brief-dialog h2{font-size:40px;line-height:1.1;padding-right:36px;letter-spacing:-.015em}
#brief-dialog #brief-privacy{font-size:12px;line-height:1.6;color:#4b5d50;margin:10px 0 0;max-width:35ch}
#brief-dialog .dialog-close{top:14px;right:14px;display:grid;place-items:center;width:36px;height:36px;border:1px solid #bcc4b5;border-radius:50%;font:24px/1 var(--sans);color:#324b3c}
#brief-dialog .dialog-close:hover{background:#e5e9dc;color:#172c23}
#brief-dialog form{margin-top:22px}
#brief-dialog label{font-size:12px;line-height:1.5;font-weight:600;margin:14px 0 6px;color:#263f30}
#brief-dialog label:first-child{margin-top:0}
#brief-dialog input,#brief-dialog select,#brief-dialog textarea{font:14px/1.5 var(--sans);padding:10px 12px;border:1px solid #a8b6a5;border-radius:5px;background:#fdfcf7;color:#172c23;min-height:44px}
#brief-dialog input::placeholder,#brief-dialog textarea::placeholder{color:#566457;opacity:1}
#brief-dialog input:focus,#brief-dialog select:focus,#brief-dialog textarea:focus{border-color:#876a2f;outline:2px solid #b3954e66;outline-offset:2px}
#brief-dialog textarea{min-height:104px}
#brief-dialog select{cursor:pointer;padding-right:32px}
#brief-dialog form .button{width:100%;justify-content:space-between;margin-top:18px;padding:13px 16px;font-size:13px;min-height:46px}
#brief-dialog #brief-status{font-size:12px;line-height:1.6;color:#324b3c;margin-top:12px}
#brief-dialog #brief-status:empty{display:none}
#brief-dialog #prepared-brief:not([hidden]){margin-top:12px;font-size:12px;min-height:150px}
@media(max-width:1000px){.hero-vision .vision-label{font-size:10px}}
@media(max-width:760px){
 .hero-vision .vision-label{font-size:8px;letter-spacing:.04em}
 .hero-vision .decisions{color:#f7f3e7;background:#11271ee8;left:6%;padding:3px 5px}
 .hero-vision .vision-center{width:30px;height:30px;font-size:23px}
 .hero-vision .growth{left:62%;top:89%}
 .hero-vision .vision-paths{stroke-width:2}
 .back-to-top{right:16px;bottom:calc(max(16px,env(safe-area-inset-bottom)) + var(--dock-offset,0px));width:44px;height:44px}
 #brief-dialog{padding:24px 20px;max-height:calc(100dvh - 24px);width:calc(100% - 24px)}
 #brief-dialog h2{font-size:36px}#brief-dialog form{margin-top:18px}
 #brief-dialog input,#brief-dialog select,#brief-dialog textarea{font-size:16px}
 #brief-dialog .dialog-close{top:12px;right:12px}
 .header nav .contact-trigger{justify-content:space-between;margin-top:8px;padding:12px 16px;font-size:14px}
}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none;transform:none}}

/* Contact/footer/navigation refinements; approved page sections stay untouched. */
.menu-drawer-heading,.menu-backdrop{display:none}
.minimal-footer{justify-content:space-between;gap:32px;padding-top:23px;padding-bottom:23px;background:var(--ivory)}
.minimal-footer>.brand{flex-shrink:0;font-size:inherit;margin:0;min-height:64px}
.minimal-footer .brand img{width:72px;height:64px;object-fit:contain}
.minimal-footer .brand>span{font-size:22px;color:#253d28}
.minimal-footer .brand small{font-size:10px;letter-spacing:.22em}
.minimal-footer p{max-width:none;width:auto;order:0;font-size:12px;line-height:1.7;text-align:right;color:#4f604e;margin:0}
@media(max-width:760px){
 body.menu-is-open{position:fixed;left:0;right:0;width:100%;overflow:hidden}
 .header:has(nav.is-open){z-index:6}
 .header .menu-button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:0;background:transparent;flex-shrink:0;color:#f5f2e9}
 .menu-icon{display:block;position:relative;width:24px;height:16px}
 .menu-icon i{position:absolute;left:0;top:4px;width:24px;height:1.5px;background:currentColor;transition:transform .25s cubic-bezier(.22,1,.36,1)}
 .menu-icon i:last-child{top:11px}
 .menu-button[aria-expanded=true] .menu-icon i:first-child{transform:translateY(3.5px) rotate(45deg)}
 .menu-button[aria-expanded=true] .menu-icon i:last-child{transform:translateY(-3.5px) rotate(-45deg)}
 .menu-backdrop{display:block;position:fixed;inset:0;background:#061b16b8;z-index:5;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s}
 .menu-backdrop.is-open{opacity:1;visibility:visible}
 .header #navigation{display:flex;position:fixed;inset:0 0 0 auto;width:min(88vw,400px);height:100dvh;max-height:none;padding:24px 28px max(28px,env(safe-area-inset-bottom));background:#09251e;box-shadow:none;z-index:6;gap:0;align-items:stretch;overflow-y:auto;overscroll-behavior:contain;visibility:hidden;transform:translateX(100%);transition:transform .3s cubic-bezier(.22,1,.36,1),visibility .3s}
 .header #navigation.is-open{visibility:visible;transform:translateX(0)}
 .menu-drawer-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 46px;color:#d6b77a;font:12px/1.5 var(--sans)}
 .menu-close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid #c5a76266;border-radius:50%;background:transparent;color:#f5f2e9;font:28px/1 var(--sans)}
 .menu-close:hover{background:#c5a76218}
 .header #navigation>a{font:32px/1.2 var(--serif);letter-spacing:-.015em;color:#f5f2e9;padding:20px 0;min-height:72px;border-bottom:1px solid #f5f2e91f}
 .header #navigation>a::after{display:none}
 .header #navigation>a:hover{color:#d6b77a}
 .header #navigation .contact-trigger{margin-top:36px;min-height:48px;padding:14px 16px;justify-content:space-between;font-size:14px;border-color:#c5a762;color:#ead5a2}
 body.menu-is-open .back-to-top{visibility:hidden;pointer-events:none}
 .back-to-top{right:calc(16px + env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom) + var(--dock-offset,0px))}
 .minimal-footer{flex-direction:column;align-items:flex-start;gap:20px;padding:18px 24px 48px}
 .minimal-footer .brand img{width:68px;height:60px}
 .minimal-footer p{text-align:left;max-width:34ch;font-size:11px}
}
@media(prefers-reduced-motion:reduce){.header #navigation,.menu-backdrop,.menu-icon i{transition:none}}
.header>.brand img{width:60px;height:auto}
.header>.brand>span{font-size:27px}
.header>.brand small{font-size:9px}
@media(min-width:761px){.header #navigation>.contact-trigger{display:none}}
@media(max-width:760px){.header>.brand img{width:50px;height:auto}.header>.brand>span{font-size:23px}.header>.brand small{font-size:8px}}
#possibilities>.concept-note{display:none}
