@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap');
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"DM Sans",sans-serif;line-height:1.6;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,a{ -webkit-tap-highlight-color:transparent}
.container{width:min(1160px,calc(100% - 40px));margin:0 auto}
.nav-shell{position:fixed;inset:0 0 auto;z-index:50;transition:.3s ease}
.nav-shell.scrolled{backdrop-filter:blur(18px);background:rgba(255,255,255,.72);border-bottom:1px solid var(--line)}
.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{font-weight:700;letter-spacing:-.03em;font-size:1.08rem}
.brand span{color:var(--accent)}
.nav-links{display:flex;align-items:center;gap:26px;color:var(--muted);font-size:.92rem}
.nav-cta{padding:11px 17px;border:1px solid var(--line);border-radius:999px;font-weight:700;color:var(--ink)}
.hero{min-height:100vh;display:flex;align-items:center;position:relative;isolation:isolate;padding:122px 0 74px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:70px}
.hero-kicker{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.18em;font-size:.74rem;font-weight:700;color:var(--muted);margin-bottom:24px}
.hero-kicker:before{content:"";width:34px;height:1px;background:var(--accent)}
.hero-title{font-family:"Cormorant Garamond",serif;font-size:clamp(4rem,8vw,7.4rem);line-height:.82;letter-spacing:-.055em;margin:0 0 26px}
.hero-title .clip{display:block;overflow:hidden;padding-bottom:.11em}
.hero-title .line{display:block}
.hero-copy{font-size:clamp(1.05rem,2vw,1.24rem);color:var(--muted);max-width:620px;margin:0 0 34px}
.hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 21px;border-radius:999px;font-weight:700;transition:.25s ease;border:1px solid transparent}
.btn-secondary{border-color:var(--line);color:var(--ink);background:rgba(255,255,255,.05)}
.btn-secondary:hover{transform:translateY(-2px);border-color:var(--accent)}
.hero-visual{min-height:560px;border-radius:38px;display:flex;flex-direction:column;justify-content:flex-end;padding:42px;position:relative;overflow:hidden;transform-style:preserve-3d}
.hero-visual:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.24);border-radius:28px}
.visual-top{position:absolute;top:36px;left:40px;right:40px;display:flex;justify-content:space-between;align-items:center;font-size:.77rem;text-transform:uppercase;letter-spacing:.16em;color:rgba(255,255,255,.76)}
.visual-badge{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.18);backdrop-filter:blur(10px);font-size:1.5rem}
.visual-mark{position:relative;z-index:1}
.visual-caption{font-size:.95rem;max-width:300px;margin-top:22px;position:relative;z-index:1}
.orb{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none;z-index:-1}
.orb-a{width:280px;height:280px;background:var(--glow);opacity:.18;top:12%;right:-90px}
.orb-b{width:210px;height:210px;border:1px solid var(--accent);opacity:.18;left:-70px;bottom:8%}
.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stat{padding:30px 24px;text-align:center;border-right:1px solid var(--line)}
.stat:last-child{border-right:0}
.stat strong{display:block;font-size:1.45rem;letter-spacing:-.04em}
.stat span{display:block;color:var(--muted);font-size:.84rem;margin-top:4px}
.section{padding:112px 0}
.section-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:end;margin-bottom:48px}
.section-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.18em;color:var(--accent);font-weight:700}
.section-title{font-family:"Cormorant Garamond",serif;font-size:clamp(3rem,6vw,5.3rem);line-height:.92;letter-spacing:-.045em;margin:14px 0 0}
.section-intro{color:var(--muted);font-size:1.05rem;max-width:600px;margin:0}
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service-card{border:1px solid var(--line);border-radius:26px;padding:30px;min-height:280px;background:var(--surface);transition:.3s ease;display:flex;flex-direction:column}
.service-number{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);font-size:.82rem;color:var(--accent);font-weight:700}
.service-card h3{font-size:1.35rem;letter-spacing:-.03em;margin:44px 0 10px}
.service-card p{color:var(--muted);margin:0}
.service-line{height:1px;background:var(--line);margin-top:auto}
.section-dark{padding:110px 0;position:relative;overflow:hidden}
.contact-grid{display:grid;grid-template-columns:1fr .9fr;gap:70px;align-items:start}
.contact-title{font-family:"Cormorant Garamond",serif;font-size:clamp(3.4rem,7vw,6rem);line-height:.87;letter-spacing:-.05em;margin:0 0 24px}
.contact-copy{max-width:590px;opacity:.72;font-size:1.08rem}
.contact-list{display:grid;gap:12px}
.contact-item{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid currentColor;border-color:rgba(255,255,255,.18)}
.section-dark[style*="color: rgb(17"] .contact-item{border-color:rgba(0,0,0,.2)}
.contact-item span{opacity:.62;font-size:.85rem;text-transform:uppercase;letter-spacing:.12em}
.contact-item strong{text-align:right;font-size:.94rem}
.cta-panel{margin-top:60px;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:28px 0;border-top:1px solid rgba(255,255,255,.18)}
.section-dark .btn-secondary{border-color:rgba(255,255,255,.25);color:inherit}
.footer{padding:28px 0;border-top:1px solid var(--line);color:var(--muted);font-size:.82rem}
.footer-row{display:flex;justify-content:space-between;gap:20px;align-items:center}
.footer-links{display:flex;gap:18px;flex-wrap:wrap}
@media(max-width:900px){
  .nav-links a:not(.nav-cta){display:none}
  .hero-grid,.section-head,.contact-grid{grid-template-columns:1fr}
  .hero-grid{gap:46px}
  .hero-visual{min-height:460px}
  .services{grid-template-columns:1fr}
  .section-head{gap:24px}
}
@media(max-width:620px){
  .container{width:min(100% - 26px,1160px)}
  .nav{height:68px}
  .hero{padding-top:96px}
  .hero-title{font-size:3.65rem}
  .hero-visual{min-height:390px;padding:28px;border-radius:28px}
  .stats{grid-template-columns:1fr}
  .stat{border-right:0;border-bottom:1px solid var(--line)}
  .stat:last-child{border-bottom:0}
  .section{padding:80px 0}
  .section-dark{padding:80px 0}
  .hero-actions .btn{width:100%}
  .contact-item{align-items:flex-start;flex-direction:column}
  .contact-item strong{text-align:left}
  .cta-panel,.footer-row{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}
}
:root{--bg:#f7f1ed;--surface:#fffaf7;--ink:#271c1b;--muted:#786765;--accent:#7d2639;--accent2:#c99478;--line:rgba(39,28,27,.12);--glow:#edc9b7}
body{background:var(--bg);color:var(--ink)}
.hero{background:radial-gradient(circle at 82% 18%,rgba(201,148,120,.33),transparent 34%),linear-gradient(135deg,#fffaf7 0%,#f3e4df 100%)}
.hero-visual{background:linear-gradient(145deg,#7d2639,#b45a69);box-shadow:0 34px 90px rgba(125,38,57,.28)}
.visual-mark{font-family:"Cormorant Garamond",serif;font-size:clamp(5rem,12vw,10rem);color:#fff;line-height:.7}
.visual-caption{color:rgba(255,255,255,.78)}
.btn-primary{background:var(--accent);color:#fff}
.btn-primary:hover{background:#651c2d}
.section-dark{background:#281b1c;color:#fff}
.service-card:hover{border-color:rgba(125,38,57,.45);transform:translateY(-6px)}
.accent-word{color:var(--accent)}
