.cp-page{--ink:#241923;--accent:#e58b68;--muted:#756876;color:var(--ink);background:#fffdfb;font-size:17px;line-height:1.85}.cp-page *{box-sizing:border-box}.cp-wrap{width:min(1200px,calc(100% - 64px));margin:auto}.cp-page h1,.cp-page h2,.cp-page h3,.cp-page p{margin:0}.cp-page h1{font-size:clamp(40px,4.7vw,66px);line-height:1.25;font-weight:600;letter-spacing:-.025em}.cp-page h2{font-size:clamp(29px,3.1vw,43px);line-height:1.4;font-weight:600}.cp-page h3{font-size:21px;line-height:1.5;font-weight:600}.cp-page em{font-style:normal;color:var(--accent)}.cp-page .cp-label{font-size:12px;letter-spacing:1.5px;color:#a25b46;margin-bottom:23px}.cp-hero{padding:80px 0 65px;background:radial-gradient(ellipse at 86% 35%,#62415166,transparent 55%),#241923;color:#fff7f1;overflow:hidden}.cp-split{display:grid;grid-template-columns:1.12fr 1fr;gap:75px;align-items:center}.cp-hero .cp-label{color:#e5ad97}.cp-page .cp-lead{font-size:19px;line-height:1.95;color:#d4c5ce;max-width:540px;margin:25px 0 31px}.cp-button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;background:var(--accent);border:1px solid var(--accent);color:#241923;padding:13px 23px;border-radius:8px;font:inherit;font-weight:600;font-size:16px;cursor:pointer;transition:background .22s,transform .22s}.cp-button span{font-size:23px;transition:transform .22s}.cp-button:hover{background:#f4ac8b;transform:translateY(-2px)}.cp-button:hover span{transform:translate(3px,-3px)}.cp-text{font-size:15px;margin-left:22px}.cp-page .cp-footnote{margin-top:24px;font-size:14px;color:#bfa9b7}.cp-path{border:1px solid #e5c7d128;border-radius:12px;background:linear-gradient(130deg,#ffffff09,#ffffff02);padding:30px 32px;transform:perspective(1200px) rotateY(-6deg);box-shadow:22px 25px 55px #0d070a40}.cp-path-caption,.cp-path-bottom{font-size:10px;letter-spacing:2px;color:#c6aebb;display:block}.cp-path-row{display:flex;align-items:center;gap:23px;padding:26px 0;border-bottom:1px solid #ffffff16}.cp-path-row>b{font-size:14px;color:#e58b68}.cp-path-row small{display:block;font-size:10px;letter-spacing:2px;color:#bba3b2}.cp-path-row strong{font-size:23px;font-weight:500}.cp-path-row i{margin-left:auto;font-style:normal;color:#e58b68}.cp-path-bottom{padding-top:23px;font-size:9px}.cp-section{padding:78px 0}.cp-heading{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:36px}.cp-heading>p{color:var(--muted);font-size:16px;max-width:380px}.cp-four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.cp-choice{border:1px solid #e6dddf;border-radius:8px;padding:25px 22px;position:relative;transition:border-color .25s}.cp-number{font-size:13px;color:#ad725e}.cp-arrow{float:right;color:#9a858c;transition:transform .25s}.cp-choice h3{margin:30px 0 15px}.cp-choice p{font-size:16px;color:var(--muted);min-height:89px}.cp-choice small{display:block;margin-top:24px;color:#9c624e;font-size:13px}.cp-choice:hover{border-color:#c77859}.cp-choice:hover h3{color:#a65d43}.cp-choice:hover .cp-arrow{transform:translate(3px,-3px);color:#a65d43}.cp-value{background:#eee8e6}.cp-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.cp-three article{border-top:1px solid #cabbb8;padding-top:24px}.cp-three article h3{margin:18px 0 16px}.cp-three article p{color:#6e6168;font-size:16px}.cp-process{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0;margin:45px 0 0;gap:28px}.cp-process li{border-top:1px solid #d5b5a7;padding-top:22px;position:relative}.cp-process li:before{content:'';position:absolute;top:-4px;left:0;width:7px;height:7px;border-radius:50%;background:#c58061}.cp-process b{color:#a8664d;font-size:14px}.cp-process h3{margin:18px 0 12px}.cp-process p{font-size:16px;color:var(--muted)}.cp-form-section{background:#f5f0ed;scroll-margin-top:100px}.cp-form-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:65px}.cp-form-grid aside>p:not(.cp-label){color:var(--muted);margin-top:24px}.cp-aside-note{margin-top:30px;border-left:2px solid #d99d80;padding:6px 0 6px 20px}.cp-aside-note span{font-size:13px;color:#a36850}.cp-aside-note p{font-size:16px;color:#756876;margin-top:10px}.cp-form-note{font-size:14px}.cp-form{background:#fff;border:1px solid #e5d9d3;border-radius:12px;padding:35px;box-shadow:0 15px 40px #573b3510}.cp-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 20px}.cp-fields label{font-size:16px}.cp-fields small{font-size:12px;color:#8e7e85;margin-left:7px}.cp-fields input,.cp-fields select,.cp-fields textarea{display:block;margin-top:9px;width:100%;padding:12px;border:1px solid #d9ced1;border-radius:6px;background:#fffdfc;color:#342831;line-height:1.5;min-height:49px;font-family:inherit;font-size:16px}.cp-fields textarea{resize:vertical;min-height:125px}.cp-fields input::placeholder,.cp-fields textarea::placeholder{color:#998e92}.cp-full{grid-column:1/-1}.cp-page .cp-privacy{font-size:13px;color:#887880;margin:22px 0}.cp-privacy a{color:#a3654c}.cp-form .cp-button{width:100%;font-family:inherit;font-size:16px}.cp-status{font-size:14px;color:#8e563e;min-height:24px;margin-top:8px!important}.cp-image{aspect-ratio:16/10;overflow:hidden;border-radius:8px;background:#eee}.cp-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s}.cp-reading a:hover img{transform:scale(1.04)}.cp-reading small{display:block;margin-top:22px;color:#9b624b;font-size:13px}.cp-reading h3{margin:12px 0 20px}.cp-reading a>span{font-size:14px;color:#90736c}.cp-closing{padding:65px 0;background:#241923;color:#fff7f1}.cp-closing .cp-wrap{position:relative}.cp-closing .cp-label{color:#e5ad97}.cp-closing .cp-button{position:absolute;right:0;bottom:12px}.cp-page :is(a,button,input,select,textarea):focus-visible{outline:2px solid #b26345;outline-offset:4px}.cp-button:disabled{opacity:.6;cursor:wait}#cp-process{scroll-margin-top:100px}@media(max-width:1000px){.cp-split{gap:35px}.cp-four{grid-template-columns:repeat(2,1fr)}.cp-form-grid{gap:30px}.cp-path{padding:24px;transform:none}.cp-path-row strong{font-size:20px}}@media(max-width:700px){.cp-wrap{width:calc(100% - 36px)}.cp-hero{padding:45px 0}.cp-split,.cp-form-grid{grid-template-columns:1fr}.cp-path{margin-top:15px}.cp-section{padding:48px 0}.cp-heading{display:block}.cp-heading>p{margin-top:20px}.cp-three,.cp-process{grid-template-columns:1fr}.cp-four{grid-template-columns:1fr}.cp-choice p{min-height:0}.cp-choice h3{margin-top:18px}.cp-fields{grid-template-columns:1fr}.cp-form{padding:22px}.cp-full{grid-column:auto}.cp-closing .cp-button{position:static;margin-top:25px}.cp-text{display:inline-block;margin:18px 0 0 16px}.cp-page h1{font-size:39px}}@media(prefers-reduced-motion:reduce){.cp-page *{transition:none!important;scroll-behavior:auto!important}}
.cp-page > section { position: relative; overflow: hidden; }
.cp-deco { position: absolute; inset: 0; z-index: 0; pointer-events: none; }
.cp-deco > * { position: absolute; display: block; }
.cp-page > section > .cp-wrap { position: relative; z-index: 1; }
.cp-section:after {
  content: attr(data-num);
  position: absolute; right: 2.5%; bottom: 8px; z-index: 0;
  font: 400 clamp(64px, 8vw, 120px)/1 Georgia, "Times New Roman", serif;
  color: #24192308; pointer-events: none; letter-spacing: -.02em;
}
.cp-value:after { color: #2419230a; }
.cp-closing:after, .cp-form-section:after { color: #24192309; }
.cp-deco .cp-hz {
  left: -14%; right: -14%; bottom: -10%; height: 58%;
  background-image: linear-gradient(#f2d8c814 1px, transparent 1px), linear-gradient(90deg, #f2d8c814 1px, transparent 1px);
  background-size: 68px 68px;
  transform: perspective(680px) rotateX(73deg);
  transform-origin: center bottom;
  -webkit-mask-image: linear-gradient(to top, black, transparent 76%);
          mask-image: linear-gradient(to top, black, transparent 76%);
}
.cp-deco .cp-st {
  inset: -6%;
  background-image: radial-gradient(#f6cdb8 1px, transparent 1.6px);
  background-size: 44px 44px;
  opacity: .14;
  -webkit-mask-image: radial-gradient(ellipse at 74% 38%, black, transparent 72%);
          mask-image: radial-gradient(ellipse at 74% 38%, black, transparent 72%);
  animation: cp-drift 56s linear infinite;
}
.cp-deco .cp-sh {
  left: 40%; top: -30%; width: 44%; height: 165%;
  background: linear-gradient(96deg, transparent 34%, #ffffff12 48%, #e58b680f 52%, transparent 68%);
  transform: skewX(-13deg);
  -webkit-mask-image: linear-gradient(to bottom, transparent, black 30%, transparent 86%);
          mask-image: linear-gradient(to bottom, black 0%, transparent 86%);
  animation: cp-shaft 12s ease-in-out infinite;
}
.cp-deco .cp-gr {
  inset: -10%; opacity: .4;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.34'/%3E%3C/svg%3E");
  -webkit-mask-image: radial-gradient(circle at 66% 46%, black, transparent 76%);
          mask-image: radial-gradient(circle at 66% 46%, black, transparent 76%);
}
.cp-deco .cp-glow {
  left: -8%; right: -8%; top: -30%; height: 130%;
  background: radial-gradient(ellipse at 78% 34%, #7a4a6059, transparent 58%),
              radial-gradient(ellipse at 22% 76%, #e58b6817, transparent 60%);
  animation: cp-breathe 17s ease-in-out infinite alternate;
}
.cp-path { position: relative; }
.cp-path:before {
  content: ''; position: absolute; inset: -14% -10%;
  border: 1px solid #f2d8c822; border-radius: 50%;
  transform: rotateX(76deg) rotateZ(-14deg);
  animation: cp-ring 30s linear infinite;
}
.cp-path:after {
  content: ''; position: absolute; left: 8%; right: 8%; top: 0; height: 1px;
  background: linear-gradient(90deg, transparent, #e58b6899, transparent);
  box-shadow: 0 0 18px #e58b68aa;
  animation: cp-scan 7.5s cubic-bezier(.45,.05,.55,.95) infinite;
}
.cp-path-row { position: relative; }
.cp-path-row:after {
  content: ''; position: absolute; left: 7px; top: 50%; width: 1px; height: 26px;
  background: repeating-linear-gradient(180deg, #e58b68aa 0 3px, transparent 3px 8px);
  animation: cp-flow-y 2.6s linear infinite;
}
.cp-directions .cp-dots {
  position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background-image: radial-gradient(#c9b3a92e 1px, transparent 1px);
  background-size: 32px 32px;
  -webkit-mask-image: radial-gradient(ellipse at 50% 40%, black, transparent 78%);
          mask-image: radial-gradient(ellipse at 50% 40%, black, transparent 78%);
}
.cp-value:before {
  content: ''; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background-image: linear-gradient(#2419230b 1px, transparent 1px), linear-gradient(90deg, #2419230b 1px, transparent 1px);
  background-size: 92px 92px;
  -webkit-mask-image: linear-gradient(to bottom, transparent, black 22%, black 72%, transparent);
          mask-image: linear-gradient(to bottom, transparent, black 22%, black 72%, transparent);
}
.cp-value .cp-glow {
  position: absolute; z-index: 0; pointer-events: none;
  left: -12%; top: -22%; width: 66%; height: 92%;
  background: radial-gradient(ellipse at 40% 40%, #d5906626, transparent 62%);
}
.cp-process-section .cp-sch {
  position: absolute; z-index: 0; pointer-events: none;
  right: -6%; top: 12%; width: 40%; height: 74%;
  border: 1px solid #24192310; border-radius: 50%;
  background: repeating-linear-gradient(90deg, #2419230d 0 1px, transparent 1px 48px),
              repeating-linear-gradient(0deg, #2419230d 0 1px, transparent 1px 48px);
  -webkit-mask-image: radial-gradient(circle at 50% 50%, black 42%, transparent 78%);
          mask-image: radial-gradient(circle at 50% 50%, black 42%, transparent 78%);
}
.cp-process-section .cp-sch:after {
  content: ''; position: absolute; inset: 17%; border: 1px dashed #2419231f; border-radius: 50%;
}
.cp-form-section .cp-glow {
  position: absolute; z-index: 0; pointer-events: none;
  right: -10%; top: -18%; width: 62%; height: 86%;
  background: radial-gradient(ellipse at 50% 50%, #e58b6818, transparent 64%);
}
.cp-form { position: relative; z-index: 1; box-shadow: 0 22px 60px #573b3518, 0 2px 0 #ffffff8f inset; }
.cp-form:before {
  content: ''; position: absolute; left: 0; right: 0; top: 0; height: 2px;
  background: linear-gradient(90deg, #e58b68, #e58b6800); border-radius: 12px 12px 0 0;
}
.cp-fields input:focus, .cp-fields select:focus, .cp-fields textarea:focus {
  outline: none; border-color: #e58b68; box-shadow: 0 0 0 4px #e58b681f;
}
.cp-image { border: 1px solid #e6dddf; }
.cp-reading a { display: block; }
.cp-closing .cp-grid {
  position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background-image: linear-gradient(#ffffff0d 1px, transparent 1px), linear-gradient(90deg, #ffffff0d 1px, transparent 1px);
  background-size: 66px 66px;
  -webkit-mask-image: radial-gradient(ellipse at 32% 46%, black, transparent 74%);
          mask-image: radial-gradient(ellipse at 32% 46%, black, transparent 74%);
}
.cp-closing .cp-ring {
  position: absolute; z-index: 0; pointer-events: none;
  left: 50%; top: 50%; width: 46%; height: 190%; margin: 0 0 0 -23%;
  border: 1px solid #f2d8c81f; border-radius: 50%;
  transform: rotateX(74deg) rotateZ(-10deg);
  animation: cp-ring 34s linear infinite;
}
.cp-closing .cp-ring-b { width: 64%; margin-left: -32%; border-color: #e58b6824; animation-direction: reverse; }
.cp-choice, .cp-three article, .cp-reading a { transition: transform .3s, border-color .3s, box-shadow .3s; }
.cp-choice { position: relative; overflow: hidden; background: #fffdfc; }
.cp-choice:before {
  content: ''; position: absolute; left: 0; right: 0; top: 0; height: 2px;
  background: linear-gradient(90deg, #c77859, #c7785900); opacity: .5; transition: opacity .3s;
}
.cp-choice:hover { transform: translateY(-6px); box-shadow: 0 20px 40px #573b3512; }
.cp-choice:hover:before { opacity: 1; }
.cp-reading a:hover { transform: translateY(-6px); }
.cp-reading a:hover .cp-image { border-color: #d9a68c; }
@media(max-width: 1000px) {
  .cp-deco .cp-hz { height: 46%; background-size: 52px 52px; }
  .cp-process-section .cp-sch { right: -16%; width: 60%; opacity: .7; }
  .cp-closing .cp-ring { width: 70%; margin-left: -35%; }
}
@media(max-width: 700px) {
  .cp-deco .cp-st { opacity: .1; }
  .cp-deco .cp-sh { width: 70%; left: 24%; }
  .cp-section:after { font-size: clamp(52px, 16vw, 84px); bottom: 2px; }
  .cp-path:before { inset: -8% -6%; }
}
@media(prefers-reduced-motion: reduce) {
  .cp-deco .cp-st, .cp-deco .cp-sh, .cp-deco .cp-glow,
  .cp-path:before, .cp-path:after, .cp-path-row:after,
  .cp-closing .cp-ring { animation: none !important; }
  .cp-deco, .cp-closing .cp-grid, .cp-closing .cp-ring { display: none; }
  .cp-choice, .cp-reading a { transition: none !important; }
}
@keyframes cp-drift { from { background-position: 0 0; } to { background-position: 88px 44px; } }
@keyframes cp-shaft { 0%, 100% { opacity: .5; } 50% { opacity: 1; } }
@keyframes cp-breathe { from { opacity: .7; } to { opacity: 1; } }
@keyframes cp-ring { to { transform: rotateX(74deg) rotateZ(346deg); } }
@keyframes cp-scan { 0% { top: 6%; opacity: 0; } 12% { opacity: 1; } 88% { opacity: 1; } 100% { top: 94%; opacity: 0; } }
@keyframes cp-flow-y { from { background-position: 0 0; } to { background-position: 0 22px; } }
@keyframes cp-rise { from { opacity: 0; translate: 0 16px; } to { opacity: 1; translate: 0 0; } }
.cp-split > * { animation: cp-rise .8s cubic-bezier(.2,.7,.3,1) both; }
.cp-split > *:nth-child(1) { animation-delay: .05s; }
.cp-split > *:nth-child(2) { animation-delay: .18s; }
.cp-rv { opacity: 0; translate: 0 22px; transition: opacity .72s cubic-bezier(.2,.7,.3,1), translate .72s cubic-bezier(.2,.7,.3,1); transition-delay: var(--cp-d, 0s); }
.cp-rv.cp-rv-in { opacity: 1; translate: 0 0; }
.cp-path-row strong { transition: color .3s, translate .3s; }
.cp-path-row:hover strong { color: #f6cdb8; translate: 3px 0; }
.cp-path-row:hover i { transform: translateX(4px); }
.cp-path-row i { transition: transform .3s; }
@media(prefers-reduced-motion: reduce) {
  .cp-split > * { animation: none !important; }
  .cp-rv { opacity: 1 !important; translate: none !important; transition: none !important; }
}
