
@theme inline {
  --radius-sm: 0.15rem;
  --radius-md: 0.25rem;
  --radius-lg: 0.35rem;
  --radius-xl: 0.5rem;
  --color-background: var(--background);
  --color-foreground: var(--foreground);
  --color-card: var(--card);
  --color-card-foreground: var(--card-foreground);
  --color-primary: var(--primary);
  --color-primary-foreground: var(--primary-foreground);
  --color-muted: var(--muted);
  --color-muted-foreground: var(--muted-foreground);
  --color-border: var(--border);
  --color-input: var(--input);
  --color-ring: var(--ring);
}

:root {
  --background: #f7f6f2;
  --foreground: #080b0d;
  --card: #ffffff;
  --card-foreground: #080b0d;
  --primary: #d8c1a0;
  --primary-foreground: #080b0d;
  --muted: #ece9e3;
  --muted-foreground: #73736e;
  --border: #ddd9d0;
  --input: #d9d5cc;
  --ring: #d8c1a0;
  --radius: 0.3rem;
  --charcoal: #080b0d;
  --charcoal-2: #1a1a1a;
  --gold: #d8c1a0;
  --gold-deep: #b89b72;
  --paper: #f7f6f2;
  --white: #fbfaf7;
  --line: rgba(216, 193, 160, 0.48);
  --ease-out: cubic-bezier(0.23, 1, 0.32, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--foreground); font-family: "DM Sans", Arial, sans-serif; -webkit-font-smoothing: antialiased; }
button, input, textarea, select { font: inherit; }
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }

.container { width: 100%; max-width: 1320px; margin: 0 auto; padding: 0 48px; }
.site-shell { overflow: hidden; background: var(--paper); }

