@charset 'utf-8';
/*
Theme Name: Panaterra Child Theme
Theme URI: 
Description: hello-elementor Child Theme - Multipurpose and Multiskin Responsive Wordpress theme
Author: hello-elementor Child Theme
Author URI:  
Template: hello-elementor
Version: 1.0
License: GNU General Public License
License URI: license.txt
Tags: flexible-header, accessibility-ready, custom-background, custom-colors, custom-header, custom-menu, featured-image-header, featured-images, full-width-template, microformats, post-formats, theme-options, threaded-comments, translation-ready
Text Domain: hello-elementor-child-theme
*/


header#site-header {
    display: none;
}

footer#site-footer {
    display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
    background: #00D06C;
    border: none;
    font-family: Karla !important;
    font-style: normal;
    font-weight: normal !important;
    font-size: 15px;
    line-height: 18px;
    letter-spacing: 0.003em;
    padding: 7px 11px;
    margin: 36px 0 0 0;
    max-width: 508px;
    color: #000000 !important;
}



div.elementor-message{
	background-color: #ffffff;
    padding: 10px;
    border-radius: 8px;
    font-weight: bold;
}
div.elementor-message-success{
	background-color: #1fc51f;
    color: white;
}


/* ============================================================
   PANATERRA — ENQUIRY COLUMN (Elementor Form)
   Complete stylesheet. Replaces all previous CSS.
   Targets live element IDs; .pt-enquiry duplicates are optional.
   ============================================================ */

/* ---------- tokens ---------- */
.elementor-element-b63595b,
.pt-enquiry{
  --pt-paper:#F3F5F0;
  --pt-white:#FFFFFF;
  --pt-text:#15251C;
  --pt-text-mute:#5D6B61;
  --pt-border:#D8DED6;
  --pt-border-strong:#B9C3B6;
  --pt-leaf-3:#0DB14B;
  --pt-green-deep:#07692F;
  --pt-green-deeper:#05541F;
  --pt-danger:#A32B1F;
  --pt-sans:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --pt-serif:"Source Serif 4",Georgia,"Times New Roman",serif;
  --pt-pad-x:clamp(1.25rem, 5vw, 5.5rem);
  --pt-pad-y:clamp(2.25rem, 5vh, 4.5rem);
  --pt-measure:30rem;
}

/* ---------- the paper panel ---------- */
.elementor-element-b63595b > .elementor-widget-wrap,
.pt-enquiry > .elementor-widget-wrap{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  align-content:center !important;
  height:100% !important;
  padding:var(--pt-pad-y) var(--pt-pad-x) !important;
  background-color:var(--pt-paper) !important;
}

.elementor-element-b63595b .elementor-widget,
.pt-enquiry .elementor-widget{
  width:100% !important;
  max-width:var(--pt-measure) !important;
  margin-bottom:0 !important;
}

/* ---------- heading: "Get in touch" ---------- */
.elementor-element-c7fcbed .elementor-heading-title,
.pt-enquiry .elementor-widget-heading .elementor-heading-title{
  margin:0 0 .4rem !important;
  padding:0 !important;
  font-family:var(--pt-sans) !important;
  font-size:clamp(1.35rem,1.2rem + .6vw,1.75rem) !important;
  font-weight:400 !important;
  line-height:1.25 !important;
  letter-spacing:-.01em !important;
  color:var(--pt-text) !important;
  text-transform:none !important;
}

/* ---------- intro line ---------- */
.elementor-element-2a15483,
.pt-enquiry .elementor-widget-text-editor{
  font-family:var(--pt-sans) !important;
  font-size:.95rem !important;
  font-weight:300 !important;
  line-height:1.55 !important;
  color:var(--pt-text-mute) !important;
  margin-bottom:0 !important;
}
.elementor-element-2a15483 .elementor-widget-container{
  margin-bottom:clamp(1.5rem,4vh,2rem) !important;
}
.elementor-element-2a15483 p,
.pt-enquiry .elementor-widget-text-editor p{
  margin:0 !important;
  color:var(--pt-text-mute) !important;
}

/* ============================================================
   FORM LAYOUT
   ============================================================ */
.elementor-element-1ac6b29 .elementor-form,
.pt-enquiry .elementor-form{
  container-type:inline-size;
  container-name:pt-form;
}

.elementor-element-1ac6b29 .elementor-form-fields-wrapper,
.pt-enquiry .elementor-form-fields-wrapper{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:1.05rem clamp(.75rem,2vw,1.1rem) !important;
  width:100% !important;
  margin:0 !important;
}

/* block layout inside each field so label sits above input */
.elementor-element-1ac6b29 .elementor-field-group,
.pt-enquiry .elementor-field-group{
  grid-column:1 / -1 !important;
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  flex:initial !important;
  box-sizing:border-box !important;
}

.elementor-element-1ac6b29 .elementor-field-group > *,
.pt-enquiry .elementor-field-group > *{
  box-sizing:border-box !important;
  max-width:100% !important;
  flex-basis:auto !important;
}

/* ============================================================
   LABELS  (real text kept in DOM for screen readers)
   ============================================================ */
