/* =========================================================
   DANIEL LUCIAN — CONTACT
   Page-specific content only.
   Global shell is inherited from shared-framework.css.
   ========================================================= */

html,
body{
  min-height:100%;
  background:#111;
}

.contact-page{
  box-sizing:border-box;
  min-height:100vh;
  padding-inline:var(--page-pad);
}

.contact-main{
  width:min(100%, var(--standard-content-width));
  margin:0 auto;
}

.contact-intro{
  max-width:680px;
}

.contact-intro .page-title{
  margin:0;
  color:var(--ivory);
  letter-spacing:.02em;
}

.contact-rule{
  width:100%;
  height:0;
  margin:18px 0 24px;
  background:none;
  border-top:var(--dl-gold-line-width) solid var(--dl-gold-line-fixed);
}

.contact-intro p,
.contact-details p{
  margin:0;
  color:var(--ivory);
  font-size:14px;
  line-height:1.75;
  font-weight:400;
}

.contact-details{
  max-width:680px;
  margin-top:32px;
}

.contact-details p{
  display:flex;
  align-items:baseline;
  gap:24px;
}

.contact-label{
  min-width:52px;
  color:var(--muted);
}



@media(max-width:719px){

  .contact-intro,
  .contact-details{
    max-width:none;
  }

  .contact-rule{
    margin-top:16px;
    margin-bottom:21px;
  }

  .contact-details{
    margin-top:28px;
  }

  .contact-details p{
    display:block;
  }

  .contact-label{
    display:block;
    margin-bottom:7px;
  }
}


/* =========================================================
   CONTACT — APPROVED SITE BACKGROUND / VIEWPORT
   Derived only from the proven Collection implementation.
   No Contact geometry or content rules changed.
   ========================================================= */

html{
  background:#0c0906 !important;
  background-image:none !important;
}

body{
  background-color:#0c0906 !important;
  background-image:url("../collection/assets/scroll-light-background.png") !important;
  background-repeat:no-repeat !important;
  background-position:center top !important;
  background-size:cover !important;
  background-attachment:fixed !important;
}

.contact-page{
  background:none !important;
  background-image:none !important;
  background-color:transparent !important;
}


/* Mobile — keep decorative background attached to visible viewport */
@media (max-width:719px){

  html{
    background:#0b0a08 !important;
  }

  body{
    position:relative;
    background-image:none !important;
    background-color:transparent !important;
    background-attachment:scroll !important;
  }

  body::before{
    content:"";
    position:fixed;
    inset:0;
    z-index:-1;
    width:100vw;
    height:100vh;
    height:100dvh;
    background:
      #0b0a08 url("../collection/assets/scroll-light-background.png")
      center center / cover no-repeat;
    pointer-events:none;
    transform:translateZ(0);
  }
}


/* Proven short-landscape viewport glow */
@media (orientation:landscape) and (max-height:520px) and (max-width:1000px){

  html{
    background:#0f0b07 !important;
  }

  body{
    background:transparent !important;
    background-image:none !important;
    min-height:100%;
  }

  body::before{
    display:none !important;
  }

  html::before{
    content:"";
    position:fixed;
    inset:0;
    z-index:-1;
    pointer-events:none;

    background:
      radial-gradient(
        ellipse 48% 105% at 50% 18%,
        rgba(107,105,97,.96) 0%,
        rgba(82,79,73,.88) 20%,
        rgba(48,44,39,.72) 46%,
        rgba(24,19,14,.48) 66%,
        rgba(15,11,7,0) 82%
      );

    background-repeat:no-repeat;
    background-position:center top;
    background-size:100% 760px;
  }
}


/* =========================================================
   CONTACT — VISUAL FORM
   Presentation only.
   No submission behaviour is active.
   ========================================================= */

.contact-form-wrap{
  width:min(100%, 620px);
  margin-top:34px;
}

.contact-form{
  margin:0;
}

.contact-field{
  margin:0 0 23px;
}

.contact-field label{
  display:block;
  margin:0 0 8px;
  color:var(--ivory);
  font-size:13px;
  line-height:1.35;
  font-weight:400;
}

.contact-field input,
.contact-field textarea{
  display:block;
  box-sizing:border-box;
  width:100%;
  margin:0;
  border:1px solid rgba(229,212,154,.34);
  border-radius:0;
  outline:none;
  background:rgba(8,7,6,.32);
  color:var(--ivory);
  font:inherit;
  font-size:14px;
  line-height:1.5;
  box-shadow:none;
  -webkit-appearance:none;
  appearance:none;
}

.contact-field input{
  height:38px;
  padding:7px 10px;
}

.contact-field textarea{
  min-height:170px;
  padding:9px 10px;
  resize:vertical;
}

