/* Le Duong Canonical Renderer — Contact parity v1.1.x "Forest Atelier" (1.1.1: button text ≥4.5:1 across the whole gradient; placeholder 4.85:1).
   Contact main only. Forest green is the ground of the whole Contact area; champagne-gold is
   spent on hairlines, labels and the primary action. No header/footer/body rules; the existing
   site shell and integrations are preserved. Same markup as 1.0.2; the eleven dictionaries are unchanged. */
main.ldcr-contact-parity{
  --ldc-forest:#0b3b2c;--ldc-forest-deep:#082b20;--ldc-forest-2:#14533d;--ldc-ink:#16231c;--ldc-muted:#52645a;
  --ldc-gold:#bd8c38;--ldc-gold-deep:#9a6f24;--ldc-champagne:#e6cf95;--ldc-champagne-line:rgba(230,207,149,.30);
  --ldc-ivory:#f7f2e8;--ldc-ivory-70:rgba(247,242,232,.72);--ldc-paper:#fffdfa;--ldc-field:#fbf8f1;--ldc-line:rgba(11,59,44,.2);
  --ldc-sans:Inter,"Segoe UI","Noto Sans Thai","Noto Sans SC","Noto Sans Arabic",Arial,sans-serif;
  --ldc-serif:Georgia,"Noto Serif SC","Noto Naskh Arabic","Times New Roman",serif;
  position:relative;isolation:isolate;
  background:
    radial-gradient(900px 520px at 88% -8%,rgba(230,207,149,.16),transparent 60%),
    radial-gradient(700px 480px at -10% 110%,rgba(20,83,61,.75),transparent 60%),
    linear-gradient(180deg,var(--ldc-forest) 0,var(--ldc-forest-deep) 100%);
  color:var(--ldc-ivory);font-family:var(--ldc-sans);line-height:1.65;overflow-wrap:break-word}
main.ldcr-contact-parity::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.35;
  background:repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 1px,transparent 1px 14px)}
main.ldcr-contact-parity,main.ldcr-contact-parity *{box-sizing:border-box}
main.ldcr-contact-parity .container{width:min(1240px,calc(100% - 64px));margin-inline:auto;padding-inline:0}

/* Hero */
main.ldcr-contact-parity .ldcr-contact-hero{padding:clamp(64px,8vw,104px) 0 clamp(44px,5vw,64px);background:transparent;color:var(--ldc-ivory)}
main.ldcr-contact-parity .eyebrow{display:flex;align-items:center;gap:14px;margin:0 0 22px;font:700 11px/1.5 var(--ldc-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ldc-champagne)}
main.ldcr-contact-parity .eyebrow::before{content:"";flex:0 0 28px;height:1px;background:var(--ldc-champagne);opacity:.9}
main.ldcr-contact-parity .ldcr-contact-hero h1{margin:0;max-width:16ch;font:500 clamp(42px,5.2vw,78px)/1.04 var(--ldc-serif);letter-spacing:-.025em;color:var(--ldc-ivory);text-wrap:balance}
main.ldcr-contact-parity .ldcr-contact-lead{max-width:64ch;margin:28px 0 0;font-size:17px;line-height:1.75;color:var(--ldc-ivory-70)}
main.ldcr-contact-parity .ldcr-contact-lead a,main.ldcr-contact-parity .ldcr-inline-link{color:var(--ldc-ivory);text-decoration:underline;text-decoration-color:var(--ldc-champagne);text-decoration-thickness:1px;text-underline-offset:5px;transition:color .15s}
main.ldcr-contact-parity .ldcr-contact-lead a:hover,main.ldcr-contact-parity .ldcr-inline-link:hover{color:var(--ldc-champagne)}

/* Section on the same forest ground, separated by one fading hairline */
main.ldcr-contact-parity .ldcr-contact-section{position:relative;padding:clamp(44px,5vw,64px) 0 clamp(80px,9vw,120px);background:transparent}
main.ldcr-contact-parity .ldcr-contact-section::before{content:"";position:absolute;top:0;left:50%;width:min(1240px,calc(100% - 64px));height:1px;transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,rgba(230,207,149,.55) 18%,rgba(230,207,149,.55) 82%,transparent)}
main.ldcr-contact-parity .contact-grid{display:grid;grid-template-columns:minmax(300px,.86fr) minmax(0,1.14fr);align-items:start;gap:clamp(36px,5vw,72px)}
main.ldcr-contact-parity .contact-grid>*,main.ldcr-contact-parity .contact-panel{min-width:0}

