:root{ --bg:#080a0b; --paper:#f2eee7; --text:#f5f0e9; --gold:#c8a56b; --gold-light:#e4c693; --muted:#aaa299; --line:rgba(255,255,255,.11); --serif:Georgia,"Times New Roman",serif; --sans:Arial,Helvetica,sans-serif; } *{ box-sizing:border-box; } html{ scroll-behavior:smooth; } body{ margin:0; background:var(--bg); color:var(--text); font-family:var(--sans); overflow-x:hidden; } body.menu-open{ overflow:hidden; } a{ color:inherit; text-decoration:none; } img{ display:block; } .wrap{ width:min(1180px,92vw); margin:auto; } .header{ position:fixed; z-index:1000; top:0; left:0; right:0; height:82px; display:flex; align-items:center; justify-content:space-between; padding:0 4vw; background:rgba(6,8,9,.92); backdrop-filter:blur(14px); border-bottom:1px solid var(--line); } .logo{ position:relative; z-index:1100; font-size:22px; font-weight:800; letter-spacing:.1em; white-space:nowrap; } .logo small{ display:block; margin-top:5px; color:#999; font-size:7px; letter-spacing:.42em; } .desktop-menu{ display:flex; gap:30px; align-items:center; font-size:11px; letter-spacing:.08em; } .desktop-menu a{ position:relative; opacity:.82; transition:.3s; } .desktop-menu a:hover, .desktop-menu a.active{ opacity:1; color:var(--gold); } .desktop-menu a:after{ content:""; position:absolute; left:0; bottom:-9px; width:0; height:1px; background:var(--gold); transition:.3s; } .desktop-menu a:hover:after, .desktop-menu a.active:after{ width:100%; } .menu-toggle{ display:none; position:relative; z-index:1100; width:42px; height:42px; border:0; background:transparent; cursor:pointer; } .menu-toggle span{ position:absolute; left:8px; width:26px; height:1px; background:#fff; transition:.35s; } .menu-toggle span:nth-child(1){top:13px} .menu-toggle span:nth-child(2){top:21px} .menu-toggle span:nth-child(3){top:29px} .menu-toggle.active span:nth-child(1){ top:21px; transform:rotate(45deg); } .menu-toggle.active span:nth-child(2){ opacity:0; } .menu-toggle.active span:nth-child(3){ top:21px; transform:rotate(-45deg); } .mobile-nav{ position:fixed; z-index:1050; inset:0; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:32px; background:rgba(5,7,8,.985); opacity:0; visibility:hidden; transform:translateY(-15px); transition:.4s ease; } .mobile-nav.active{ opacity:1; visibility:visible; transform:none; } .mobile-nav a{ font-family:var(--serif); font-size:34px; opacity:.8; transition:.3s; } .mobile-nav a:hover, .mobile-nav a.active{ color:var(--gold); opacity:1; } .hero{ position:relative; min-height:72vh; display:flex; align-items:flex-end; overflow:hidden; background: radial-gradient( circle at 76% 37%, rgba(200,165,107,.19), transparent 31% ), radial-gradient( circle at 20% 80%, rgba(110,91,64,.08), transparent 32% ), linear-gradient( 135deg, #07090a, #111518 ); } .hero:before{ content:""; position:absolute; width:560px; height:560px; right:-190px; top:65px; border:1px solid rgba(200,165,107,.15); border-radius:50%; } .hero:after{ content:""; position:absolute; width:325px; height:325px; right:65px; top:195px; border:1px solid rgba(200,165,107,.08); border-radius:50%; } .hero-content{ position:relative; z-index:2; width:min(1180px,92vw); margin:auto; padding:170px 0 85px; } .kicker{ color:var(--gold); font-size:10px; letter-spacing:.34em; margin-bottom:22px; text-transform:uppercase; } .hero h1{ margin:0; font-family:var(--serif); font-size:clamp(70px,9vw,140px); font-weight:400; line-height:.9; letter-spacing:-.045em; } .hero p{ max-width:660px; margin-top:28px; color:#ddd4ca; font-family:var(--serif); font-size:19px; line-height:1.7; } .contact{ padding:105px 0; background:var(--paper); color:#171717; } .contact-grid{ display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; align-items:start; } .contact h2{ margin:0; font-family:var(--serif); font-size:clamp(48px,6vw,84px); font-weight:400; line-height:.95; letter-spacing:-.03em; } .contact-copy p{ margin-top:28px; color:#514c45; font-family:var(--serif); font-size:18px; line-height:1.8; } .contact-form{ display:grid; gap:20px; } .field{ display:grid; gap:8px; } label{ color:#6d665d; font-size:10px; letter-spacing:.12em; } input, textarea{ width:100%; padding:15px 0; border:0; border-bottom:1px solid #bcb3a7; border-radius:0; background:transparent; color:#171717; font-family:inherit; font-size:16px; outline:none; transition:.3s; } input::placeholder, textarea::placeholder{ color:#8e887f; } input:focus, textarea:focus{ border-color:var(--gold); } textarea{ min-height:150px; resize:vertical; } button{ width:max-content; margin-top:12px; padding:16px 24px; border:0; background:var(--gold); color:#17120d; font-size:10px; font-weight:700; letter-spacing:.1em; cursor:pointer; transition:.3s; } button:hover{ background:var(--gold-light); transform:translateY(-3px); } .form-message{ margin-bottom:25px; padding:16px 18px; font-size:14px; line-height:1.6; } .form-message.success{ background:#e7efe6; color:#2d5031; border-left:3px solid #5d8b62; } .form-message.error{ background:#f3e5e5; color:#7a2e2e; border-left:3px solid #a85151; } .info{ padding:90px 0; background:#0b0e10; } .info-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; } .info-card{ min-height:275px; padding:32px; display:flex; flex-direction:column; justify-content:space-between; border:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.012); transition:.35s; } .info-card:hover{ transform:translateY(-6px); border-color:rgba(200,165,107,.5); background:rgba(255,255,255,.025); } .info-card > span{ color:var(--gold); font-size:9px; letter-spacing:.2em; } .info-card h3{ margin:0 0 13px; font-family:var(--serif); font-size:31px; font-weight:400; } .info-card p{ margin:0; color:#aaa299; font-size:13px; line-height:1.75; } .info-card a{ transition:.3s; } .info-card a:hover{ color:var(--gold); } .contact-message{ padding:95px 0; background:#111416; } .contact-message-inner{ display:grid; grid-template-columns:1fr .75fr; gap:70px; align-items:end; } .contact-message h2{ margin:0; font-family:var(--serif); font-size:clamp(48px,6vw,82px); font-weight:400; line-height:.95; } .contact-message p{ margin:0; color:#aaa299; font-family:var(--serif); font-size:17px; line-height:1.75; } .trusted{ position:relative; padding:85px 0 80px; overflow:hidden; background:#f4f1eb; color:#171717; border-top:1px solid #ddd7ce; } .trusted:before{ content:"TRUST"; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); color:rgba(0,0,0,.018); font-family:var(--serif); font-size:clamp(130px,18vw,310px); pointer-events:none; } .trusted-inner{ position:relative; z-index:2; } .trusted-label{ margin-bottom:13px; text-align:center; color:#9b8057; font-size:9px; letter-spacing:.3em; } .trusted-title{ margin:0 0 50px; text-align:center; font-family:var(--serif); font-size:clamp(30px,3.3vw,45px); font-weight:400; } .trusted-logos{ display:grid; grid-template-columns:repeat(4,1fr); gap:25px; align-items:center; } .trusted-logo{ min-height:135px; display:flex; align-items:center; justify-content:center; padding:25px; background:rgba(255,255,255,.46); border:1px solid rgba(0,0,0,.055); transition:.35s ease; } .trusted-logo:hover{ transform:translateY(-6px); background:#fff; box-shadow:0 20px 40px rgba(0,0,0,.075); } .trusted-logo img{ width:auto; height:auto; max-width:190px; max-height:82px; object-fit:contain; filter:grayscale(100%); opacity:.70; transition:.35s ease; } .trusted-logo:hover img{ filter:grayscale(0); opacity:1; transform:scale(1.03); } footer{ padding:70px 0 30px; background:#060809; border-top:1px solid var(--line); } .footer-grid{ display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:45px; } footer h4{ margin:0 0 17px; color:#aaa; font-size:9px; letter-spacing:.2em; } footer p, footer a{ color:#aaa; font-size:12px; line-height:1.9; } footer a{ transition:.3s; } footer a:hover{ color:var(--gold); } .copy{ margin-top:50px; padding-top:20px; border-top:1px solid var(--line); color:#777; font-size:9px; } .reveal{ opacity:0; transform:translateY(28px); transition: opacity .85s ease, transform .85s ease; } .reveal.show{ opacity:1; transform:none; } @media(max-width:950px){ .desktop-menu{ display:none; } .menu-toggle{ display:block; } .contact-grid, .contact-message-inner{ grid-template-columns:1fr; gap:50px; } .info-grid{ grid-template-columns:1fr; } .trusted-logos{ grid-template-columns:1fr 1fr; } .footer-grid{ grid-template-columns:1fr 1fr; } } @media(max-width:560px){ .header{ height:72px; padding:0 20px; } .logo{ font-size:18px; } .logo small{ font-size:5px; letter-spacing:.34em; } .hero{ min-height:650px; } .hero:before{ width:390px; height:390px; right:-230px; top:130px; } .hero:after{ width:220px; height:220px; right:-30px; top:215px; } .hero-content{ padding:125px 0 70px; } .hero h1{ font-size:58px; } .hero p{ font-size:16px; } .contact{ padding:75px 0; } .contact h2{ font-size:47px; } .contact-copy p{ font-size:16px; } button{ width:100%; } .info{ padding:70px 0; } .info-card{ min-height:215px; padding:27px; } .contact-message{ padding:75px 0; } .contact-message h2{ font-size:46px; } .trusted{ padding:60px 0; } .trusted-title{ margin-bottom:30px; font-size:31px; } .trusted-logos{ grid-template-columns:1fr 1fr; gap:10px; } .trusted-logo{ min-height:105px; padding:15px; } .trusted-logo img{ max-width:130px; max-height:60px; } .footer-grid{ grid-template-columns:1fr; gap:28px; } .mobile-nav a{ font-size:31px; } } @media(max-width:380px){ .trusted-logos{ grid-template-columns:1fr; } } @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}} .header{z-index:1100}