/* Forms (Forminator, "Design style: None") + set-up notes. Loaded on pages that show a form. */
.inc-form-missing{text-align:center;font:400 16px/1.6 var(--sans);}
.inc-form-missing a{color:var(--ember-text);border-bottom:1px solid currentColor;}
.inc-form-note{margin-bottom:10px!important;padding:10px 14px;border-radius:10px;background:#fff;border:1px dashed var(--ember-text);font-size:14px;}

/* Forminator form, "Design style: None" (fields keep Forminator's own markup) */
.inc-form .forminator-ui{font:400 16px var(--sans);color:var(--ink);}
.inc-form .forminator-row{display:flex;gap:16px;margin:0 0 18px;}
.inc-form .forminator-col{flex:1;min-width:0;}
@media (max-width:640px){.inc-form .forminator-row{flex-direction:column;gap:18px;}}
.inc-form .forminator-field{display:flex;flex-direction:column;gap:7px;}
.inc-form .forminator-label,.inc-form legend.forminator-label{font:600 14px var(--sans);color:var(--ink);padding:0;}
.inc-form .forminator-required{color:var(--ash);font-weight:400;}
.inc-form .forminator-description{font:400 13px var(--sans);color:var(--ash);}
.inc-form fieldset{border:0;padding:0;margin:0;min-width:0;}
.inc-form .forminator-input,.inc-form .forminator-textarea,.inc-form input[type=text],.inc-form input[type=email],.inc-form input[type=tel],.inc-form textarea{width:100%;font:400 16px var(--sans);color:var(--ink);background:#F7F6EE;border:1px solid rgba(20,20,20,.2);border-radius:12px;padding:14px 16px;outline:none;transition:border-color .2s,box-shadow .2s;}
.inc-form .forminator-input:focus,.inc-form .forminator-textarea:focus,.inc-form input:focus,.inc-form textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(20,20,20,.08);}
.inc-form textarea{min-height:120px;resize:vertical;}
/* radio + checkbox options as pill chips, side by side (Forminator puts them straight inside .forminator-field) */
.inc-form .forminator-field:has(> .forminator-radio, > .forminator-checkbox){flex-direction:row;flex-wrap:wrap;gap:0;align-items:flex-start;}
.inc-form .forminator-field:has(> .forminator-radio, > .forminator-checkbox) > :not(.forminator-radio):not(.forminator-checkbox){flex-basis:100%;margin-bottom:7px;}
.inc-form .forminator-radio,.inc-form .forminator-checkbox{position:relative;display:inline-flex;margin:0 8px 8px 0;cursor:pointer;}
.inc-form .forminator-radio input,.inc-form .forminator-checkbox input{position:absolute;opacity:0;pointer-events:none;}
.inc-form .forminator-radio-bullet,.inc-form .forminator-checkbox-box{display:none!important;}
.inc-form .forminator-radio-label,.inc-form .forminator-checkbox-label{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border:1px solid rgba(20,20,20,.22);border-radius:999px;background:#F7F6EE;font:500 14px var(--sans);transition:background .2s,color .2s,border-color .2s;user-select:none;}
.inc-form .forminator-radio input:checked ~ .forminator-radio-label,.inc-form .forminator-checkbox input:checked ~ .forminator-checkbox-label{background:var(--ink);color:#fff;border-color:var(--ink);}
.inc-form .forminator-radio input:focus-visible ~ .forminator-radio-label,.inc-form .forminator-checkbox input:focus-visible ~ .forminator-checkbox-label{outline:2px solid var(--ember);outline-offset:2px;}
/* errors + messages */
.inc-form .forminator-error-message{font:500 13px var(--sans);color:var(--ember-text);}
.inc-form .forminator-has_error .forminator-input{border-color:var(--ember-text);}
.inc-form .forminator-response-message{margin:0 0 16px;padding:14px 16px;border-radius:12px;font:500 15px/1.5 var(--sans);}
.inc-form .forminator-response-message:empty{display:none;}
.inc-form .forminator-success{background:#fff;border:1px solid rgba(20,20,20,.12);text-align:center;}
.inc-form .forminator-success p:first-child{font:700 26px/1.2 var(--head);letter-spacing:-.02em;margin-bottom:6px;}
.inc-form .forminator-error{background:#fff;border:1px solid var(--ember-text);color:var(--ember-text);}
/* submit: the big Ember button, centred */
.inc-form .forminator-row-last,.inc-form .forminator-row:has(.forminator-button-submit){justify-content:center;}
.inc-form .forminator-button-submit{display:inline-flex;align-items:center;gap:10px;margin:0 auto;padding:17px 32px;border:0;border-radius:999px;background:var(--ember-btn);color:#fff;font:600 16.5px/1 var(--sans);cursor:pointer;transition:transform .2s;}
.inc-form .forminator-button-submit:hover{transform:translateY(-1px);}
.inc-form .forminator-button-submit:focus-visible{outline:2px solid var(--ember);outline-offset:3px;}

/* submit centred on the real Forminator markup too */
.inc-form .forminator-field:has(.forminator-button-submit){align-items:center;}

/* Gated download pop-up (#get-<form>): wide. Left = what it is, in the colour of its type; right = the form on ivory. */
dialog.gate{width:min(920px,calc(100% - 32px));max-height:92vh;padding:0;border:0;border-radius:22px;overflow:hidden;background:var(--ivory);color:var(--ink);box-shadow:0 30px 80px -20px rgba(0,0,0,.6);}
dialog.gate[open]{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);animation:incGateIn .3s cubic-bezier(.2,0,0,1) both;}
dialog.gate::backdrop{background:rgba(20,20,20,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);}
@keyframes incGateIn{from{opacity:0;transform:translateY(12px) scale(.98);}}
/* soft spectrum per type (dark → light), with a gentle glow */
dialog.gate{--g-bg:linear-gradient(150deg,#26201C 0%,#161311 70%);--g-glow:rgba(232,65,26,.22);--g-label:#F08A63;--g-sub:rgba(255,255,255,.78);--g-fg:#fff;}
dialog.gate.tone-assessment{--g-bg:linear-gradient(150deg,#5A3D2D 0%,#3E2A1F 75%);--g-glow:rgba(240,138,99,.25);--g-label:#F7A784;--g-sub:rgba(255,255,255,.8);}
dialog.gate.tone-guide{--g-bg:linear-gradient(150deg,#A0583A 0%,#7E3F25 75%);--g-glow:rgba(255,214,190,.28);--g-label:#FFD3BC;--g-sub:rgba(255,255,255,.86);}
dialog.gate.tone-tool{--g-bg:linear-gradient(150deg,#F3EADC 0%,#E2D3BD 80%);--g-glow:rgba(232,65,26,.12);--g-label:#B8320F;--g-sub:#3a3836;--g-fg:#141414;}
.gate-info{position:relative;display:flex;flex-direction:column;justify-content:center;overflow-x:hidden;overflow-y:auto;padding:clamp(24px,3.5vw,38px);background:var(--g-bg);color:var(--g-fg);}
.gate-info::before{content:"";position:absolute;right:-30%;top:-40%;width:90%;height:90%;background:radial-gradient(closest-side,var(--g-glow),transparent);pointer-events:none;}
.gate-info > *{position:relative;}
.gate-k{margin:0 0 8px;font:600 11.5px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--g-label);}
.gate-title{margin:0 0 10px;font:700 clamp(24px,2.6vw,30px)/1.12 var(--head);letter-spacing:-.025em;color:inherit;}
.gate-desc{margin:0 0 14px;font:400 15px/1.55 var(--sans);color:var(--g-sub);}
.gate-inside{list-style:none;padding:0;margin:0 0 20px;}
.gate-inside li{position:relative;padding:5px 0 5px 20px;font:500 14px/1.45 var(--sans);color:var(--g-sub);}
.gate-inside li::before{content:"";position:absolute;left:0;top:13px;width:8px;height:2px;background:var(--g-label);}
.gate-pages{display:flex;gap:12px;align-items:flex-end;}
.gate-page{margin:0;width:42%;border-radius:6px;overflow:hidden;background:#fff;box-shadow:0 14px 30px -12px rgba(0,0,0,.55);}
.gate-page img{display:block;width:100%;height:auto;}
.gate-page:first-child{transform:rotate(-3deg);}
.gate-page:last-child:not(:first-child){transform:rotate(2deg) translateY(-6px);}
.gate-pages-cap{margin:10px 0 0;font:500 12px var(--sans);color:var(--g-sub);opacity:.85;}
.gate-form{position:relative;overflow:auto;padding:clamp(24px,3.5vw,38px);background:var(--ivory);}
.gate-close{position:absolute;top:14px;right:14px;z-index:2;width:40px;height:40px;border-radius:50%;border:1px solid rgba(20,20,20,.2);background:var(--ivory);font:400 22px/1 var(--sans);color:var(--ink);cursor:pointer;}
.gate-close:hover{background:var(--ink);color:#fff;}
.gate-form-title{margin:4px 48px 4px 0;font:700 20px/1.2 var(--head);letter-spacing:-.015em;}
.gate-text{margin:0 0 18px;font:400 14.5px/1.5 var(--sans);color:var(--ash);}
dialog.gate .forminator-row{flex-direction:column;gap:12px;}
dialog.gate .forminator-button-submit{width:100%;justify-content:center;}
dialog.gate .forminator-edit-module,dialog.gate a[href*="forminator-cform-wizard"]{display:none!important;}
/* phones: explanation first (shorter), then the form */
@media (max-width:760px){
  dialog.gate[open]{grid-template-columns:1fr;overflow:auto;}
  .gate-info,.gate-form{overflow:visible;}
  .gate-info{padding-top:26px;}
  .gate-info .gate-k,.gate-info .gate-title{padding-right:52px;}
  .gate-page{width:34%;}
  .gate-close{position:fixed;top:calc(4vh + 12px);right:calc(16px + 12px);}
}
/* after sending: the form side turns dark with our own thank-you (Forminator may hide its message) */
dialog.gate.is-sent .gate-form{background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;}
dialog.gate.is-sent .gate-form > :not(.gate-done):not(.gate-close){display:none!important;}
dialog.gate.is-sent .gate-close{background:transparent;border-color:rgba(255,255,255,.3);color:#fff;}
.gate-done{display:flex;flex-direction:column;align-items:center;text-align:center;padding:8px 4px;outline:none;animation:incGateIn .35s ease both;}
.gate-done .sent-icon{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:var(--ember-btn);color:#fff;margin-bottom:18px;box-shadow:0 14px 30px -12px rgba(208,58,20,.7);}
.gate-done-body p{margin:0 0 8px;font:400 16px/1.55 var(--sans);color:rgba(255,255,255,.75);}
.gate-done-body p:first-child{margin-bottom:10px;font:700 clamp(24px,3vw,30px)/1.15 var(--head);letter-spacing:-.025em;color:#fff;}
.gate-done-body a{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:16px 30px;border-radius:999px;background:var(--ember-btn);color:#fff;font:600 16.5px/1 var(--sans);text-decoration:none;transition:transform .2s;}
.gate-done-body a:hover{transform:translateY(-1px);}
@media (prefers-reduced-motion:reduce){dialog.gate[open],.gate-done{animation:none;}}

/* Consent: a real, visible tick box (not a pill) with its text beside it */
.inc-form .forminator-checkbox__wrapper{display:flex;gap:12px;align-items:flex-start;}
.inc-form .forminator-checkbox.forminator-consent{position:relative;display:inline-flex;flex:none;margin:1px 0 0;cursor:pointer;}
.inc-form .forminator-consent input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer;}
.inc-form .forminator-consent .forminator-checkbox-box{display:block!important;position:relative;width:22px;height:22px;border:1.5px solid rgba(20,20,20,.45);border-radius:6px;background:#F7F6EE;transition:background .2s,border-color .2s;}
.inc-form .forminator-consent input:checked + .forminator-checkbox-box{background:var(--ember-btn);border-color:var(--ember-btn);}
.inc-form .forminator-consent input:checked + .forminator-checkbox-box::after{content:"";position:absolute;left:6.5px;top:2.5px;width:6px;height:11px;border:solid #fff;border-width:0 2.2px 2.2px 0;transform:rotate(45deg);}
.inc-form .forminator-consent input:focus-visible + .forminator-checkbox-box{outline:2px solid var(--ember);outline-offset:2px;}
.inc-form .forminator-checkbox__label{font:400 14.5px/1.5 var(--sans);color:#3a3836;}
.inc-form .forminator-checkbox__label p{margin:0;}
.inc-form .forminator-checkbox__label a{color:var(--ember-text);border-bottom:1px solid currentColor;}
.gate-lead{margin:0 0 6px;font:600 14px/1.45 var(--sans);color:var(--g-fg);}
