/* Isolate the consent footer from uncontained theme floats (DotLife). */
/* GIM layout pattern, adapted to Marinou's navy, warm paper and gold. */
#marinou-consent{--mc-navy:#152c3f;--mc-paper:#faf7ef;--mc-gold:#cbb17a;--mc-line:#ffffff29;font:400 15px/1.5 Arial,Helvetica,sans-serif;color:var(--mc-paper);display:flow-root;clear:both;position:relative;z-index:2147483000}
#marinou-consent *,#marinou-consent *:before,#marinou-consent *:after{box-sizing:border-box}
#marinou-consent *{font-family:inherit;font-style:normal;text-transform:none;letter-spacing:normal}
#marinou-consent label{font:inherit}
#marinou-consent [hidden]{display:none!important}
#marinou-consent button,#marinou-consent input{font:inherit}
#marinou-consent button{cursor:pointer;text-transform:none;letter-spacing:0;min-height:46px;border-radius:8px;padding:12px 18px;line-height:1.35;font-weight:700;transition:background .15s,color .15s}
#marinou-consent :is(button,a,input):focus-visible{outline:3px solid #ead097;outline-offset:4px}
#marinou-consent .mc-footer{padding:12px 24px;background:#f7f5ef;border-top:1px solid #ded8ca;text-align:right}
#marinou-consent .mc-opener{display:inline-flex;align-items:center;gap:8px;padding:8px 4px;min-height:44px;border:0;background:transparent;color:#254458;font-size:13px;font-weight:400;text-decoration:underline;text-underline-offset:4px}
#marinou-consent .mc-opener:hover{color:#74561f;background:transparent}
#marinou-consent .mc-opener svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;flex:none}
#marinou-consent .mc-panel{position:fixed;inset:auto 0 0;width:100%;margin:0;border:0;border-top:1px solid #d0ba875c;background:var(--mc-navy);color:var(--mc-paper);box-shadow:0 -10px 40px #12233533;max-height:88dvh;overflow:auto;padding:26px 32px 22px;overscroll-behavior:contain}
#marinou-consent .mc-shell{position:relative;max-width:1400px;margin:auto;display:grid;grid-template-columns:160px minmax(0,1fr) 230px;gap:16px 30px;align-items:center;text-align:left}
#marinou-consent .mc-brand{grid-column:1;grid-row:1/4;align-self:center;border-right:1px solid var(--mc-line);padding:10px 22px 10px 0;color:#fff}
#marinou-consent .mc-brand>span{display:block;font:400 13px/1.3 Georgia,serif;letter-spacing:.03em;color:#e7e1d2}
#marinou-consent .mc-brand strong{display:block;font:400 34px/1.15 Georgia,serif;letter-spacing:-.04em;margin:4px 0}
#marinou-consent .mc-brand-dot{color:var(--mc-gold)}
#marinou-consent .mc-brand small{display:block;font:700 10px/1.4 Arial,sans-serif;letter-spacing:.3em;color:var(--mc-gold);margin-top:10px}
#marinou-consent .mc-copy{grid-column:2;min-width:0}
#marinou-consent .mc-eyebrow{display:block;color:var(--mc-gold);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px}
#marinou-consent h2{font:700 21px/1.3 Arial,Helvetica,sans-serif;color:var(--mc-paper);margin:0 0 9px}
#marinou-consent p{font:inherit;color:#dbe2e5;margin:0;padding:0;max-width:none}
#marinou-consent .mc-copy p{font-size:14px;line-height:1.6;max-width:800px}
#marinou-consent .mc-categories{grid-column:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#marinou-consent .mc-category{display:block;margin:0;padding:11px 12px;border:1px solid var(--mc-line);border-radius:9px;background:#ffffff05;font-size:13px;cursor:pointer}
#marinou-consent .mc-category-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:28px}
#marinou-consent .mc-category strong{font-size:13px;color:var(--mc-paper);font-weight:700}
#marinou-consent .mc-necessary{cursor:default}
#marinou-consent .mc-always{font-size:10px;color:#e2c98f;white-space:nowrap}
#marinou-consent input[type=checkbox]{appearance:none;-webkit-appearance:none;display:block;position:relative;flex:none;width:44px;height:26px;margin:0;border:1px solid #91a0ab;border-radius:20px;background:#657786;cursor:pointer;transition:background .15s}
#marinou-consent input[type=checkbox]:before{content:'';position:absolute;width:18px;height:18px;border-radius:50%;top:3px;left:3px;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .15s}
#marinou-consent input[type=checkbox]:checked{background:#b3975c;border-color:#e2c98f}
#marinou-consent input[type=checkbox]:checked:before{transform:translateX(18px)}
#marinou-consent .mc-description{display:none;font-size:14px;line-height:1.6;color:#dbe2e5;margin-top:9px}
#marinou-consent .mc-actions{grid-column:3;grid-row:1/4;display:flex;flex-direction:column;gap:9px;align-self:center;width:100%}
#marinou-consent .mc-actions button{width:100%;border:1px solid #d6c299;background:transparent;color:var(--mc-paper);font-size:14px}
#marinou-consent .mc-actions button:hover{background:#ffffff12}
#marinou-consent .mc-actions [data-choice=all],#marinou-consent .mc-actions [data-choice=save]{background:#d6c299;color:#172c3c;border-color:#d6c299}
#marinou-consent .mc-actions :is([data-choice=all],[data-choice=save]):hover{background:#e4d3af}
#marinou-consent [data-view=banner]:not([data-dirty]) .mc-save{display:none}
#marinou-consent .mc-meta{grid-column:2;min-width:0}
#marinou-consent .mc-meta>p:first-child{font-size:11px;color:#bfcbd2;line-height:1.5}
#marinou-consent .mc-links{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:4px}
#marinou-consent .mc-links a,#marinou-consent .mc-details{font-size:12px;line-height:1.4;color:#e4ce9f;text-decoration:underline;text-underline-offset:3px;min-height:30px;display:inline-flex;align-items:center}
#marinou-consent .mc-details{border:0;background:transparent;padding:4px 0;gap:7px}
#marinou-consent .mc-details:hover{color:#fff;background:transparent}
#marinou-consent .mc-close{display:none}
#marinou-consent [role=status]:empty{display:none}
#marinou-consent [role=status]{font-size:13px;margin-top:10px;color:#fff}
#marinou-consent .mc-retired{padding:12px 14px;border-left:3px solid var(--mc-gold);background:#ffffff0a;font-size:13px;margin-top:14px}
/* Revisit/settings opens a contained dialog, never another automatic banner. */
#marinou-consent:has([data-view=settings]:not([hidden])):before{content:'';position:fixed;inset:0;background:#102436a8;backdrop-filter:blur(3px)}
#marinou-consent [data-view=settings]{inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(760px,calc(100vw - 40px));max-height:calc(100dvh - 48px);border:1px solid #74818c;border-radius:18px;padding:30px;box-shadow:0 24px 90px #0005;overflow:hidden}
#marinou-consent [data-view=settings] .mc-shell{display:flex;flex-direction:column;align-items:stretch;gap:22px;max-height:calc(100dvh - 110px)}
#marinou-consent [data-view=settings] :is(.mc-brand,.mc-copy,.mc-actions,.mc-meta){flex-shrink:0}
#marinou-consent [data-view=settings] .mc-brand{border:0;padding:0 50px 0 0;display:flex;align-items:baseline;gap:7px;align-self:stretch}
#marinou-consent [data-view=settings] .mc-brand>span{font-size:15px}
#marinou-consent [data-view=settings] .mc-brand strong{font-size:26px;margin:0}
#marinou-consent [data-view=settings] .mc-brand small{margin:0 0 0 8px;font-size:9px}
#marinou-consent [data-view=settings] .mc-close{position:absolute;display:block;right:-5px;top:-8px;min-height:40px;width:40px;height:40px;padding:0;border:1px solid #81909c;border-radius:50%;font:400 26px/1 Arial,sans-serif;background:transparent;color:#fff}
#marinou-consent [data-view=settings] .mc-close:hover{background:#ffffff12}
#marinou-consent [data-view=settings] h2{font-size:25px;margin-bottom:12px}
#marinou-consent [data-view=settings] .mc-copy p{font-size:15px}
#marinou-consent [data-view=settings] .mc-categories{display:flex;flex-direction:column;gap:12px;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-color:#91a0ab #1e3b50}
#marinou-consent [data-view=settings] .mc-category{padding:16px 18px;flex-shrink:0}
#marinou-consent [data-view=settings] .mc-category strong{font-size:15px}
#marinou-consent [data-view=settings] .mc-always{font-size:12px}
#marinou-consent [data-view=settings] .mc-description{display:block}
#marinou-consent [data-view=settings] .mc-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:20px;border-top:1px solid var(--mc-line)}
#marinou-consent [data-view=settings] .mc-actions button{padding:12px 9px;font-size:13px}
#marinou-consent [data-view=settings] .mc-meta{margin-top:-8px}
#marinou-consent [data-view=settings] .mc-details{display:none}
@media(max-width:1100px){#marinou-consent .mc-shell{grid-template-columns:120px minmax(0,1fr) 190px;gap:14px 22px}#marinou-consent .mc-brand{padding-right:15px}#marinou-consent .mc-brand strong{font-size:29px}#marinou-consent .mc-categories{gap:8px}#marinou-consent .mc-category{padding:9px}#marinou-consent .mc-category strong{font-size:12px}#marinou-consent .mc-category-heading{flex-wrap:wrap}#marinou-consent .mc-panel{padding:22px 24px}}
@media(max-width:767px){
  /* Compact initial banner; keep full context in the settings dialog. */
  #marinou-consent [data-view=banner] .mc-brand,
  #marinou-consent [data-view=banner] .mc-copy>p,
  #marinou-consent [data-view=banner] .mc-meta>p:first-child{display:none}
  #marinou-consent .mc-panel{padding:20px 20px calc(18px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;max-height:88dvh}
  #marinou-consent .mc-shell{display:flex;flex-direction:column;align-items:stretch;gap:15px}
  #marinou-consent .mc-brand{display:flex;align-items:baseline;gap:6px;border:0;padding:0;align-self:flex-start}
  #marinou-consent .mc-brand>span{font-size:12px}#marinou-consent .mc-brand strong{font-size:24px;margin:0}
  #marinou-consent .mc-brand small{font-size:8px;letter-spacing:.18em;margin:0 0 0 6px}
  #marinou-consent .mc-eyebrow{display:none}#marinou-consent h2{font-size:20px;margin-bottom:8px}
  #marinou-consent .mc-copy p{font-size:13px;line-height:1.55}
  #marinou-consent .mc-categories{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  #marinou-consent .mc-necessary{grid-column:1/-1;border:0;background:transparent;padding:0 1px}
  #marinou-consent .mc-necessary .mc-category-heading{min-height:20px}
  #marinou-consent .mc-category{padding:10px}
  #marinou-consent .mc-category strong{font-size:12px}
  #marinou-consent .mc-category-heading{flex-wrap:nowrap;gap:6px}
  #marinou-consent .mc-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}
  #marinou-consent .mc-actions button{font-size:12px;padding:12px 7px;min-height:46px}
  #marinou-consent .mc-actions .mc-save{grid-column:1/-1}
  #marinou-consent .mc-meta>p:first-child{font-size:11px;line-height:1.6}
  #marinou-consent .mc-links{justify-content:space-between;gap:8px;margin-top:6px}
  #marinou-consent .mc-links a,#marinou-consent .mc-details{min-height:36px;font-size:11px}
  #marinou-consent .mc-footer{padding:8px 18px}
  #marinou-consent [data-view=settings]{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:16px;padding:22px 18px}
  #marinou-consent [data-view=settings] .mc-shell{gap:18px;max-height:calc(100dvh - 70px)}
  #marinou-consent [data-view=settings] .mc-brand{gap:5px;padding-right:33px;flex-wrap:wrap;row-gap:0}
  #marinou-consent [data-view=settings] .mc-brand>span{font-size:12px}
  #marinou-consent [data-view=settings] .mc-brand strong{font-size:22px}
  #marinou-consent [data-view=settings] .mc-brand small{font-size:8px;margin-left:3px}
  #marinou-consent [data-view=settings] .mc-close{right:-2px;top:-5px}
  #marinou-consent [data-view=settings] h2{font-size:22px}
  #marinou-consent [data-view=settings] .mc-copy p{font-size:13px}
  #marinou-consent [data-view=settings] .mc-category{padding:13px 14px}
  #marinou-consent [data-view=settings] .mc-category strong{font-size:14px}
  #marinou-consent [data-view=settings] .mc-description{font-size:13px}
  #marinou-consent [data-view=settings] .mc-actions{grid-template-columns:1fr 1fr;gap:8px;padding-top:16px}
  #marinou-consent [data-view=settings] .mc-actions button{font-size:12px;min-height:46px}
  #marinou-consent [data-view=settings] .mc-actions .mc-save{grid-column:1/-1}
}
@media(prefers-reduced-motion:reduce){#marinou-consent button,#marinou-consent input,#marinou-consent input:before{transition:none}}