/* Direct channels: a glass card on the forest ground */
main.ldcr-contact-parity .contact-panel{display:block!important;position:static;top:auto;margin:0;padding:clamp(26px,3vw,40px);
  background:linear-gradient(160deg,rgba(255,255,255,.075),rgba(255,255,255,.028));border:1px solid var(--ldc-champagne-line);border-top:1px solid var(--ldc-champagne-line);border-radius:16px;
  box-shadow:0 24px 60px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
main.ldcr-contact-parity .contact-panel .eyebrow{margin-bottom:16px}
main.ldcr-contact-parity .contact-panel h2{max-width:22ch;margin:0 0 30px;font:500 clamp(30px,2.9vw,42px)/1.14 var(--ldc-serif);letter-spacing:-.02em;color:var(--ldc-ivory);text-wrap:balance}
main.ldcr-contact-parity .contact-details{display:block}
main.ldcr-contact-parity .contact-item{margin:0;padding:24px 0;border:0;border-bottom:1px solid rgba(230,207,149,.18)}
main.ldcr-contact-parity .contact-item:first-child{padding-top:0}
main.ldcr-contact-parity .contact-item h3{margin:0 0 8px;font:700 12px/1.5 var(--ldc-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ldc-champagne)}
main.ldcr-contact-parity .contact-item p{margin:0;padding:0;border:0;color:var(--ldc-ivory);font-size:16px;line-height:1.6}
main.ldcr-contact-parity .contact-item .ldcr-channel-note{font-size:14px;color:var(--ldc-ivory-70)}
main.ldcr-contact-parity .button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
main.ldcr-contact-parity .ldcr-contact-people a{flex:1 1 150px}
main.ldcr-contact-parity .ldcr-direct-email{display:inline-block;margin-top:12px;color:var(--ldc-ivory);font:600 17px/1.4 var(--ldc-sans);text-decoration:underline;text-decoration-color:var(--ldc-champagne);text-underline-offset:5px;overflow-wrap:anywhere}
main.ldcr-contact-parity .ldcr-phone-links{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:10px}
main.ldcr-contact-parity .ldcr-phone-links a{display:inline-block;padding-block:4px;color:var(--ldc-ivory);font:500 17px/1.4 var(--ldc-sans);text-decoration:underline;text-decoration-color:var(--ldc-champagne);text-underline-offset:5px;font-variant-numeric:tabular-nums}
main.ldcr-contact-parity .ldcr-direct-email:hover,main.ldcr-contact-parity .ldcr-phone-links a:hover{color:var(--ldc-champagne)}
main.ldcr-contact-parity .ldcr-contact-facts{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-top:24px}
main.ldcr-contact-parity .ldcr-contact-facts .contact-item{padding:0;border:0}
main.ldcr-contact-parity .ldcr-contact-facts .contact-item p{font-size:15px;color:var(--ldc-ivory)}

/* Buttons: one champagne primary, one hairline secondary (ivory on glass, forest on paper) */
main.ldcr-contact-parity .button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 22px;gap:8px;border-radius:10px;border:1px solid transparent;
  font:700 14px/1.4 var(--ldc-sans);letter-spacing:.01em;text-align:center;text-decoration:none;white-space:normal;cursor:pointer;text-transform:none;transform:none;
  transition:background-color .18s,border-color .18s,box-shadow .18s,color .18s}
main.ldcr-contact-parity .button-gold{background:linear-gradient(135deg,#ead9a8 0%,#c99a45 55%,#b68a3c 100%);border-color:rgba(154,111,36,.6);color:#0a2e22;
  box-shadow:0 12px 26px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.45)}
