/* =========================================================
   LAU-TAM PRIVACY POLICY
   File: css/privacy_policy.css
   Scope: privacy_policy.html only.
   ========================================================= */

:root{
  --privacy-navy:#07192f;
  --privacy-navy-dark:#00050e;
  --privacy-blue:#0b2c56;
  --privacy-gold:#8a6a32;
  --privacy-ink:#101722;
  --privacy-text:#252a34;
  --privacy-muted:#667085;
  --privacy-soft:#f4f1ec;
  --privacy-bg:#f6f7f9;
  --privacy-white:#ffffff;
  --privacy-line:rgba(7,25,47,.12);
  --privacy-shadow:0 24px 72px rgba(0,5,14,.10);
  --privacy-font-main:"Equity B", Georgia, "Times New Roman", serif;
  --privacy-font-body:var(--privacy-font-main);
  --privacy-font-ui:var(--privacy-font-main);
  --privacy-font-display:var(--privacy-font-main);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body.privacy-policy-page{margin:0;background:var(--privacy-bg);color:var(--privacy-ink);}

.privacy-page{
  min-height:100vh;
  background:
    radial-gradient(circle at 8% 0%, rgba(12,45,87,.11), transparent 30rem),
    linear-gradient(180deg,#fff 0%,#f6f7f9 44%,#fff 100%);
}

.privacy-hero{
  position:relative;
  min-height:64svh;
  display:flex;
  align-items:flex-end;
  padding:9rem var(--page-pad,6vw) 5.75rem;
  overflow:hidden;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(0,5,14,.84) 0%,rgba(7,25,47,.68) 48%,rgba(0,5,14,.48) 100%),
    radial-gradient(circle at 82% 18%, rgba(201,157,85,.18), transparent 26rem),
    #00050e;
}

.privacy-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background-image:radial-gradient(rgba(255,255,255,.055) 1px, transparent 1px);
  background-size:28px 28px;
  opacity:.30;
  mix-blend-mode:screen;
  pointer-events:none;
}

.privacy-hero::after{
  content:"";
  position:absolute;
  left:var(--page-pad,6vw);
  right:var(--page-pad,6vw);
  bottom:0;
  z-index:1;
  height:1px;
  background:linear-gradient(90deg, rgba(201,157,85,.86), transparent);
  pointer-events:none;
}

.privacy-hero-inner{position:relative;z-index:2;width:min(980px,100%);}