.elementor-element-1ac6b29 .elementor-field-label,
.pt-enquiry .elementor-field-label{
  display:block !important;
  float:none !important;
  width:100% !important;
  margin:0 0 .4rem !important;
  padding:0 !important;
  font-family:var(--pt-sans) !important;
  font-size:.875rem !important;
  font-weight:400 !important;
  line-height:1.4 !important;
  color:var(--pt-text) !important;
  text-transform:none !important;
  letter-spacing:0 !important;
}

/* hide raw text only on the two optional fields, then re-render it */
.elementor-element-1ac6b29 .elementor-field-group-phone .elementor-field-label,
.elementor-element-1ac6b29 .elementor-field-group-field_0b46da8 .elementor-field-label,
.pt-enquiry .elementor-field-group-phone .elementor-field-label,
.pt-enquiry .elementor-field-group-field_0b46da8 .elementor-field-label{
  font-size:0 !important;
  line-height:1.4 !important;
  white-space:nowrap !important;
}

.elementor-element-1ac6b29 .elementor-field-group-phone .elementor-field-label::before,
.pt-enquiry .elementor-field-group-phone .elementor-field-label::before{
  content:"Phone Number";
}
.elementor-element-1ac6b29 .elementor-field-group-field_0b46da8 .elementor-field-label::before,
.pt-enquiry .elementor-field-group-field_0b46da8 .elementor-field-label::before{
  content:"Company / Organisation";
}
.elementor-element-1ac6b29 .elementor-field-group-phone .elementor-field-label::before,
.elementor-element-1ac6b29 .elementor-field-group-field_0b46da8 .elementor-field-label::before,
.pt-enquiry .elementor-field-group-phone .elementor-field-label::before,
.pt-enquiry .elementor-field-group-field_0b46da8 .elementor-field-label::before{
  font-size:.875rem !important;
  font-weight:400 !important;
  color:var(--pt-text) !important;
}

.elementor-element-1ac6b29 .elementor-field-group-phone .elementor-field-label::after,
.elementor-element-1ac6b29 .elementor-field-group-field_0b46da8 .elementor-field-label::after,
.pt-enquiry .elementor-field-group-phone .elementor-field-label::after,
.pt-enquiry .elementor-field-group-field_0b46da8 .elementor-field-label::after{
  content:"optional";
  margin-left:.45rem;
  font-size:.78rem !important;
  font-weight:300 !important;
  color:var(--pt-text-mute) !important;
  white-space:nowrap;
}

/* ============================================================
   INPUTS
   ============================================================ */
.elementor-element-1ac6b29 .elementor-field-textual,
.elementor-element-1ac6b29 input.elementor-field,
.elementor-element-1ac6b29 textarea.elementor-field,
.pt-enquiry .elementor-field-textual{
  display:block !important;
  float:none !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:auto !important;
  flex-basis:auto !important;
  flex-grow:0 !important;
  padding:.8rem .9rem !important;
  font-family:var(--pt-sans) !important;
  font-size:1rem !important;
  font-weight:300 !important;
  line-height:1.55 !important;
  color:var(--pt-text) !important;
  background-color:var(--pt-white) !important;
  background-image:none !important;
  border:1px solid var(--pt-border) !important;
  border-radius:10px !important;
  box-shadow:none !important;
  box-sizing:border-box !important;
  transition:border-color .16s ease, box-shadow .16s ease !important;
  -webkit-appearance:none !important;
  appearance:none !important;
}

.elementor-element-1ac6b29 textarea.elementor-field-textual,
.pt-enquiry textarea.elementor-field-textual{
  display:block !important;
  min-height:7.5rem !important;
  resize:vertical !important;
}

.elementor-element-1ac6b29 .elementor-field-textual::placeholder,
.pt-enquiry .elementor-field-textual::placeholder{
  color:#9AA79D !important;
  opacity:1 !important;
}

.elementor-element-1ac6b29 .elementor-field-textual:hover,
.pt-enquiry .elementor-field-textual:hover{
  border-color:var(--pt-border-strong) !important;
}

.elementor-element-1ac6b29 .elementor-field-textual:focus,
.pt-enquiry .elementor-field-textual:focus{
  outline:none !important;
  border-color:var(--pt-green-deep) !important;
  box-shadow:0 0 0 3px rgba(13,177,75,.22) !important;
}

/* ============================================================
   SUBMIT BUTTON — defeats "stretch" alignment (flex-basis:100%)
   ============================================================ */
.elementor-element-1ac6b29 .e-form__buttons,
.pt-enquiry .e-form__buttons{
  grid-column:1 / -1 !important;
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  justify-content:flex-start !important;
  align-items:flex-start !important;
  width:100% !important;
  margin-top:.35rem !important;
  padding:0 !important;
}

