@font-face{font-family:'Russo One';src:url('./assets/RussoOne-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Space Grotesk';src:url('./assets/SpaceGrotesk.ttf') format('truetype');font-style:normal;font-weight:300 700;font-display:swap}
:root{color-scheme:dark;--bg:#0D111A;--surface:#16202D;--border:#293443;--muted:#95A2B4;--gold:#D7BC83;--cream:#F3EBDD;font-family:'Space Grotesk',Arial,sans-serif;color:var(--cream);background:var(--bg);font-synthesis:none;font-optical-sizing:none}
*{box-sizing:border-box}
body{margin:0}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit;color:inherit}
a{color:inherit;text-decoration:none}
button{cursor:pointer}
[hidden]{display:none!important}
.page{position:relative;isolation:isolate;min-height:100svh;display:grid;place-items:center;overflow:hidden}
.sky{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.starfield{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:sky-drift 24s ease-in-out infinite alternate;transform-origin:75% 25%}
@keyframes sky-drift{0%{opacity:.78;transform:translate3d(0,0,0) scale(1)}50%{opacity:1}100%{opacity:.86;transform:translate3d(-4px,3px,0) scale(1.012)}}
.landing-content{width:960px;max-width:calc(100% - 96px);display:grid;gap:36px;transform:translateY(-3px);margin:84px 0 100px}
.profile{width:100%;display:grid;grid-template-columns:520px 320px;gap:120px;align-items:center}
.avatar{position:relative;display:grid;place-items:center;width:112px;height:112px;border:1px solid #d7bc8380;border-radius:50%;background:var(--surface);overflow:hidden;margin-bottom:25px;font-family:'Russo One',sans-serif;font-size:32px;font-weight:400;line-height:48px;color:var(--gold)}
/* Match Figma's square crop: x450, y105, 460px across the original 960x1280 photo. */
.avatar img{position:absolute;left:-97.826087%;top:-22.826087%;width:208.695652%;height:278.26087%;max-width:none;object-fit:fill}
.eyebrow{margin:0;font-size:11px;font-weight:500;letter-spacing:2px;line-height:16.5px;text-transform:uppercase;color:var(--gold)}
h1{font-family:'Russo One',sans-serif;font-size:48px;line-height:75px;font-weight:400;margin:0;letter-spacing:0;text-transform:uppercase}
.intro{font-size:18px;line-height:28px;font-weight:400;color:var(--muted);margin:0}
.reviews{display:flex;align-items:center;gap:9px;width:fit-content;font-size:13px;line-height:19.5px;color:var(--muted);margin:28px 0 0}
.contacts{display:flex;flex-direction:column;gap:24px;min-width:0}
h2{font-size:21px;font-weight:500;line-height:31.5px;margin:0}
.contact{display:flex;flex-direction:column;align-items:flex-start;gap:5px;width:fit-content;min-height:44px;padding:0;border:0;background:none;text-align:left;border-radius:2px}
.label{font-size:10px;letter-spacing:1.7px;line-height:15px;text-transform:uppercase;color:var(--gold);font-weight:500}
.value{font-size:16px;line-height:24px;font-weight:400;transition:color .15s ease}
.contact:hover .value,a.reviews:hover{color:var(--gold)}
.contact:focus-visible,.motion:focus-visible,.reviews:focus-visible{outline:2px solid var(--gold);outline-offset:7px}
.footer{position:absolute;left:64px;right:80px;bottom:33px;display:flex;justify-content:space-between;align-items:center;color:var(--muted)}
.signature{font-family:'Russo One',sans-serif;font-weight:400;font-size:12px;line-height:18px}
.motion{border:0;background:none;padding:8px 0 8px 8px;font-size:11px;line-height:16.5px;color:var(--muted)}
.motion:hover{color:var(--cream)}
.stars-paused .starfield{animation-play-state:paused}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:1100px){.profile{grid-template-columns:minmax(0,520px) minmax(260px,320px);gap:clamp(36px,6vw,90px)}.intro{max-width:480px}.desktop-break{display:none}h1{font-size:clamp(32px,4.3vw,48px)}}
@media(max-width:720px){.page{min-height:100svh;display:flex;align-items:center;justify-content:center;padding:64px 28px 86px}.landing-content{width:440px;max-width:100%;transform:none;margin:0;gap:38px}.profile{display:flex;flex-direction:column;align-items:stretch;gap:38px}.avatar{width:88px;height:88px;margin-bottom:22px;font-size:28px}h1{font-size:clamp(32px,10vw,40px);line-height:60px}.eyebrow{font-size:10px;letter-spacing:1.8px}.intro{font-size:15px;line-height:25px}.reviews{margin-top:22px}.contacts{gap:18px}h2{font-size:19px;line-height:29px}.contact{min-height:44px}.value{font-size:16px}.footer{left:28px;right:28px;bottom:16px}}
@media(max-height:620px) and (min-width:721px){.page{min-height:540px}.profile{transform:none}.footer{bottom:16px}}
@media(prefers-reduced-motion:reduce){.starfield{animation:none;transform:none;opacity:1}.value{transition:none}}
.feedback-strip{min-width:0}
.feedback-strip-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.feedback-strip-heading h2{font-size:10px;line-height:15px;letter-spacing:1.7px;font-weight:500;text-transform:uppercase;color:var(--gold)}
.feedback-controls{display:flex;gap:18px}
.feedback-controls button,.notes-header button{border:0;background:none;padding:0;color:var(--muted);font-size:11px;line-height:18px}
.feedback-controls button:hover,.notes-header button:hover{color:var(--gold)}
.feedback-controls button:focus-visible,.notes-header button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.feedback-rail{border:1px solid #d7bc8366;border-radius:8px;background:#16202d59;overflow:hidden;min-width:0}
.feedback-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:88px;padding:16px;text-align:center}
.feedback-empty p{font-size:15px;line-height:23px;margin:0}
.feedback-empty span{font-size:12px;line-height:18px;color:var(--muted)}
.feedback-viewport{overflow:hidden;min-width:0;border-radius:8px}
.feedback-viewport:focus-visible{outline:2px solid var(--gold);outline-offset:-3px}
.feedback-track{display:flex;width:max-content;animation:feedback-scroll var(--feedback-duration,80s) linear infinite}
.feedback-group{display:flex;flex-shrink:0;align-items:stretch;gap:0;min-width:0}
.feedback-note{flex:0 0 440px;width:440px;margin:0;padding:20px 28px;border-right:1px solid #d7bc832b}
.feedback-note p{font-size:14px;line-height:22px;height:66px;margin:0 0 9px;white-space:normal;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.feedback-note footer{font-size:11px;line-height:18px;color:var(--gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.feedback-viewport:hover .feedback-track,.feedback-viewport:focus-within .feedback-track,.feedback-paused .feedback-track{animation-play-state:paused}
@keyframes feedback-scroll{to{transform:translateX(-50%)}}
.testimonials-dialog{width:680px;max-width:calc(100% - 40px);max-height:80svh;border:1px solid var(--gold);border-radius:12px;padding:28px;background:var(--bg);color:var(--cream);font-family:inherit}
.testimonials-dialog::backdrop{background:#080b12cc}
.notes-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}
.notes-header h2{font-family:'Russo One',sans-serif;font-size:24px;line-height:34px}
.full-note{margin:0;padding:24px 0;border-top:1px solid #d7bc834d}
.full-note p{font-size:15px;line-height:25px;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 12px}
.full-note footer{font-size:12px;line-height:19px;color:var(--gold)}
@media(max-width:720px){.feedback-note{flex-basis:300px;width:300px;padding:20px}.feedback-group{min-width:300px}.feedback-empty p{font-size:14px}.feedback-empty span{font-size:11px}.testimonials-dialog{padding:22px}.notes-header h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.feedback-track{animation:none;min-width:100%;width:auto;display:block}.feedback-group{display:flex;min-width:0;width:max-content}.feedback-group[aria-hidden]{display:none}.feedback-viewport{overflow:auto}}
