@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');

:root{
  --navy:#07131d; --navy2:#0c1d2b; --gold:#c89a3d; --gold2:#e0b55d;
  --ink:#17212a; --muted:#68737d; --paper:#f7f6f2; --white:#fff;
  --line:rgba(200,154,61,.32); --max:1180px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);font-family:"DM Sans",Arial,sans-serif;background:var(--paper);line-height:1.65}
a{color:inherit;text-decoration:none} button,input,textarea{font:inherit}
.site-header{height:88px;background:rgba(7,19,29,.97);display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,28px);position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(255,255,255,.09)}
.brand{display:flex;align-items:center;gap:12px;color:white}.brand-mark{width:50px;height:50px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;font:600 22px "Playfair Display",serif;color:var(--gold)}
.brand strong{display:block;font:600 20px "Playfair Display",serif;letter-spacing:.08em}.brand small{display:block;color:var(--gold);font-size:9px;letter-spacing:.18em}
.nav{display:flex;align-items:center;gap:27px;color:#e8edf1;text-transform:uppercase;font-size:12px;font-weight:600;letter-spacing:.05em}.nav a:not(.nav-cta):hover{color:var(--gold2)}
.nav-cta,.button{display:inline-flex;align-items:center;gap:18px;padding:15px 23px;border:1px solid var(--gold);font-weight:700;text-transform:uppercase;font-size:12px;letter-spacing:.04em;transition:.2s}
.nav-cta,.button-gold{background:var(--gold);color:#101820}.nav-cta:hover,.button-gold:hover{background:var(--gold2);transform:translateY(-1px)}
.menu-toggle{display:none;background:none;border:0;color:white;font-size:25px}

.hero{min-height:650px;background:radial-gradient(circle at 72% 40%,#173247 0,#07131d 42%,#050e15 100%);color:white;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;padding:70px max(7vw,35px);overflow:hidden;position:relative}
.hero:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(-18deg,transparent 0 90px,rgba(255,255,255,.012) 90px 91px);pointer-events:none}
.hero-copy{max-width:700px;position:relative;z-index:2}.eyebrow{color:var(--gold);font-size:11px;font-weight:700;letter-spacing:.22em;margin:0 0 18px;text-transform:uppercase}.eyebrow.dark{color:#9b6f20}
h1,h2,h3{line-height:1.15;margin-top:0}h1,h2{font-family:"Playfair Display",Georgia,serif}
h1{font-size:clamp(42px,5vw,72px);margin-bottom:25px;font-weight:600}.hero h1 em{color:var(--gold2);font-style:normal}
.hero-text{font-size:18px;max-width:610px;color:#d9e1e7}.hero-actions{display:flex;gap:25px;align-items:center;margin:32px 0}.text-link{color:#e4e9ed;border-bottom:1px solid var(--gold);padding-bottom:3px}.location{font-size:11px;letter-spacing:.16em;color:#aab7c1}.location span{color:var(--gold);padding:0 8px}
.hero-visual{height:470px;position:relative;z-index:2}.paper{position:absolute;width:380px;height:270px;background:#f8f6ee;right:4%;top:100px;transform:rotate(-5deg);box-shadow:0 25px 60px rgba(0,0,0,.45);padding:35px;color:#34404a}.paper-back{transform:rotate(7deg);right:10%;top:80px;background:#ddd8ca}.paper-head{font-size:11px;letter-spacing:.25em;margin-bottom:28px}.line{height:5px;background:#d9d6cc;width:80%;margin:12px 0}.line.long{width:92%}.line.medium{width:62%}.line.short{width:45%}.signature{font:italic 34px "Playfair Display",serif;color:#17212a;margin:35px 0 0 20px}.stamp{position:absolute;right:30px;bottom:25px;border:2px solid #b58a37;color:#a57928;padding:8px 11px;text-align:center;font-size:9px;letter-spacing:.12em;transform:rotate(-7deg)}
.magnifier{position:absolute;right:11%;top:30px;width:105px;height:105px;border:13px solid #b9c0c3;border-radius:50%;box-shadow:0 6px 20px #0008}.magnifier:after{content:"";position:absolute;width:78px;height:15px;background:#b9c0c3;right:-62px;bottom:-39px;transform:rotate(48deg);border-radius:10px}.magnifier span{position:absolute;inset:15px;border:1px solid #7b8a94;border-radius:50%}.pen{position:absolute;width:190px;height:10px;background:#161e25;right:15%;bottom:73px;transform:rotate(-30deg);box-shadow:0 3px 8px #000}.pen:after{content:"";position:absolute;right:-18px;top:2px;border-left:18px solid #b7a276;border-top:3px solid transparent;border-bottom:3px solid transparent}

.section{padding:90px max(6vw,28px)}.light{background:var(--paper)}.dark{background:var(--navy);color:white}.section-heading{max-width:var(--max);margin:0 auto 50px}.section-heading.centered{text-align:center;max-width:850px}.section-heading h2{font-size:clamp(32px,4vw,50px);margin-bottom:18px}.section-heading p:last-child{color:var(--muted);max-width:780px;margin:0 auto}.dark .section-heading p:last-child{color:#aebbc5}
.principles{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.principles article{text-align:center;padding:18px 10px}.icon{font-size:34px;color:#a97a26;height:55px}.principles h3{text-transform:uppercase;font-size:12px;letter-spacing:.04em}.principles p{font-size:13px;color:var(--muted);margin:0}
.service-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.13)}.service-card{padding:32px;background:var(--navy);min-height:205px;border:1px solid rgba(255,255,255,.06)}.service-card span{color:var(--gold);font-size:12px;letter-spacing:.15em}.service-card h3{font:600 25px "Playfair Display",serif;margin:25px 0 10px}.service-card p{color:#aebbc5;font-size:14px;margin:0}

.split-section{display:grid;grid-template-columns:1fr 1fr;min-height:510px}.statement{background:linear-gradient(145deg,#07131d,#0d2739);color:white;padding:90px max(6vw,30px);display:flex;flex-direction:column;justify-content:center}.statement h2{font-size:clamp(40px,4vw,60px);max-width:520px}.gold-copy{color:var(--gold2);font:600 24px "Playfair Display",serif;max-width:430px}.about-copy{padding:90px max(6vw,30px);display:flex;flex-direction:column;justify-content:center}.about-copy h2{font-size:42px}.about-copy p:not(.eyebrow){color:var(--muted);max-width:590px}.button-outline{align-self:flex-start;color:var(--ink);margin-top:18px}.button-outline:hover{background:var(--gold);border-color:var(--gold)}

.timeline{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.timeline-item{border-top:2px solid #b58937;padding:20px 12px}.timeline-item strong{color:#9b6f20;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.timeline-item h3{font:600 22px "Playfair Display",serif;margin:15px 0 7px}.timeline-item p{font-size:13px;color:var(--muted);margin:0}
.two-columns{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:25px}.feature{padding:42px;border:1px solid rgba(255,255,255,.14);position:relative}.feature-number{color:var(--gold);font-size:11px;letter-spacing:.15em}.feature h3{font:600 30px "Playfair Display",serif;margin:22px 0 12px}.feature p{color:#b5c0c8;margin:0}
.steps{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(5,1fr);gap:20px}.steps article{border-left:1px solid #cbb078;padding:5px 18px}.steps b{color:#a27629;font-size:13px}.steps h3{font:600 21px "Playfair Display",serif;margin:14px 0 8px}.steps p{font-size:13px;color:var(--muted);margin:0}

.cta-section{background:#d9d1bf;padding:65px max(6vw,28px);display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-section h2{font-size:42px;margin:0 0 10px}.cta-section p:not(.eyebrow){margin:0;color:#555d61;max-width:650px}
.contact{background:var(--navy2);color:white;padding:90px max(7vw,30px);display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-copy h2{font-size:50px}.contact-copy>p:not(.eyebrow){color:#b7c2ca;max-width:570px}.contact-details{display:flex;flex-direction:column;gap:13px;margin-top:28px}.contact-details a,.contact-details>span{display:flex;gap:13px;align-items:center}.contact-details span span{color:var(--gold);font-size:20px}
.contact-form{display:grid;gap:14px}.contact-form label{font-size:12px;color:#c4cdd3;display:grid;gap:6px}.contact-form input,.contact-form textarea{width:100%;border:1px solid rgba(255,255,255,.16);background:#07131d;color:white;padding:13px 14px;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--gold)}.contact-form textarea{resize:vertical}.contact-form small{color:#84919b;font-size:11px}.contact-form .button{justify-content:center;cursor:pointer}
.footer{background:#050e15;color:#9caab4;padding:28px max(6vw,28px);display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:11px}.footer-brand{display:flex;align-items:center;gap:10px;color:white}.footer-brand .brand-mark{width:38px;height:38px;font-size:16px}.footer-brand strong{display:block;font:600 15px "Playfair Display",serif}.footer-brand small{display:block;color:var(--gold);font-size:7px;letter-spacing:.14em}.footer p{margin:0}

@media(max-width:980px){
  .nav{gap:14px}.nav a:not(.nav-cta){display:none}.menu-toggle{display:block}.nav{position:absolute;top:88px;left:0;right:0;background:var(--navy);padding:20px 28px;display:none;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav.open a:not(.nav-cta){display:block;padding:10px}.nav-cta{text-align:center;justify-content:center;margin-top:8px}
  .hero{grid-template-columns:1fr;min-height:auto;padding-top:65px}.hero-visual{height:360px;opacity:.82}.paper{right:10%;top:50px}.magnifier{right:15%;top:0}
  .principles,.timeline,.steps{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:1fr 1fr}.split-section,.contact{grid-template-columns:1fr}.contact{gap:40px}.footer{flex-wrap:wrap}
}
@media(max-width:620px){
  .site-header{height:74px}.nav{top:74px}.brand-mark{width:43px;height:43px}.brand strong{font-size:17px}.brand small{font-size:7px}
  .hero{padding:55px 25px 30px}.hero h1{font-size:40px}.hero-text{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.hero-visual{height:290px}.paper{width:290px;height:205px;right:2%;top:45px;padding:22px}.signature{font-size:25px;margin-top:22px}.magnifier{transform:scale(.72);right:2%;top:-15px}.pen{right:10%;bottom:45px}
  .section{padding:65px 25px}.principles,.timeline,.steps,.service-grid,.two-columns{grid-template-columns:1fr}.section-heading{margin-bottom:35px}.split-section{min-height:auto}.statement,.about-copy{padding:65px 25px}.about-copy h2,.cta-section h2{font-size:34px}.cta-section{padding:55px 25px;flex-direction:column;align-items:flex-start}.contact{padding:65px 25px}.contact-copy h2{font-size:40px}.footer{padding:25px;flex-direction:column;align-items:flex-start}
}