.elementor-element-1ac6b29.elementor-button-align-stretch .e-form__buttons .elementor-button,
.elementor-element-1ac6b29 .e-form__buttons button.elementor-button,
.elementor-element-1ac6b29 .elementor-field-type-submit .elementor-button,
.elementor-element-1ac6b29 .elementor-button[type="submit"],
.pt-enquiry .e-form__buttons button.elementor-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  align-self:flex-start !important;
  width:-moz-fit-content !important;
  width:fit-content !important;
  max-width:100% !important;
  min-width:0 !important;
  flex:0 0 auto !important;
  flex-basis:auto !important;
  flex-grow:0 !important;
  flex-shrink:0 !important;
  box-sizing:border-box !important;
  padding:.85rem 1.9rem !important;
  font-family:var(--pt-sans) !important;
  font-size:1rem !important;
  font-weight:400 !important;
  line-height:1.4 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  text-align:center !important;
  color:#FFFFFF !important;
  background-color:var(--pt-green-deep) !important;
  border:0 !important;
  border-radius:999px !important;
  box-shadow:none !important;
  cursor:pointer !important;
  transition:background-color .16s ease, transform .16s ease !important;
}

.elementor-element-1ac6b29 .elementor-button-content-wrapper,
.pt-enquiry .elementor-button-content-wrapper{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  flex:0 0 auto !important;
}

/* render "Send Enquiry" without editing the widget */
.elementor-element-1ac6b29 .elementor-button-text,
.pt-enquiry .elementor-form .elementor-button-text{
  font-size:0 !important;
  width:auto !important;
  flex:0 0 auto !important;
}
.elementor-element-1ac6b29 .elementor-button-text::after,
.pt-enquiry .elementor-form .elementor-button-text::after{
  content:"Send Enquiry";
  font-size:1rem !important;
  font-weight:400 !important;
  line-height:1.4 !important;
  color:#FFFFFF !important;
  white-space:nowrap !important;
}

.elementor-element-1ac6b29 .elementor-button[type="submit"]:hover,
.elementor-element-1ac6b29 .elementor-button[type="submit"]:focus,
.pt-enquiry .elementor-form .elementor-button[type="submit"]:hover{
  background-color:var(--pt-green-deeper) !important;
  color:#FFFFFF !important;
}
.elementor-element-1ac6b29 .elementor-button[type="submit"]:active{
  transform:translateY(1px) !important;
}
.elementor-element-1ac6b29 .elementor-button[type="submit"]:focus-visible{
  outline:2px solid var(--pt-green-deep) !important;
  outline-offset:3px !important;
}

/* ============================================================
   VALIDATION + MESSAGES
   ============================================================ */
.elementor-element-1ac6b29 .elementor-field-group.elementor-error .elementor-field-textual,
.pt-enquiry .elementor-field-group.elementor-error .elementor-field-textual{
  border-color:var(--pt-danger) !important;
}
.elementor-element-1ac6b29 .elementor-field-group.elementor-error .elementor-field-textual:focus{
  box-shadow:0 0 0 3px rgba(163,43,31,.18) !important;
}

.elementor-element-1ac6b29 .elementor-message-danger,
.pt-enquiry .elementor-message-danger{
  margin:.4rem 0 0 !important;
  font-family:var(--pt-sans) !important;
  font-size:.8125rem !important;
  font-weight:300 !important;
  color:var(--pt-danger) !important;
}

.elementor-element-1ac6b29 .elementor-message-success,
.pt-enquiry .elementor-message-success{
  grid-column:1 / -1 !important;
  margin:1.25rem 0 0 !important;
  padding:clamp(1.25rem,4vw,1.75rem) !important;
  font-family:var(--pt-serif) !important;
  font-size:1rem !important;
  line-height:1.65 !important;
  color:var(--pt-text-mute) !important;
  background-color:var(--pt-white) !important;
  border:0 !important;
  border-top:3px solid var(--pt-leaf-3) !important;
  border-radius:4px !important;
  box-shadow:0 1px 2px rgba(21,37,28,.06) !important;
}

/* keep the anti-spam honeypot invisible */
.elementor-element-1ac6b29 .apbct_special_field,
.pt-enquiry .apbct_special_field{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@container pt-form (min-width:30rem){
  .elementor-element-1ac6b29 .elementor-field-group-phone,
  .elementor-element-1ac6b29 .elementor-field-group-field_0b46da8,
  .pt-enquiry .elementor-field-group-phone,
  .pt-enquiry .elementor-field-group-field_0b46da8{
    grid-column:span 1 !important;
  }
}
@supports not (container-type:inline-size){
  @media (min-width:75em){
    .elementor-element-1ac6b29 .elementor-field-group-phone,
    .elementor-element-1ac6b29 .elementor-field-group-field_0b46da8{
      grid-column:span 1 !important;
    }
  }
}

@media (min-width:48em){
  .elementor-element-b63595b,
  .pt-enquiry{--pt-measure:32rem}
}

@media (min-width:62.5em){
  .elementor-element-b63595b > .elementor-widget-wrap,
  .pt-enquiry > .elementor-widget-wrap{
    min-height:100vh !important;
    min-height:100svh !important;
    border-left:1px solid rgba(8,34,26,.08) !important;
  }
}

@media (min-width:110em){
  .elementor-element-b63595b,
  .pt-enquiry{
    --pt-pad-x:clamp(4rem,7vw,9rem);
    --pt-measure:34rem;
  }
}