.contact-field input:focus,
.contact-field textarea:focus{
  border-color:rgba(229,212,154,.72);
  background:rgba(8,7,6,.42);
}

.contact-submit{
  display:inline-block;
  box-sizing:border-box;
  margin:2px 0 0;
  padding:9px 17px;
  border:1px solid rgba(229,212,154,.58);
  border-radius:0;
  background:rgba(8,7,6,.28);
  color:var(--ivory);
  font:inherit;
  font-size:12px;
  line-height:1.2;
  font-weight:400;
  letter-spacing:.03em;
  cursor:default;
  -webkit-appearance:none;
  appearance:none;
}

@media(max-width:719px){

  .contact-form-wrap{
    width:100%;
    margin-top:29px;
  }

  .contact-field{
    margin-bottom:20px;
  }

  .contact-field textarea{
    min-height:150px;
  }
}


/* =========================================================
   CONTACT — APPROVED ITEM BUTTON PARITY
   Matches approved item-page ENQUIRE visual treatment.
   Form submission is handled by the production Contact controller.
   ========================================================= */

.contact-submit{
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;

  width:min(100%, 180px);
  min-height:36px;
  margin:26px auto 0;
  padding:12px 28px;

  border:1px solid #191713;
  border-radius:0;
  outline:1px solid rgba(210,190,126,.28);
  outline-offset:1px;

  background:
    linear-gradient(
      to bottom,
      #d7c590 0%,
      #c7b37d 48%,
      #9d8b59 100%
    );

  color:#15130f;
  font:inherit;
  font-size:18px;
  font-weight:400;
  line-height:1.15;
  letter-spacing:.2px;
  text-align:center;
  text-decoration:none;
  text-shadow:0 1px 0 rgba(255,255,255,.18);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    inset 0 -1px 0 rgba(0,0,0,.20);

  -webkit-appearance:none;
  appearance:none;
}

.contact-submit:hover,
.contact-submit:focus-visible{
  filter:brightness(1.06);
}

@media(max-width:719px){
  .contact-submit{
    width:min(100%, 180px);
    min-height:36px;
    padding:11px 20px;
    font-size:16px;
  }
}


/* =========================================================
   CONTACT — CONSOLIDATED ALIGNMENT
   Established site pattern:
   centred heading / title rule / introductory copy,
   centred 620px form,
   left-aligned form labels and entered text.
   ========================================================= */

.contact-intro{
  max-width:620px;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}

.contact-intro .page-title{
  text-align:center;
}

.contact-rule{
  width:72px;
  margin-left:auto;
  margin-right:auto;
}

.contact-intro p{
  text-align:center;
}

.contact-form-wrap{
  width:min(100%, 620px);
  margin-left:auto;
  margin-right:auto;
}

.contact-form{
  text-align:left;
}

.contact-field label{
  text-align:left;
}

.contact-field input,
.contact-field textarea{
  text-align:left;
}

.contact-submit{
  margin-left:auto;
  margin-right:auto;
}


/* =========================================================
   CONTACT — ITEM ENQUIRY CONTEXT
   Appears only for a valid ?item=DL... enquiry.
   ========================================================= */

.contact-item-context{
  margin:0 0 16px;
  text-align:center;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
  font-weight:400;
  letter-spacing:.02em;
}

.contact-item-context[hidden]{
  display:none !important;
}

/* =========================================================
   CONTACT — SUBMISSION INTEGRATION
   Browser communication with the server-side handler.
   Visual geometry of the approved form remains unchanged.
   ========================================================= */

.contact-honeypot{
  position:absolute !important;
  left:-10000px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}

.contact-status{
  max-width:620px;
  margin:18px auto -8px;
  text-align:center;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
  font-weight:400;
  letter-spacing:.01em;
}

.contact-status[hidden]{
  display:none !important;
}

.contact-status--success{
  color:var(--ivory);
}

.contact-status--error{
  color:var(--muted);
}

.contact-status--test{
  color:var(--muted);
}

.contact-submit:disabled{
  cursor:default;
  opacity:.72;
  filter:none;
}


/* =========================================================
   CONTACT — SAFARI AUTOFILL TREATMENT
   Replaces browser yellow autofill with the site's
   restrained warm-grey field treatment.
   ========================================================= */

.contact-field input:-webkit-autofill,
.contact-field input:-webkit-autofill:hover,
.contact-field input:-webkit-autofill:focus,
.contact-field input:-webkit-autofill:active{
  -webkit-text-fill-color:var(--ivory) !important;
  caret-color:var(--ivory);
  -webkit-box-shadow:
    0 0 0 1000px rgba(86,84,79,.82) inset !important;
  box-shadow:
    0 0 0 1000px rgba(86,84,79,.82) inset !important;
  border-color:rgba(229,212,154,.34) !important;
  transition:background-color 9999s ease-out 0s;
}