.privacy-kicker{
  margin:0 0 1.25rem;
  color:var(--privacy-gold);
  font-family:var(--privacy-font-ui);
  font-size:.72rem;
  font-weight:700;
  line-height:1;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.privacy-hero h1{
  max-width:900px;
  margin:0;
  color:#fff;
  font-family:var(--privacy-font-display);
  font-size:clamp(3.3rem,7vw,7rem);
  font-weight:400;
  line-height:.9;
  letter-spacing:-.058em;
  text-shadow:0 18px 52px rgba(0,5,14,.48);
}

.privacy-hero-text{
  max-width:760px;
  margin:2rem 0 0;
  color:rgba(255,255,255,.80);
  font-family:var(--privacy-font-ui);
  font-size:clamp(1rem,1.35vw,1.18rem);
  font-weight:400;
  line-height:1.72;
}

.privacy-date{
  display:block;
  width:auto;
  max-width:100%;
  margin:2rem 0 0;
  padding:0;
  border:0;
  background:transparent;
  color:rgba(255,255,255,.72);
  font-family:var(--privacy-font-ui);
  font-size:.76rem;
  font-weight:600;
  line-height:1.35;
  letter-spacing:.04em;
  backdrop-filter:none;
}

.privacy-content{
  position:relative;
  padding:clamp(4.5rem,7vw,6.5rem) var(--page-pad,6vw) clamp(5rem,8vw,7rem);
  background:var(--privacy-bg);
}

.privacy-shell{
  width:100%;
  max-width:1240px;
  margin:0 auto;
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:2.5rem;
  align-items:start;
}

.privacy-index{
  position:sticky !important;
  top:7rem;
  align-self:start;
  max-height:calc(100svh - 3rem);
  overflow-y:auto;
  overscroll-behavior:contain;
  padding:1.45rem;
  border:1px solid var(--privacy-line);
  background:rgba(255,255,255,.82);
  box-shadow:0 20px 56px rgba(0,5,14,.07);
  backdrop-filter:blur(14px);
  font-family:var(--privacy-font-ui);
  scrollbar-width:thin;
}

.privacy-index-title{
  margin:0 0 1rem;
  color:var(--privacy-navy);
  font-size:.68rem;
  font-weight:700;
  line-height:1;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.privacy-index nav{display:grid;gap:0;}

.privacy-index a{
  display:block;
  padding:.72rem 0;
  border-bottom:1px solid rgba(7,25,47,.075);
  color:#667085;
  font-size:.86rem;
  font-weight:400;
  line-height:1.35;
  text-decoration:none;
  transition:none;
}


.privacy-index a:last-child{border-bottom:0;}

.privacy-index a:hover,
.privacy-index a:focus-visible{
  color:#667085;
  font-weight:400;
  padding-left:0;
  outline:none;
  border-color:rgba(7,25,47,.075);
}

.privacy-index a.is-active{
  color:var(--privacy-navy);
  font-weight:700;
  padding-left:0;
  border-color:rgba(7,25,47,.075);
}

.privacy-index a.is-active:hover,
.privacy-index a.is-active:focus-visible{
  color:var(--privacy-navy);
  font-weight:700;
}

.privacy-card{
  width:100%;
  padding:clamp(2rem,4vw,4.25rem);
  border:1px solid var(--privacy-line);
  background:rgba(255,255,255,.94);
  box-shadow:var(--privacy-shadow);
}

.privacy-section{
  scroll-margin-top:2rem;
  padding:0 0 2.75rem;
  margin:0 0 2.75rem;
  border-bottom:1px solid rgba(7,25,47,.10);
}

.privacy-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0;}

.privacy-section h2{
  margin:0 0 1.15rem;
  color:var(--privacy-navy-dark);
  font-family:var(--privacy-font-ui);
  font-size:clamp(1.35rem,2vw,2rem);
  font-weight:700;
  line-height:1.16;
  letter-spacing:-.035em;
}

.privacy-section p{
  margin:0 0 1rem;
  color:var(--privacy-text);
  font-family:var(--privacy-font-body);
  font-size:1.08rem;
  font-weight:400;
  line-height:1.74;
}

.privacy-section p:last-child{margin-bottom:0;}
.privacy-section ul{margin:1.1rem 0 0;padding-left:1.15rem;}

.privacy-section li{
  margin:0 0 .72rem;
  padding-left:.22rem;
  color:var(--privacy-text);
  font-family:var(--privacy-font-body);
  font-size:1.08rem;
  font-weight:400;
  line-height:1.74;
}

.privacy-section li:last-child{margin-bottom:0;}
.privacy-section li::marker{color:var(--privacy-text);}

.privacy-highlight{
  margin:1.35rem 0 0;
  padding:0;
  border:0;
  background:transparent;
}

.privacy-highlight p{margin:0 0 .58rem;color:var(--privacy-text);line-height:1.58;}
.privacy-highlight p:last-child{margin-bottom:0;}
.privacy-highlight strong{color:var(--privacy-ink);font-family:var(--privacy-font-ui);font-weight:700;}

.privacy-highlight a,.privacy-section a{
  color:var(--privacy-ink);
  font-weight:700;
  text-decoration:none;
  border-bottom:1px solid rgba(16,23,34,.22);
}

.privacy-highlight a:hover,.privacy-highlight a:focus-visible,.privacy-section a:hover,.privacy-section a:focus-visible{color:var(--privacy-ink);border-color:rgba(16,23,34,.46);outline:none;}
.privacy-email-box{display:block;width:auto;min-width:0;margin:.5rem 0 1.35rem;}

.privacy-provider-table{width:100%;margin-top:1.5rem;overflow-x:auto;border:1px solid rgba(7,25,47,.10);background:#fff;}
.privacy-provider-table table{width:100%;min-width:620px;border-collapse:collapse;background:#fff;}
.privacy-provider-table th,.privacy-provider-table td{padding:1rem;border-bottom:1px solid rgba(7,25,47,.08);color:var(--privacy-text);font-family:var(--privacy-font-ui);font-size:.92rem;line-height:1.45;text-align:left;vertical-align:top;}
.privacy-provider-table th{color:var(--privacy-ink);font-weight:700;background:#fff;}
.privacy-provider-table tr:last-child td{border-bottom:0;}

.privacy-closing{padding:0;margin:0;border:0;background:transparent;}
.privacy-closing p{margin:0;color:var(--privacy-text);font-family:var(--privacy-font-body);font-size:1.08rem;line-height:1.72;}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .72s ease,transform .72s ease;}
.reveal.is-visible{opacity:1;transform:translateY(0);}

@media(max-width:1180px){.privacy-shell{grid-template-columns:250px minmax(0,1fr);gap:2rem;}}
@media(max-width:980px){.privacy-hero{min-height:54svh;padding:8rem var(--page-pad,5vw) 4.75rem;}.privacy-content{padding:4rem var(--page-pad,5vw) 5rem;}.privacy-shell{grid-template-columns:1fr;gap:1.5rem;}.privacy-index{position:relative!important;top:auto;max-height:none;overflow:visible;}.privacy-index nav{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.25rem;}.privacy-card{padding:2rem;}}
@media(max-width:760px){.privacy-index nav{grid-template-columns:1fr;}}
@media(max-width:640px){.privacy-hero{min-height:auto;padding:7rem 1.25rem 4rem;}.privacy-hero h1{font-size:clamp(2.85rem,16vw,4.7rem);letter-spacing:-.052em;}.privacy-hero-text{margin-top:1.5rem;font-size:.98rem;line-height:1.68;}.privacy-date{font-size:.72rem;}.privacy-content{padding:3rem 1.25rem 4.25rem;}.privacy-index{padding:1.15rem;}.privacy-index a{font-size:.84rem;}.privacy-card{padding:1.35rem;}.privacy-section{padding-bottom:2.25rem;margin-bottom:2.25rem;}.privacy-section h2{font-size:1.32rem;}.privacy-section p,.privacy-section li{font-size:1.02rem;line-height:1.72;}.privacy-email-box{width:100%;min-width:0;}.privacy-provider-table table{min-width:560px;}.privacy-provider-table th,.privacy-provider-table td{padding:.85rem;font-size:.86rem;}.privacy-closing{padding:0;}.privacy-closing p{font-size:1.02rem;}}

@media print{body.privacy-policy-page{background:#fff!important;color:#000!important;}#layout-sidebar,#layout-menu,#layout-email-modal,#layout-footer,.privacy-hero,.privacy-index{display:none!important;}.privacy-content{padding:0!important;background:#fff!important;}.privacy-shell{display:block!important;max-width:none!important;}.privacy-card{padding:0!important;border:0!important;box-shadow:none!important;background:#fff!important;}.privacy-section{page-break-inside:avoid;}.privacy-section h2,.privacy-section p,.privacy-section li{color:#000!important;}}

[data-i18n]{display:none!important;}
html[lang="es"] [data-i18n="es"]{display:revert!important;}
html[lang="en"] [data-i18n="en"]{display:revert!important;}
html[lang="zh"] [data-i18n="zh"]{display:revert!important;}


.privacy-pending{
  color:#8a5a00;
  font-weight:700;
}

.privacy-provider-table td .privacy-pending{
  font-style:italic;
}

/* Privacy policy content must render immediately, without reveal animation. */
body.privacy-policy-page .privacy-content .reveal,
body.privacy-policy-page .privacy-content .reveal.is-visible{
  opacity:1;
  transform:none;
  transition:none;
}


.privacy-pending{color:inherit;font-weight:400;}


/* Plain policy links: no underline or border effect */
.privacy-highlight a,
.privacy-section a{
  text-decoration:none;
  border-bottom:0;
}

.privacy-highlight a:hover,
.privacy-highlight a:focus-visible,
.privacy-section a:hover,
.privacy-section a:focus-visible{
  border-bottom:0;
}

/* Rights contact email: plain text, no box, no bold */
.privacy-email-box{
  display:block;
  width:auto;
  min-width:0;
  margin:.35rem 0 1.2rem;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

.privacy-email-box a{
  color:var(--privacy-text);
  font-family:var(--privacy-font-body);
  font-weight:400;
  text-decoration:none;
  border-bottom:0;
}

.privacy-email-box a:hover,
.privacy-email-box a:focus-visible{
  color:var(--privacy-text);
  text-decoration:none;
  border-bottom:0;
  outline:none;
}


/* Rights contact email: no box, no background, no bold, no underline */
.privacy-rights-email{
  margin:.35rem 0 1.2rem;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

.privacy-rights-email a{
  color:var(--privacy-text);
  font-family:var(--privacy-font-body);
  font-weight:400;
  text-decoration:none;
  border-bottom:0;
}

.privacy-rights-email a:hover,
.privacy-rights-email a:focus-visible{
  color:var(--privacy-text);
  text-decoration:none;
  border-bottom:0;
  outline:none;
}


/* Keep the content index visible while scrolling, positioned lower for a cleaner layout. */
@media(min-width:981px){
  .privacy-index{
    position:sticky !important;
    top:7rem;
  }
}

/* Strong sticky fix: keep the left contents index attached to the viewport while scrolling. */
body.privacy-policy-page,
body.privacy-policy-page .privacy-page,
body.privacy-policy-page .privacy-content,
body.privacy-policy-page .privacy-shell{
  overflow:visible !important;
}

@media(min-width:981px){
  body.privacy-policy-page .privacy-shell{
    align-items:start !important;
  }

  body.privacy-policy-page .privacy-index{
    position:-webkit-sticky !important;
    position:sticky !important;
    top:6rem !important;
    align-self:start !important;
    height:max-content !important;
    max-height:calc(100vh - 7rem) !important;
    overflow-y:auto !important;
    z-index:20 !important;
  }
}

/* Privacy email address: regular weight */
.privacy-highlight a[href^="mailto:"],
.privacy-section a[href^="mailto:"]{
  font-weight:400;
}


/* Flat white hero / policies layout */
body.privacy-policy-page{
  background:#fff;
}

body.privacy-policy-page .privacy-page{
  background:#fff !important;
}

body.privacy-policy-page .privacy-hero{
  min-height:54svh;
  color:var(--privacy-ink);
  background:#fff !important;
  padding:9rem var(--page-pad,6vw) 5rem;
}

body.privacy-policy-page .privacy-hero::before{
  display:none !important;
}

body.privacy-policy-page .privacy-hero::after{
  background:rgba(7,25,47,.10) !important;
}

body.privacy-policy-page .privacy-kicker{
  color:var(--privacy-ink);
}

body.privacy-policy-page .privacy-hero h1{
  color:var(--privacy-ink);
  text-shadow:none;
}

body.privacy-policy-page .privacy-date{
  color:var(--privacy-muted);
}

body.privacy-policy-page .privacy-content{
  background:#fff !important;
}

@media(max-width:980px){
  body.privacy-policy-page .privacy-hero{
    min-height:auto;
    padding:8rem var(--page-pad,5vw) 4.25rem;
  }
}

@media(max-width:640px){
  body.privacy-policy-page .privacy-hero{
    padding:7rem 1.25rem 3.5rem;
  }
}