.site-header { position: fixed; z-index: 50; top: 0; width: 100%; height: 82px; color: var(--white); background: rgba(8,11,13,.84); border-bottom: 1px solid rgba(49,91,111,.28); transition: background 240ms var(--ease-out), color 240ms var(--ease-out), box-shadow 240ms var(--ease-out), border-color 240ms var(--ease-out); }
.site-header--scrolled { background: rgba(13,25,32,.97); backdrop-filter: blur(16px); border-bottom-color: rgba(66,126,154,.78); box-shadow: 0 2px 0 rgba(39,94,119,.45), 0 8px 24px rgba(0,0,0,.22); }
.site-header__inner { height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 32px; } .scroll-band { position: fixed; z-index: 49; top: 82px; left: 0; right: 0; height: 3px; background: #397b98; transform: scaleX(0); transform-origin: left center; transition: transform 120ms linear; pointer-events: none; }
.brand { display: inline-flex; align-items: center; gap: 11px; flex: 0 0 auto; }
.brand__mark { width: 48px; height: 48px; display: block; }
.brand__copy { display: grid; gap: 1px; }
.brand__copy strong { font-family: "Manrope", sans-serif; font-size: 17px; letter-spacing: .17em; font-weight: 700; line-height: 1; }
.brand__copy small { color: var(--gold); font-size: 8px; letter-spacing: .045em; font-weight: 500; white-space: nowrap; }
.site-nav { display: flex; align-items: center; gap: 34px; margin-left: auto; }
.site-nav__link { position: relative; font-size: 11px; letter-spacing: .16em; text-transform: uppercase; color: rgba(251,250,247,.74); transition: color 180ms ease; }
.site-nav__link::after { content: ""; position: absolute; left: 0; bottom: -12px; width: 0; height: 2px; background: #6fa8c0; transition: width 220ms var(--ease-out); }
.site-nav__link:hover, .site-nav__link--active { color: var(--white); text-shadow: 0 0 14px rgba(111,168,192,.28); }
.site-nav__link:hover::after, .site-nav__link--active::after { width: 100%; }
.header-cta, .text-link { display: inline-flex; align-items: center; gap: 9px; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.header-cta { border: 1px solid rgba(216,193,160,.55); padding: 13px 16px; transition: background 180ms ease, color 180ms ease; }
.header-cta:hover { background: var(--gold); color: var(--charcoal); }
.menu-toggle { display: none; border: 0; background: transparent; color: inherit; padding: 7px; }

.hero { min-height: 730px; position: relative; isolation: isolate; overflow: hidden; display: flex; align-items: center; color: var(--white); background: var(--charcoal); }
.hero::before { content: ""; position: absolute; inset: 0; z-index: -3; background: radial-gradient(circle at 75% 42%, rgba(62,67,67,.2), transparent 32%), linear-gradient(112deg, #080b0d 0%, #080b0d 44%, #101517 100%); }
.hero::after { content: ""; position: absolute; inset: 0; z-index: -2; opacity: .25; background-image: linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px); background-size: 92px 92px; mask-image: linear-gradient(90deg, transparent 25%, black 75%); }
.hero__inner { position: relative; z-index: 3; padding-top: 58px; display: flex; justify-content: space-between; align-items: flex-end; min-height: 730px; }
.hero__content { width: min(550px, 52%); padding-bottom: 112px; }
.eyebrow { display: flex; align-items: center; gap: 12px; color: var(--gold); font-size: 10px; font-weight: 600; letter-spacing: .23em; text-transform: uppercase; }
.eyebrow__line { height: 1px; width: 38px; background: var(--gold); display: inline-block; }
.hero h1 { margin: 25px 0 22px; font: 800 clamp(38px, 4.3vw, 68px)/.99 "Manrope", sans-serif; letter-spacing: -.045em; }
.hero h1 em, .section-heading em, .about h2 span, .process h2 span, .contact h2 em { color: var(--gold); font-style: normal; }
.hero__content > p { max-width: 390px; margin: 0; color: rgba(251,250,247,.71); font-size: 16px; line-height: 1.65; }
.hero__actions { display: flex; align-items: center; gap: 25px; margin-top: 36px; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 14px; min-height: 48px; padding: 0 21px; border: 1px solid transparent; text-transform: uppercase; letter-spacing: .13em; font-size: 10px; font-weight: 700; transition: transform 160ms var(--ease-out), background 180ms ease, color 180ms ease, border-color 180ms ease; }
.button:active { transform: scale(.97); }
.button--gold { background: var(--gold); color: var(--charcoal); }
.button--gold:hover { background: #ead9be; }
.button--dark { background: var(--charcoal); color: var(--white); }
.button--dark:hover { background: #2d302f; }
.text-link { color: var(--white); padding-bottom: 6px; border-bottom: 1px solid rgba(216,193,160,.55); }
.text-link svg, .header-cta svg { transition: transform 180ms var(--ease-out); }
.text-link:hover svg, .header-cta:hover svg { transform: translate(3px,-3px); }
.hero__note { display: grid; gap: 9px; padding-bottom: 115px; color: rgba(251,250,247,.62); font-size: 10px; line-height: 1.5; letter-spacing: .13em; text-transform: uppercase; text-align: right; }
.hero__note-index { color: var(--gold); }
.hero__blueprint { position: absolute; z-index: 1; right: 5%; top: 124px; width: 56%; height: 500px; opacity: .55; }
.blueprint { width: 100%; height: 100%; }
.blueprint__grid path { fill: none; stroke: rgba(224,228,223,.16); stroke-width: 1; }
.blueprint__building path { fill: none; stroke: rgba(248,247,244,.4); stroke-width: 1.3; }
.blueprint__notes path { fill: none; stroke: rgba(216,193,160,.32); stroke-width: 1; }.blueprint__notes circle { fill: var(--gold); opacity: .55; }
.hero__diagonal { position: absolute; z-index: 2; pointer-events: none; transform: rotate(-29deg); transform-origin: center; }
.hero__diagonal--white { width: 75%; height: 245px; right: -5%; bottom: -92px; background: rgba(248,247,244,.92); box-shadow: 0 -1px 0 rgba(255,255,255,.25); }
.hero__diagonal--gold { width: 75%; height: 18px; right: -4%; bottom: 122px; background: var(--gold); }
.hero__bottom-line { position: absolute; z-index: 4; bottom: 0; left: 0; right: 0; height: 4px; background: var(--gold); }

.focus-strip { position: relative; z-index: 6; margin-top: -56px; }
.focus-strip__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; }
.focus-card { min-height: 170px; position: relative; background: rgba(255,255,255,.96); border: 1px solid #e6e2db; padding: 26px 25px 22px; display: grid; grid-template-columns: 42px 1fr; column-gap: 15px; transition: transform 220ms var(--ease-out), box-shadow 220ms ease, background 220ms ease; }
.focus-card + .focus-card { border-left: 0; }
.focus-card:hover { z-index: 2; transform: translateY(-7px); background: var(--white); box-shadow: 0 18px 42px rgba(8,11,13,.13); }
.focus-card__icon { width: 39px; height: 39px; display: grid; place-items: center; border-bottom: 1px solid var(--gold); color: var(--charcoal); }
.eyebrow--dark { color: var(--gold-deep); font-size: 9px; letter-spacing: .16em; }
.focus-card h3 { margin: 7px 0 8px; font: 700 16px/1.2 "Manrope", sans-serif; letter-spacing: -.02em; }
.focus-card p { margin: 0; color: #73716b; font-size: 12px; line-height: 1.45; }
.focus-card__arrow { position: absolute; bottom: 21px; right: 23px; color: var(--gold-deep); transition: transform 180ms var(--ease-out); }.focus-card:hover .focus-card__arrow { transform: translate(4px,-4px); }

.section { padding: 140px 0; }.section--light { background: var(--paper); }.section-kicker { display: flex; align-items: center; gap: 11px; color: var(--gold-deep); font-size: 10px; letter-spacing: .21em; text-transform: uppercase; font-weight: 700; }.section-kicker > span:first-child { font: 600 13px/1 "Manrope", sans-serif; letter-spacing: 0; }.section-kicker__line { width: 32px; height: 1px; background: currentColor; }.section-kicker--light { color: var(--gold); }.section-kicker--dark { color: var(--charcoal); }
.about__grid { display: grid; grid-template-columns: 1fr 1.2fr 1fr; gap: 65px; align-items: start; }.about__statement h2 { margin: 28px 0 28px; font: 800 clamp(34px, 3.4vw, 54px)/1.02 "Manrope", sans-serif; letter-spacing: -.055em; }.about__statement p { max-width: 480px; margin: 0 0 16px; color: #64635e; font-size: 15px; line-height: 1.7; }.about__statement .button { margin-top: 23px; }.about__visual { position: relative; min-height: 400px; margin-top: -20px; background: #e9e4da; overflow: hidden; }.about__visual::before { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(8,11,13,.05), transparent 48%), url("https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=1200&q=85") center/cover; filter: grayscale(.35) sepia(.14); }.about__visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(8,11,13,.1), transparent 42%); }.about__stamp { position: absolute; z-index: 1; right: -1px; bottom: 0; width: 176px; padding: 20px 18px; background: var(--charcoal); color: var(--white); display: grid; gap: 5px; }.about__stamp span { color: var(--gold); font: 700 12px "Manrope", sans-serif; letter-spacing: .19em; }.about__stamp strong { font-size: 10px; letter-spacing: .17em; font-weight: 500; }.about__stamp small { margin-top: 14px; color: rgba(251,250,247,.65); font-size: 10px; line-height: 1.5; }.about__axis { position: absolute; z-index: 2; height: 1px; width: 160%; left: -20%; background: rgba(216,193,160,.75); transform: rotate(-38deg); }.about__axis--one { top: 160px; }.about__axis--two { top: 190px; background: rgba(251,250,247,.64); }

.services-section { position: relative; color: var(--white); background: var(--charcoal); overflow: hidden; }.services-section::before { content: ""; position: absolute; inset: 0; opacity: .15; background-image: linear-gradient(132deg, transparent 0 55%, rgba(216,193,160,.25) 55.1% 55.3%, transparent 55.4% 57%, rgba(255,255,255,.18) 57.1% 57.25%, transparent 57.35%); }.services-section .container { position: relative; z-index: 1; }.section-heading { display: grid; gap: 54px; }.section-heading__row { display: flex; justify-content: space-between; align-items: end; gap: 64px; }.section-heading h2 { margin: 0; font: 800 clamp(36px, 4vw, 61px)/.98 "Manrope", sans-serif; letter-spacing: -.06em; }.section-heading__row p { width: 300px; margin: 0 0 5px; color: rgba(251,250,247,.62); font-size: 14px; line-height: 1.65; }.services-list { margin-top: 76px; border-top: 1px solid rgba(255,255,255,.17); }.service-row { min-height: 91px; display: grid; grid-template-columns: 58px 56px 1.1fr 1fr 32px; gap: 19px; align-items: center; border-bottom: 1px solid rgba(255,255,255,.17); transition: background 180ms ease, padding 220ms var(--ease-out); }.service-row:hover { padding-left: 14px; padding-right: 14px; background: rgba(216,193,160,.08); }.service-row__number { color: var(--gold); font: 600 12px "Manrope", sans-serif; letter-spacing: .08em; }.service-row__icon { color: var(--gold); }.service-row__title { font: 700 17px "Manrope", sans-serif; letter-spacing: -.02em; }.service-row__text { color: rgba(251,250,247,.57); font-size: 13px; line-height: 1.4; }.service-row__arrow { color: var(--gold); transition: transform 180ms var(--ease-out); }.service-row:hover .service-row__arrow { transform: translate(4px,-4px); }

.process { background: var(--gold); color: var(--charcoal); }.process__grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: 12%; }.process h2 { margin: 32px 0 23px; font: 800 clamp(39px, 4.3vw, 64px)/.96 "Manrope", sans-serif; letter-spacing: -.07em; }.process__intro { max-width: 300px; color: rgba(8,11,13,.65); font-size: 15px; line-height: 1.6; }.process__steps { border-top: 1px solid rgba(8,11,13,.35); }.process-step { display: grid; grid-template-columns: 62px 1fr; gap: 20px; padding: 22px 0; border-bottom: 1px solid rgba(8,11,13,.35); }.process-step > span { font: 600 12px "Manrope", sans-serif; letter-spacing: .1em; }.process-step h3 { margin: 0 0 7px; font: 700 19px "Manrope", sans-serif; }.process-step p { max-width: 310px; margin: 0; color: rgba(8,11,13,.62); font-size: 13px; line-height: 1.5; }

.contact { background: var(--charcoal); color: var(--white); }.contact__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12%; }.contact h2 { margin: 33px 0 23px; font: 800 clamp(40px, 4.2vw, 62px)/.97 "Manrope", sans-serif; letter-spacing: -.065em; }.contact__lead > p { max-width: 380px; margin: 0; color: rgba(251,250,247,.63); font-size: 15px; line-height: 1.65; }.contact__details { display: grid; gap: 15px; margin-top: 52px; }.contact__details a, .contact__details span { display: flex; align-items: center; gap: 12px; color: rgba(251,250,247,.78); font-size: 13px; }.contact__details svg { color: var(--gold); }.contact-form { padding: 31px; background: #111719; border-top: 2px solid var(--gold); }.contact-form label { display: grid; gap: 9px; margin-bottom: 19px; }.contact-form label > span { color: var(--gold); font-size: 10px; letter-spacing: .15em; text-transform: uppercase; }.contact-form input, .contact-form textarea, .contact-form select { width: 100%; border: 0; border-bottom: 1px solid rgba(251,250,247,.2); border-radius: 0; outline: 0; padding: 11px 0; color: var(--white); background: transparent; font-size: 14px; transition: border-color 180ms ease; }.contact-form select { color: rgba(251,250,247,.58); }.contact-form option { color: var(--charcoal); }.contact-form input:focus, .contact-form textarea:focus, .contact-form select:focus { border-color: var(--gold); }.contact-form input::placeholder, .contact-form textarea::placeholder { color: rgba(251,250,247,.38); }.button--full { width: 100%; margin-top: 9px; }.form-success { display: flex; align-items: center; gap: 7px; margin: 15px 0 0; color: var(--gold); font-size: 12px; }
.form-error { margin: 15px 0 0; color: #e6a5a0; font-size: 12px; line-height: 1.5; }
.contact-form button:disabled { opacity: .58; cursor: wait; }

.site-footer { background: #050708; color: var(--white); border-top: 1px solid rgba(216,193,160,.55); }.site-footer__top { min-height: 130px; display: flex; align-items: center; gap: 55px; }.site-footer .brand { margin-right: auto; }.footer-phrase { border-left: 1px solid rgba(216,193,160,.55); padding-left: 31px; color: rgba(251,250,247,.76); font: 500 15px/1.4 "Manrope", sans-serif; }.footer-phrase span { color: var(--gold); }.footer-top { display: inline-flex; align-items: center; gap: 8px; color: var(--gold); font-size: 10px; letter-spacing: .15em; text-transform: uppercase; }.site-footer__bottom { display: flex; gap: 32px; align-items: center; min-height: 57px; border-top: 1px solid rgba(255,255,255,.12); color: rgba(251,250,247,.43); font-size: 10px; letter-spacing: .04em; }.site-footer__bottom span:first-child { margin-right: auto; }.site-footer__bottom a { color: var(--gold); }

@media (max-width: 1050px) { .container { padding: 0 28px; }.site-nav { gap: 18px; }.header-cta { display: none; }.hero__content { width: 60%; }.hero__blueprint { right: -8%; width: 65%; }.about__grid { grid-template-columns: .8fr 1.35fr 1fr; gap: 34px; }.focus-card { padding: 22px 16px; }.focus-card h3 { font-size: 14px; }.service-row { grid-template-columns: 45px 42px 1fr 1.2fr 24px; gap: 10px; }.service-row__title { font-size: 15px; } }
@media (max-width: 760px) { .container { padding: 0 20px; }.site-header { height: 76px; }.site-header__inner { height: 76px; }.scroll-band { top: 76px; height: 2px; }.brand__mark { width: 42px; height: 42px; }.brand__copy strong { font-size: 14px; }.brand__copy small { font-size: 7px; }.menu-toggle { display: block; }.site-nav { position: absolute; left: 16px; right: 16px; top: 70px; display: grid; gap: 0; padding: 9px 18px; background: rgba(8,11,13,.97); border: 1px solid rgba(216,193,160,.25); transform: translateY(-8px); opacity: 0; pointer-events: none; transition: opacity 180ms ease, transform 180ms var(--ease-out); }.site-nav--open { opacity: 1; pointer-events: auto; transform: translateY(0); }.site-nav__link { padding: 15px 0; border-bottom: 1px solid rgba(255,255,255,.09); }.site-nav__link:last-child { border-bottom: 0; }.site-nav__link::after { bottom: 8px; }.hero { min-height: 680px; }.hero__inner { min-height: 680px; padding-top: 75px; align-items: flex-start; }.hero__content { width: 100%; padding-top: 90px; padding-bottom: 160px; }.hero h1 { font-size: clamp(39px, 11vw, 57px); }.hero__content > p { font-size: 14px; }.hero__actions { align-items: flex-start; flex-direction: column; gap: 19px; }.hero__blueprint { right: -30%; top: 140px; width: 110%; height: 390px; opacity: .34; }.hero__note { display: none; }.hero__diagonal--white { width: 130%; height: 170px; right: -30%; bottom: -55px; }.hero__diagonal--gold { width: 130%; right: -28%; bottom: 80px; }.focus-strip { margin-top: -28px; }.focus-strip__grid { grid-template-columns: repeat(2, 1fr); }.focus-card { min-height: 168px; }.focus-card + .focus-card { border-left: 1px solid #e6e2db; }.focus-card:nth-child(3), .focus-card:nth-child(4) { border-top: 0; }.section { padding: 90px 0; }.about__grid, .process__grid, .contact__grid { grid-template-columns: 1fr; gap: 52px; }.about__visual { min-height: 310px; margin-top: 0; }.section-heading { gap: 38px; }.section-heading__row { display: grid; gap: 24px; }.section-heading__row p { width: auto; }.services-list { margin-top: 52px; }.service-row { grid-template-columns: 34px 32px 1fr 22px; gap: 10px; min-height: 105px; }.service-row__text { display: none; }.service-row__title { font-size: 14px; }.service-row__icon svg { width: 20px; }.site-footer__top { display: grid; gap: 26px; padding-top: 42px; padding-bottom: 38px; }.site-footer .brand { margin-right: 0; }.footer-phrase { border-left: 0; border-top: 1px solid rgba(216,193,160,.55); padding: 20px 0 0; }.site-footer__bottom { display: grid; gap: 9px; padding: 20px 0; }.site-footer__bottom span:first-child { margin-right: 0; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; } }

.header-whatsapp { display: inline-grid; place-items: center; width: 44px; height: 44px; border: 1px solid rgba(216,193,160,.5); color: var(--gold); transition: background 180ms ease, color 180ms ease, transform 180ms var(--ease-out); }
.header-whatsapp:hover { color: var(--charcoal); background: var(--gold); transform: translateY(-2px); }
.footer-whatsapp { display: inline-flex; align-items: center; gap: 8px; color: var(--gold); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.footer-whatsapp:hover { color: var(--white); }
@media (max-width: 760px) { .header-whatsapp { display: none; } }

.floating-whatsapp { position: fixed; z-index: 50; right: 24px; bottom: 24px; display: inline-flex; align-items: center; gap: 10px; padding: 14px 17px; border: 1px solid rgba(216,193,160,.72); background: var(--gold); color: var(--charcoal); box-shadow: 0 12px 28px rgba(0,0,0,.28); font: 700 10px/1 "Manrope", sans-serif; letter-spacing: .12em; text-transform: uppercase; transition: transform 180ms var(--ease-out), background 180ms ease, box-shadow 180ms ease; }
.floating-whatsapp:hover { background: #ead8bb; box-shadow: 0 16px 34px rgba(0,0,0,.36); transform: translateY(-3px); }
.floating-whatsapp:focus-visible { outline: 2px solid var(--white); outline-offset: 4px; }
@media (max-width: 760px) { .floating-whatsapp { right: 16px; bottom: 16px; width: 52px; height: 52px; justify-content: center; padding: 0; border-radius: 50%; }.floating-whatsapp span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; } }