main.ldcr-contact-parity .button-gold:hover{background:linear-gradient(135deg,#f0e2b8 0%,#cfa352 55%,#b98d3f 100%);color:#0a2e22;transform:none}
main.ldcr-contact-parity .contact-panel .button-outline{background:rgba(255,255,255,.02);border-color:rgba(247,242,232,.42);color:var(--ldc-ivory)}
main.ldcr-contact-parity .contact-panel .button-outline:hover{background:rgba(255,255,255,.09);border-color:var(--ldc-champagne);color:var(--ldc-ivory);transform:none}
main.ldcr-contact-parity .ldcr-quick-contact .button-outline{background:transparent;border-color:rgba(11,59,44,.55);color:var(--ldc-forest)}
main.ldcr-contact-parity .ldcr-quick-contact .button-outline:hover{background:var(--ldc-ivory);border-color:var(--ldc-forest);color:var(--ldc-forest);transform:none}
main.ldcr-contact-parity .ldcr-quick-contact .button-gold{box-shadow:0 10px 22px rgba(11,59,44,.16),inset 0 1px 0 rgba(255,255,255,.45)}

/* Inquiry form: a paper card with a champagne edge */
main.ldcr-contact-parity .ldcr-quick-contact{display:block;max-width:none;width:100%;margin:0;padding:clamp(26px,3.2vw,44px);color:var(--ldc-ink);
  background:linear-gradient(90deg,var(--ldc-gold),var(--ldc-champagne) 50%,var(--ldc-gold)) top/100% 3px no-repeat,var(--ldc-paper);
  border:1px solid rgba(230,207,149,.55);border-radius:16px;box-shadow:0 34px 80px rgba(0,0,0,.38);text-transform:none;letter-spacing:0}
main.ldcr-contact-parity .ldcr-contact-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;min-width:0;padding:0;margin:0;border:0}
main.ldcr-contact-parity .ldcr-quick-contact label{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;min-width:0;margin:0;font-family:var(--ldc-sans);text-transform:none;letter-spacing:0}
main.ldcr-contact-parity .ldcr-quick-contact label>span{font:700 12px/1.5 var(--ldc-sans);letter-spacing:.12em;text-transform:uppercase;color:#3f5a4c}
main.ldcr-contact-parity .ldcr-quick-contact input,main.ldcr-contact-parity .ldcr-quick-contact select,main.ldcr-contact-parity .ldcr-quick-contact textarea{display:block;width:100%;min-width:0;max-width:100%;min-height:52px;margin:0;padding:13px 15px;
  background:var(--ldc-field);border:1px solid var(--ldc-line);border-radius:9px;box-shadow:none;color:var(--ldc-ink);font:400 16px/1.5 var(--ldc-sans);text-transform:none;letter-spacing:0;transition:border-color .15s,box-shadow .15s}
main.ldcr-contact-parity .ldcr-quick-contact input:focus,main.ldcr-contact-parity .ldcr-quick-contact select:focus,main.ldcr-contact-parity .ldcr-quick-contact textarea:focus{outline:none;border-color:var(--ldc-forest);box-shadow:0 0 0 3px rgba(11,59,44,.14)}
main.ldcr-contact-parity .ldcr-quick-contact select{padding-inline-end:36px;text-overflow:ellipsis}
main.ldcr-contact-parity .ldcr-quick-contact textarea{resize:vertical;min-height:148px}
main.ldcr-contact-parity .ldcr-quick-contact textarea::placeholder{color:#627169;opacity:1}
main.ldcr-contact-parity .quote-actions{display:grid;grid-template-columns:1fr;gap:12px;min-width:0;margin-top:4px}
main.ldcr-contact-parity .form-note{margin:20px 0 0;color:var(--ldc-muted);font:400 13px/1.65 var(--ldc-sans);letter-spacing:0;text-transform:none}
main.ldcr-contact-parity .ldcr-formal-note{margin-top:22px;padding-inline:4px;color:var(--ldc-ivory-70);font-size:14px}
main.ldcr-contact-parity .ldcr-formal-note a{color:var(--ldc-ivory);font-weight:650}
main.ldcr-contact-parity :focus-visible{outline:3px solid var(--ldc-champagne);outline-offset:3px}
main.ldcr-contact-parity .ldcr-quick-contact :focus-visible{outline-color:#87611f}
main.ldcr-contact-parity .ldcr-composer-preview{margin:18px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--ldc-ivory);padding:16px;border:1px solid rgba(189,140,56,.4);border-radius:9px;font:400 13px/1.65 var(--ldc-sans);color:var(--ldc-ink);text-transform:none;letter-spacing:0}
main.ldcr-contact-parity .ldcr-composer-preview[hidden]{display:none}
.ldcr-contact-sr-only{position:absolute!important;width:1px!important;height:1px!important;clip-path:inset(50%);overflow:hidden;white-space:nowrap;padding:0!important;border:0!important}
.ldcr-contact-preview-banner{margin:0;padding:14px 22px;background:#fff2bf;border-bottom:2px solid #b18926;color:#352b0e;font:14px/1.55 system-ui,sans-serif}
.ldcr-contact-preview-banner strong{display:block}.ldcr-contact-preview-banner a{color:inherit;text-decoration:underline}

/* Script and direction */
main.ldcr-contact-parity[dir=rtl]{text-align:right}
main.ldcr-contact-parity[dir=rtl] h1,main.ldcr-contact-parity[dir=rtl] h2,main.ldcr-contact-parity[dir=rtl] .eyebrow,main.ldcr-contact-parity[dir=rtl] .contact-item h3,main.ldcr-contact-parity[dir=rtl] label>span{letter-spacing:0}
main.ldcr-contact-parity[lang=th] h1,main.ldcr-contact-parity[lang=th] h2,main.ldcr-contact-parity[lang=th] .eyebrow,main.ldcr-contact-parity[lang=th] .contact-item h3,main.ldcr-contact-parity[lang=th] label>span{letter-spacing:0;line-height:1.45}
main.ldcr-contact-parity[lang=th] .ldcr-contact-hero h1{line-height:1.3}
main.ldcr-contact-parity[lang=ja] h1,main.ldcr-contact-parity[lang=ko] h1,main.ldcr-contact-parity[lang=zh-Hans] h1{letter-spacing:0;line-height:1.18}
main.ldcr-contact-parity[lang=ja],main.ldcr-contact-parity[lang=ko]{word-break:normal;overflow-wrap:anywhere}

/* Responsive */
@media(max-width:1000px){
  main.ldcr-contact-parity .contact-grid{grid-template-columns:1fr;gap:34px}
  main.ldcr-contact-parity .container,main.ldcr-contact-parity .ldcr-contact-section::before{width:min(760px,calc(100% - 48px))}
  main.ldcr-contact-parity .contact-panel h2{max-width:none}
  main.ldcr-contact-parity .ldcr-contact-hero h1{max-width:none}}
@media(max-width:700px){main.ldcr-contact-parity .contact-panel{display:block!important}}
@media(max-width:600px){
  main.ldcr-contact-parity .container,main.ldcr-contact-parity .ldcr-contact-section::before{width:calc(100% - 36px)}
  main.ldcr-contact-parity .ldcr-contact-hero{padding:52px 0 40px}
  main.ldcr-contact-parity .ldcr-contact-hero h1{font-size:clamp(36px,9.6vw,46px);line-height:1.1}
  main.ldcr-contact-parity .ldcr-contact-lead{font-size:16px;margin-top:22px;line-height:1.7}
  main.ldcr-contact-parity .ldcr-contact-section{padding:36px 0 64px}
  main.ldcr-contact-parity .contact-panel{padding:24px 20px;border-radius:14px}
  main.ldcr-contact-parity .contact-panel h2{font-size:31px}
  main.ldcr-contact-parity .ldcr-quick-contact{padding:26px 18px;border-radius:14px}
  main.ldcr-contact-parity .ldcr-contact-facts{gap:14px}
  main.ldcr-contact-parity .button{font-size:14px;padding-inline:14px}
  main.ldcr-contact-parity .ldcr-contact-people a{flex-basis:120px}
  main.ldcr-contact-parity .ldcr-phone-links{gap:6px 20px}
  main.ldcr-contact-parity[lang=th] .ldcr-contact-hero h1{line-height:1.4}}
@media(prefers-reduced-motion:reduce){main.ldcr-contact-parity *{transition:none!important;scroll-behavior:auto!important}}
