.privacy-notice{
  --notice-wine:#7a0e1a;
  --notice-wine-hi:#941224;
  position:fixed;
  z-index:10000;
  left:clamp(24px,3vw,48px);
  bottom:clamp(24px,3vw,48px);
  width:min(470px,calc(100vw - 48px));
  box-sizing:border-box;
  padding:28px 30px 30px;
  border:1px solid rgb(230 238 243 / .22);
  background:linear-gradient(145deg,#111822 0%,#0b1119 100%);
  box-shadow:0 22px 60px rgb(5 8 13 / .28);
  color:#f5f7f9;
  clip-path:polygon(0 0,calc(100% - 26px) 0,100% 26px,100% 100%,0 100%);
  font-family:Inter,system-ui,sans-serif;
  animation:privacy-notice-in 320ms cubic-bezier(.2,.72,.2,1) both;
}
.privacy-notice__title{
  margin:0;
  font-size:24px;
  font-weight:750;
  letter-spacing:-.025em;
  line-height:1.12;
}
.privacy-notice__copy{
  max-width:390px;
  margin:12px 0 0;
  color:rgb(245 247 249 / .78);
  font-size:15.5px;
  line-height:1.55;
}
.privacy-notice__actions{
  display:flex;
  align-items:center;
  gap:26px;
  margin-top:24px;
}
.privacy-notice__accept{
  min-width:172px;
  min-height:56px;
  padding:0 28px;
  border:0;
  background:linear-gradient(135deg,var(--notice-wine),var(--notice-wine-hi));
  color:#fff;
  clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%);
  cursor:pointer;
  font-family:Sora,Inter,system-ui,sans-serif;
  font-size:13px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:filter 180ms ease,transform 180ms ease;
}
.privacy-notice__accept:hover{filter:brightness(1.08);transform:translateY(-1px)}
.privacy-notice__accept:active{transform:none}
.privacy-notice__accept:focus-visible,
.privacy-notice__link:focus-visible{outline:2px solid #c3273d;outline-offset:4px}
.privacy-notice__link{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  color:#f5f7f9;
  border-bottom:1px solid rgb(245 247 249 / .75);
  font-size:14px;
  line-height:1.2;
  text-decoration:none;
}
.privacy-notice.is-closing{
  pointer-events:none;
  animation:privacy-notice-out 220ms ease forwards;
}
@keyframes privacy-notice-in{
  from{opacity:0;transform:translateY(14px)}
  to{opacity:1;transform:none}
}
@keyframes privacy-notice-out{
  to{opacity:0;transform:translateY(12px)}
}
@media (min-width:601px) and (max-width:979px){
  .privacy-notice{
    left:36px;
    bottom:36px;
    width:min(520px,calc(100vw - 72px));
    padding:30px 32px 32px;
  }
  .privacy-notice__copy{max-width:430px}
}
@media (hover:none) and (pointer:coarse){
  a,button,[role="button"]{-webkit-tap-highlight-color:transparent}
  a:focus:not(:focus-visible),button:focus:not(:focus-visible),[role="button"]:focus:not(:focus-visible){outline:none;box-shadow:none}
}
@media (max-width:600px){
  .privacy-notice{
    right:0;
    bottom:0;
    left:0;
    width:100%;
    max-width:none;
    padding:28px max(24px,env(safe-area-inset-left)) calc(26px + env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-right));
    border-right:0;
    border-bottom:0;
    border-left:0;
    border-radius:24px 24px 0 0;
    clip-path:none;
    box-shadow:0 -18px 50px rgb(5 8 13 / .3);
  }
  .privacy-notice__title{font-size:23px}
  .privacy-notice__copy{max-width:none;font-size:15px}
  .privacy-notice__actions{gap:22px}
  .privacy-notice__accept{min-width:0;flex:1}
  .privacy-notice__link{flex:0 0 auto}

  /* Mobile homepage polish: keep the full three-step section visible and create calmer section rhythm. */
  .next-section{min-height:calc(var(--stage-height) + 240px)}
  .manage-demo{margin-block:72px}
  .manage-demo__stage{padding-top:max(112px,var(--about-section-pad));padding-bottom:max(112px,var(--about-section-pad))}
  .services,.work-section,.manage-demo{scroll-margin-top:calc(var(--header-current-h,70px) + 28px)}
}
@media (max-width:359px){
  .privacy-notice__actions{display:grid;grid-template-columns:1fr;gap:10px}
  .privacy-notice__accept{width:100%}
  .privacy-notice__link{width:max-content}
}
@media (prefers-reduced-motion:reduce){
  .privacy-notice,
  .privacy-notice.is-closing{animation:none}
  .privacy-notice__accept{transition:none}
}
