:root{
    --gold:#C9A96E;
    --gold-dark:#A8863E;
    --ink:#0F0F0F;
    --cream:#F0EBE0;
    --paper:#FBF8F1;
    --serif:'Cormorant Garamond',Georgia,serif;
    --sans:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans)}
a{text-decoration:none;color:inherit}
.contact-page{background:linear-gradient(135deg,#0b0b0b 0%,#181511 48%,#F0EBE0 48%,#FBF8F1 100%);padding:96px 40px}
.contact-shell{width:min(1120px,100%);margin:0 auto;display:grid;grid-template-columns:.85fr 1.15fr;gap:18px;align-items:stretch}
.contact-intro{background:#101010;color:#fff;border:1px solid rgba(201,169,110,.24);border-radius:10px;padding:44px;display:flex;flex-direction:column;justify-content:flex-start;min-height:560px}
.contact-intro p{margin:0 0 12px;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.28em;text-transform:uppercase}
.contact-intro h1{margin:0;font-family:var(--serif);font-size:clamp(44px,5.5vw,82px);font-weight:300;line-height:.95;letter-spacing:-.02em}
/* ── Left panel sections ── */
.ci-top{margin-bottom:28px}
.contact-intro em{font-style:italic;color:var(--gold)}
.ci-sub{margin:16px 0 0;color:rgba(255,255,255,.52);font-size:13.5px;font-weight:300;line-height:1.78}

.ci-fit{margin-bottom:28px}
.ci-fit-label{font-size:9px;font-weight:800;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.ci-fit-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ci-fit-list li{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.72);font-size:13px;font-weight:300;line-height:1.4}
.ci-fit-list li i{color:var(--gold);font-size:8px;flex-shrink:0;margin-top:1px}

.ci-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(201,169,110,.15);border:1px solid rgba(201,169,110,.15);border-radius:6px;overflow:hidden;margin-bottom:28px}
.ci-stat{background:#0d0d0d;padding:14px 12px;text-align:center;display:flex;flex-direction:column;gap:4px}
.ci-stat-num{font-family:var(--serif);font-size:22px;font-weight:300;color:#fff;letter-spacing:-.02em;line-height:1}
.ci-stat-num .fa-star{font-size:11px;color:var(--gold);margin-left:2px;vertical-align:middle}
.ci-stat-lbl{font-size:8px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.38)}

.contact-lines{display:grid;gap:14px;margin-top:auto;padding-top:32px}
.contact-lines a,.contact-lines span{display:flex;align-items:flex-start;gap:12px;color:rgba(255,255,255,.72);font-size:14px;line-height:1.5}
.contact-lines i{color:var(--gold);font-size:12px;margin-top:3px;width:14px}
.contact-form,
.cstmcontactform{background:#F7F2E8;border:1px solid rgba(15,15,15,.08);border-radius:10px;padding:44px;display:grid;gap:18px;box-shadow:0 28px 80px rgba(0,0,0,.12)}
.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-trio{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
.cf-req{color:var(--gold);font-style:normal}
.contact-form .q-consent{display: grid !important;font-weight: 400 !important;line-height: 1.45 !important;letter-spacing: 0 !important;text-transform: none !important;font-size: 11.5px !important;}
.contact-form label{display:block;color:rgba(15,15,15,.56);font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.contact-form label:not(.contact-consent)>input,.contact-form label>select,.contact-form label>textarea{display:block;margin-top:7px}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid rgba(15,15,15,.12);background:#F7F2E8;color:#111;border-radius:5px;padding:14px 15px;font:400 14px/1.4 var(--sans);outline:none;letter-spacing:0;text-transform:none;transition:border-color .2s,background .2s,box-shadow .2s}
.contact-form input:not([type="checkbox"]){height:52px;min-height:0}
.contact-form select{appearance:none;-webkit-appearance:none;padding-right:42px;background-image:none;cursor:pointer}
.contact-form textarea{height:auto;min-height:128px;resize:vertical}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--gold);background:#fff;box-shadow:0 0 0 4px rgba(201,169,110,.12)}
.contact-form .contact-consent{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;color:rgba(15,15,15,.52);font-size:11.5px;font-weight:400;line-height:1.45;letter-spacing:0;text-transform:none}
.contact-form .contact-consent input[type="checkbox"]{width:16px;height:16px;min-width:16px;margin:2px 0 0;padding:0;border:1px solid rgba(15,15,15,.3);background:#fff;border-radius:3px;accent-color:var(--gold);appearance:auto;-webkit-appearance:auto;flex-shrink:0;cursor:pointer}
.contact-recaptcha-note{margin:-6px 0 0;color:rgba(15,15,15,.4);font-size:10.5px;line-height:1.45}
.contact-recaptcha-note a{color:var(--gold-dark);text-decoration:underline;text-underline-offset:2px}
.contact-form .qsubmit{min-height:52px;border:0;border-radius:5px;background:#111;color:var(--cream);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .2s,transform .2s}
.contact-form .qsubmit:hover{background:var(--gold);color:#1E1208;transform:translateY(-1px)}
.contact-form .qsubmit:disabled{cursor:default;opacity:.75}
.form-note{margin:-25px;text-align:center;color:rgba(15,15,15,.44);font-size:12px;line-height:1.6}
@media(max-width:900px){
    .contact-page{padding:60px 20px;background:#FBF8F1}
    .contact-shell{grid-template-columns:1fr}
    .contact-intro{min-height:auto}
}
@media(max-width:560px){
    .contact-intro,.contact-form{padding:28px 22px}
    .form-pair,.form-trio{grid-template-columns:1fr}
    .contact-form .contact-consent{grid-template-columns:16px 1fr;gap:8px;font-size:11px;line-height:1.5}
    .contact-form .contact-consent input[type="checkbox"]{width:14px;height:14px;min-width:14px;margin-top:3px}
    .contact-recaptcha-note{font-size:10px}
    .form-note{font-size:11px}
}

@media(max-width:768px){
    .contact-page{padding:40px 16px}
    .contact-shell{grid-template-columns:1fr;gap:12px}
    .contact-intro{min-height:auto;padding:28px 20px}
    .contact-intro h1{font-size:clamp(32px,9vw,48px)}
    .contact-form{padding:28px 20px}
}

/* PV form title */
.contact-form .lf-form-title,
.cstmcontactform .lf-form-title{
    font-family:var(--serif);font-size:clamp(22px,2vw,32px);
    font-weight:300;color:#0A0A0A;margin-bottom:5px;letter-spacing:-.025em;
}
.contact-form .lf-form-title em,
.cstmcontactform .lf-form-title em{font-style:italic;color:var(--gold)}
.contact-form .lf-form-sub,
.cstmcontactform .lf-form-sub{
    font-size:12px;font-weight:300;color:rgba(10,10,10,.42);
    margin-bottom:24px;letter-spacing:.03em;
}
