/* fr_rinalda — site.css (v1.4, clean rewrite).
   Same visuals as rinalda-medium.com (starry background, portrait panel, parchment pages, red form header, image
   buttons) rebuilt on a fluid grid: no fixed heights, no inner scrollbars, panels grow with their content, one
   column under 900 px with the portrait as a banner. Class names of the original markup are kept. */
:root{--rn-ink:#02080a;--rn-text:#1a1a1a;--rn-muted:#5c5c5c;--rn-pink:#9a1951;--rn-gold:#d7bc6c;--rn-link:#4d658d;
      --rn-serif:Georgia,"Times New Roman",Times,serif;--rn-sans:"Myriad Pro",Arial,Helvetica,sans-serif;
      /* shared names used by the support-thread partial */
      --em-ink:#02080a;--em-text:#1a1a1a;--em-muted:#5c5c5c;--em-gold:#d7bc6c;--em-gold-deep:#b8924a;--em-aubergine:#9a1951;--em-paper:#fff9fe;--em-paper-2:#f6eef3;--font-heading:Georgia,serif;--font-accent:"Myriad Pro",Arial,Helvetica,sans-serif;--font-body:Georgia,serif;--radius-sm:4px;--error-color:#c0392b;--accent-glow:rgba(215,188,108,.35);--success-bg:#eef8f0;--success-border:#7fb98a;--success-color:#1f5e33}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#02080a url(../img/background.jpg) repeat-x center top;color:var(--rn-text);font-family:var(--rn-serif);font-size:16px;line-height:1.45}
img{max-width:100%;height:auto}
a{color:var(--rn-pink)}
.container{max-width:1072px;margin:0 auto}

/* ---------- menu ---------- */
.menu{position:relative;z-index:5;padding:17px 0 0 93px}
.menuTemplate3{display:flex;align-items:center;list-style:none;margin:0;padding:0;height:36px;font-family:Arial,Helvetica,sans-serif}
.menuTemplate3 li{margin:0 13px 0 35px}
.menuTemplate3 a{display:inline-block;padding:0 30px;line-height:36px;font-size:12px;color:#fff;text-decoration:none}
.menuTemplate3 li:hover a{background:url(../img/selection-menu.jpg) center/cover}
.menuTemplate3 li.separator{width:0;height:20px;margin:0;border-left:1px solid #aaa}
.rn-nav-toggle{display:none}

/* ---------- page body: portrait background + content column ---------- */
.corps_index{position:relative;margin-top:-53px;min-height:1200px;padding:0 0 30px;background:url(../img/arriere-plan.jpg) no-repeat left top/963px auto}
.rn-portrait{display:none}
.global{display:grid;grid-template-columns:292px minmax(0,1fr) 118px;align-content:start;padding-top:53px;min-height:1150px}
.global > *{grid-column:2}

/* titles (the glowing png headings) */
.titre_image,.titre_image_2,.titre_image_conditions,.titre_image_faq,.titre_image_voyance{text-align:center;margin:0 0 14px}
.titre_image{margin-top:95px;min-height:40px}.titre_image_2{margin-top:60px}.titre_image_conditions{margin-top:60px}.titre_image_faq{margin-top:95px}.titre_image_voyance{margin-top:0;min-height:0}
.titre_image img{max-height:145px}.titre_image_2 img{max-height:229px}.titre_image_conditions img{max-height:104px}.titre_image_faq img{max-height:86px}

/* parchment panels */
.content,.content_2,.content_conditions,.content_faq,.content_thanks{background:#fff;border:6px solid #d6d0ff;box-shadow:0 0 18px rgba(0,0,0,.45);padding:28px 41px 34px;min-height:420px;margin-top:10px}
.content_2{margin-top:40px}
.divRinaldaContent p,.divBoutiqueContent p,.divTermsContent p{text-align:justify;margin:0 0 12px}
.divBoutiqueContent{padding-top:12px}
.divRinaldaContent h3,.divRinaldaContent h4{margin:18px 0 8px}
.itWhite{margin-top:28px;font-size:20px;letter-spacing:-.5px;font-weight:bold}
.nQuote{font-style:italic;margin-bottom:4px;text-align:justify}
.tQuote{margin:0 0 30px;font-weight:bold;font-size:20px}
.content_conditions a{color:#000}

/* ---------- the free-reading form ---------- */
.content_voyance{position:relative;margin-top:150px;background:#fff url(../img/form-header.jpg) no-repeat center top/100% auto;box-shadow:0 0 18px rgba(0,0,0,.45);padding:calc(8% + 24px) 20px 30px 40px}
.gratuit{position:absolute;top:-14px;right:22px;height:79px;width:auto}
.divForm{color:#000;font-size:16px}
.divForm p{margin:0;padding:3px 0}
.divForm label{cursor:pointer}
.pTitleChoices{font-size:18px;font-weight:bold;margin:0 0 15px!important;text-align:left}
#choices{margin:0 0 6px 30px}
.pChoices{display:flex;align-items:flex-start;gap:10px;margin:0 0 8px!important}
.pChoices input{margin:4px 0 0}
.separator_form{display:block;width:78%;margin:14px 0 8px 18px}
.pAsterisc{color:#441b03;font-size:13px;margin:4px 0 10px!important}
.spImportant{font-weight:bold;font-size:18px}
.spBirth{display:block;margin-top:8px!important}
.pBirth select{margin:0 10px 0 2px}
.pTitle{margin-top:10px!important}
.pTitle label{margin-right:10px}
.pTitle input{margin:0 4px 0 0;vertical-align:middle}
.pName,.pFirstName,.pEmail,.pConfEmail{display:flex;align-items:center;gap:10px;margin-top:6px!important}
.pName span,.pFirstName span,.pEmail span,.pConfEmail span{flex:0 0 290px}
.pName input,.pFirstName input,.pEmail input,.pConfEmail input{flex:1 1 auto;max-width:300px;font-size:16px;padding:4px 6px;border:1px solid #999;background:#fff;box-shadow:0 0 5px #958187}
.divForm .rn-locked{background:#f3ede4;border-style:dashed;color:#333}
select.shadow{box-shadow:0 0 5px #958187;font-size:15px}
.rn-optins{margin:8px 0 0 4px;border-collapse:collapse}
.rn-optins td{padding:4px 6px;vertical-align:top}
.rn-optins .pOptin{display:block;max-width:590px;font-size:14px;line-height:1.4}
.rn-req{color:red;font-style:normal}
.rn-muted{color:#555;font-weight:normal;font-size:14px}
.rn-submit{text-align:center;margin-top:22px}
.rn-imgbtn{background:none;border:0;padding:0;cursor:pointer}
.rn-imgbtn img{display:inline-block}
.rn-form-error{margin:14px 0 0;padding:10px 14px;border:2px solid #c98a8a;background:#f8e5e5;color:#7c1e24;font-weight:bold;font-size:15px}
.rn-form-error[hidden]{display:none}

/* home / thanks (same panel as the form) */
.rn-home .rn-home-text{font-size:17px;line-height:1.5;color:#000;padding:0 20px 10px 0}
.tYellowSpecial{font-family:var(--rn-serif);font-size:30px;letter-spacing:1px;color:#d7bc6c;text-align:center;text-shadow:0 0 10px #000;margin:0 0 4px}
.itWhiteSpecial{font-family:var(--rn-serif);font-size:24px;letter-spacing:1px;text-align:center;margin:0 0 22px}
.rn-center{text-align:center}
.rn-small{font-size:14px}
.rn-steps{margin:10px 0 0;padding-left:22px;font-size:17px;line-height:1.5}
.rn-steps li{margin:8px 0}

/* ---------- FAQ ---------- */
.faq_add{padding:0 0 16px}
.faq_add > p{margin:0 0 12px;font-size:15px}
.titre_petit{font-size:15px;font-weight:bold;color:var(--rn-ink);margin:22px 0 8px}
.rn-faq{margin:0 0 6px 18px;border-bottom:1px solid #eee}
.rn-faq summary{list-style:none;cursor:pointer;color:var(--rn-link);font-weight:bold;font-size:14px;padding:6px 0}
.rn-faq summary::-webkit-details-marker{display:none}
.rn-faq summary::before{content:"▸ ";color:var(--rn-pink)}
.rn-faq[open] summary::before{content:"▾ "}
.rn-faq > div{margin:0 0 10px 18px;font-size:14px;line-height:1.5;color:var(--rn-ink)}
.rn-faq ul{margin:6px 0;padding-left:20px}
.rn-pay{position:relative;top:8px;height:26px;width:auto}

/* ---------- contact / support form ---------- */
.rn-h3{margin:0 0 10px;font-size:20px;font-weight:bold;letter-spacing:-.5px}
.rn-contact-inner > p{margin:0 0 14px}
.em-form .contact-form-group{margin-bottom:14px}
.em-form .contact-form-label{display:block;font-weight:bold;font-size:15px;margin-bottom:4px}
.em-form .required{color:var(--error-color)}
.em-form .contact-form-input,.em-form .contact-form-select,.em-form .contact-form-textarea{width:100%;padding:9px 11px;border:1px solid #999;background:#fff;font:inherit;font-size:15px;color:var(--rn-text);box-shadow:0 0 5px #958187}
.em-form .contact-form-input:focus,.em-form .contact-form-select:focus,.em-form .contact-form-textarea:focus{outline:none;border-color:var(--rn-pink);box-shadow:0 0 0 3px rgba(154,25,81,.2)}
.em-form .contact-form-textarea{min-height:120px;resize:vertical}
.em-form .conditional-field{display:none}
.em-form .conditional-field.show{display:block}
.em-form .info-box{background:#f6eef3;border-left:3px solid var(--rn-pink);padding:10px 14px;font-size:14px}
.em-form .info-box p{margin:0}
.em-form small{display:block;color:var(--rn-muted);font-size:12px;margin-top:4px}
.em-form .contact-form-input.is-readonly{background:#f3ede4;border-style:dashed}
.em-btn{display:inline-block;background:linear-gradient(180deg,#b3245f,#8a1448);color:#fff;text-decoration:none!important;font-family:var(--rn-sans);font-weight:bold;font-size:16px;padding:11px 26px;border-radius:4px;border:0;cursor:pointer}
.em-btn:hover{filter:brightness(1.08)}
.faq_add .em-btn{width:139px;height:40px;padding:0;border-radius:0;background:url(../img/btn-envoyer.jpg) no-repeat center/139px 40px;color:transparent;font-size:0}
.em-success{margin:0 0 14px;padding:12px 16px;border:1px solid #7fb98a;border-left:4px solid #2e9e5b;background:#eef8f0;color:#1f5e33;font-size:15px}
.em-success a{margin-left:10px;font-weight:bold;color:#1f5e33}
.em-error{margin:0 0 14px;padding:12px 16px;border:1px solid #d9a3a3;border-left:4px solid #c0392b;background:#fbeeee;color:#7a1f16;font-size:15px}
.em-contact-aside{margin-top:16px;font-size:14px}

/* ---------- footer ---------- */
.footer{clear:both;grid-column:1 / -1;text-align:center;padding:40px 0 16px}
.menu_footer{display:inline-flex;align-items:center;list-style:none;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif}
.menu_footer li{margin:0 13px}
.menu_footer a{display:inline-block;padding:0 18px;line-height:30px;font-size:12px;color:#fff;text-decoration:none}
.menu_footer a:hover,.menu_footer a.active_2{text-decoration:underline}
.menu_footer li.separator{width:0;height:20px;margin:0;border-left:1px solid #aaa}
.rn-copy{margin:8px auto 0;max-width:760px;padding:0 20px;color:#9a9a9a;font-size:11px;line-height:1.5;font-family:Arial,Helvetica,sans-serif}

/* ---------- tablet / mobile ---------- */
@media (max-width:1100px){
  .container{padding:0 12px}
  .menu{padding-left:0}
  .menuTemplate3{justify-content:center}
  .menuTemplate3 li{margin:0 8px}
  .menuTemplate3 a{padding:0 16px}
  .corps_index{background-size:min(963px,86%) auto}
  .global{grid-template-columns:27% minmax(0,1fr) 4%}
}
@media (max-width:900px){
  .corps_index{background:none;min-height:0;margin-top:0;padding-bottom:10px}
  .rn-portrait{display:block;width:min(260px,70%);margin:18px auto 0;box-shadow:0 0 24px rgba(0,0,0,.6)}
  .global{display:block;padding-top:0}
  .titre_image,.titre_image_2,.titre_image_conditions,.titre_image_faq{margin-top:22px}
  .titre_image img,.titre_image_2 img,.titre_image_conditions img,.titre_image_faq img{max-height:120px}
  .content,.content_2,.content_conditions,.content_faq,.content_thanks{padding:18px 14px 24px;border-width:4px;min-height:0;margin-top:14px}
  .content_voyance{margin-top:28px;padding:calc(8% + 20px) 14px 24px}
  .gratuit{height:60px;top:-10px;right:10px}
  #choices{margin-left:4px}
  .separator_form{width:100%;margin:12px 0 8px}
  .pName,.pFirstName,.pEmail,.pConfEmail{flex-direction:column;align-items:stretch;gap:4px}
  .pName span,.pFirstName span,.pEmail span,.pConfEmail span{flex:none}
  .pName input,.pFirstName input,.pEmail input,.pConfEmail input{max-width:none}
  .pBirth select{margin:4px 8px 4px 0}
  .rn-optins .pOptin{max-width:none}
  .rn-submit img{max-width:100%}
  .footer{padding:26px 0 12px}
  .menu_footer{flex-wrap:wrap;justify-content:center}
  .menu_footer li{margin:2px 4px}
  .menu_footer a{padding:0 10px}
}
@media (max-width:640px){
  .rn-nav-toggle{display:block;margin:12px auto 0;background:var(--rn-pink);color:#fff;border:0;padding:8px 18px;font-size:14px;border-radius:4px;font-family:Arial,Helvetica,sans-serif}
  .menuTemplate3{display:none;flex-direction:column;height:auto;margin-top:8px;background:rgba(2,8,10,.85);border-radius:6px}
  .menu.open .menuTemplate3{display:flex}
  .menuTemplate3 li{margin:0}
  .menuTemplate3 li.separator{display:none}
  .menuTemplate3 a{display:block;padding:11px 10px;line-height:1.3;font-size:14px}
  .menuTemplate3 li:hover a{background:rgba(154,25,81,.5)}
  .tYellowSpecial{font-size:24px}.itWhiteSpecial{font-size:19px}
}
