@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');
:root{--navy:#071a31;--gold:#d8b878;--cream:#f5f2eb;--ink:#142236;--muted:#687789;--line:rgba(7,26,49,.12);--shadow:0 20px 55px rgba(7,26,49,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",Arial,sans-serif;color:var(--ink);line-height:1.65}a{text-decoration:none;color:inherit}.container{width:min(1160px,calc(100% - 40px));margin:auto}
.site-header{position:fixed;z-index:50;top:0;left:0;right:0;background:rgba(7,26,49,.93);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.1)}.nav-wrap{min-height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center;color:#fff;letter-spacing:.08em}.brand-mark{width:38px;height:38px;border:1px solid var(--gold);display:grid;place-items:center;color:var(--gold);font-family:Georgia,serif;font-size:22px}.brand strong{display:block;font-size:12px}.brand small{display:block;color:#bdc9d5;font-size:10px;letter-spacing:.16em;text-transform:uppercase}.nav{display:flex;align-items:center;gap:28px;color:#e8edf2;font-size:13px;font-weight:600}.nav a:hover{color:var(--gold)}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:28px}
/*
.hero-bg {
    position: absolute;
    inset: -12%;

    background-color: #071a31;
    background-image: url("https://upload.wikimedia.org/wikipedia/commons/9/95/Geneva_Lac_Leman.jpg");
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;

    transform: scale(1.12);
    animation: heroDeepZoom 12s ease-in-out infinite alternate;

    z-index: 0;
    will-change: transform;
}
*/

.hero{height:100vh;min-height:680px;position:relative;display:grid;align-items:center;overflow:hidden;color:#fff}.hero-bg{position:absolute;inset:-12%;background-image:url("https://upload.wikimedia.org/wikipedia/commons/9/95/Geneva_Lac_Leman.jpg");background-position:center center;background-size:cover;background-repeat:no-repeat;transform:scale(1.12);animation:heroDeepZoom 12s ease-in-out infinite alternate;z-index:0;will-change:transform}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,18,35,.9),rgba(4,18,35,.58) 48%,rgba(4,18,35,.16)),linear-gradient(0deg,rgba(4,18,35,.48),transparent 40%);z-index:1}.hero-content{position:relative;padding-top:90px;max-width:900px;position:relative;z-index:2}.eyebrow{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);font-weight:700;margin:0 0 16px}.hero h1{font:500 clamp(44px,6.5vw,82px)/1.03 "Playfair Display",Georgia,serif;margin:0 0 24px}.hero h1 em,h2 em{color:var(--gold);font-style:italic}.hero-lead{font-size:18px;max-width:690px;margin-bottom:34px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:0 23px;border:1px solid transparent;font:700 12px "DM Sans";letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.btn-primary{background:var(--gold);color:var(--navy)}.btn-light{border-color:rgba(255,255,255,.55);color:#fff}.hero-badge{margin-top:52px;display:flex;gap:16px;align-items:center;font-size:11px;color:#d9e1e8;text-transform:uppercase;letter-spacing:.12em}.hero-badge 
strong{color:#fff}.scroll-cue{position:absolute;right:5%;bottom:32px;color:var(--gold);font-size:27px;animation:bounce 2s infinite}
.section{padding:110px 0}.two-col{display:grid;grid-template-columns:1.2fr .8fr;gap:90px;align-items:center}h2{font:500 clamp(34px,4vw,54px)/1.1 "Playfair Display",Georgia,serif;margin:0 0 24px;color:var(--navy)}.lead{font-size:18px;color:#536375}.legal-card{display:flex;gap:15px;align-items:center;margin-top:30px;padding:18px;border:1px solid var(--line);background:#fbfaf7;font-size:13px}.seal{width:42px;height:42px;border:1px solid var(--gold);display:grid;place-items:center;font-weight:800}.experience-panel{background:var(--navy);color:#fff;min-height:390px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;position:relative;overflow:hidden}.orbit{position:absolute;width:330px;height:330px;border:1px solid rgba(216,184,120,.35);border-radius:50%;animation:spin 14s linear infinite}.years{font:600 105px/1 "Playfair Display";color:var(--gold);position:relative}.years span{font-size:92px}.experience-panel p{position:relative;margin:10px 0 32px;color:#c7d2dc}.mini-stats{display:flex;gap:25px;position:relative}.mini-stats span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#aebdca}.mini-stats b{display:block;color:#fff;font-size:16px}
.services{background:var(--cream)}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:48px}.section-head>p{max-width:420px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{background:#fff;padding:30px;min-height:280px;border:1px solid transparent;position:relative;transition:.3s}.service-card:hover{transform:translateY(-6px);border-color:rgba(216,184,120,.7);box-shadow:var(--shadow)}.icon{display:grid;place-items:center;width:45px;height:45px;background:var(--navy);color:var(--gold);font-size:21px}.num{position:absolute;right:25px;top:30px;color:#b8c1ca;font-size:11px}.service-card h3{font:600 23px/1.2 "Playfair Display";color:var(--navy);margin:38px 0 12px}.service-card p{font-size:14px;color:var(--muted)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.step{padding:30px 25px 10px;border-right:1px solid var(--line)}.step:last-child{border-right:0}.step b{color:var(--gold);font-size:12px}.step h3{font:600 27px "Playfair Display";margin:18px 0 8px;color:var(--navy)}.step p{font-size:14px;color:var(--muted)}
.contact{background:var(--navy);color:#fff}.contact h2{color:#fff}.contact .lead{color:#bdc9d5}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.contact-details{margin-top:38px}.contact-details p{border-top:1px solid rgba(255,255,255,.14);padding:17px 0;margin:0;display:grid;grid-template-columns:110px 1fr;gap:15px;font-size:14px}.contact-details span{color:var(--gold);text-transform:uppercase;font-size:10px}.contact-form{background:#fff;padding:34px;color:var(--ink);box-shadow:var(--shadow)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:17px}input,textarea{display:block;width:100%;margin-top:7px;padding:14px;border:1px solid #d6dce2;background:#fbfcfd;font:14px "DM Sans";outline:none}input:focus,textarea:focus{border-color:var(--gold)}textarea{resize:vertical}.form-note{font-size:11px;color:#778493}
.footer{background:#041326;color:#aebdca;padding:55px 0 0}.footer-grid{display:grid;grid-template-columns:1.5fr .6fr 1fr;gap:60px;padding-bottom:45px}.footer h4{color:#fff;font-size:11px;letter-spacing:.15em;text-transform:uppercase}.footer-grid a{display:block;font-size:13px;margin:7px 0}.footer-grid p{font-size:12px;line-height:1.8}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:18px 0;display:flex;justify-content:space-between;font-size:11px}.reveal{opacity:0;transform:translateY(24px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}
@keyframes photoZoom{to{transform:scale(1.08)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bounce{50%{transform:translateY(8px)}}
@media(max-width:850px){.menu-toggle{display:block}.nav{position:absolute;display:none;left:20px;right:20px;top:70px;padding:18px;background:var(--navy);flex-direction:column;align-items:flex-start;gap:18px}.nav.open{display:flex}.two-col,.contact-grid{grid-template-columns:1fr;gap:45px}.service-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.step:nth-child(2){border-right:0}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.container{width:calc(100% - 28px)}.hero h1{font-size:43px}.hero-lead{font-size:16px}.section{padding:78px 0}.section-head{display:block}.service-grid,.steps,.form-row,.footer-grid{grid-template-columns:1fr}.step{border-right:0;border-bottom:1px solid var(--line)}.contact-form{padding:23px}.footer-bottom{display:block}.footer-bottom span{display:block;margin:5px 0}}

@keyframes heroDeepZoom{0%{transform:scale(1.12) translate3d(-1%,0,0)}100%{transform:scale(1.38) translate3d(1%,0,0)}}
@media(prefers-reduced-motion:reduce){.hero-bg{animation:none;transform:scale(1.22)}}
