:root{--ink:#102f22;--green:#2f7d4e;--paper:#f2efe6;--line:rgba(16,47,34,.18);--white:#fff}
*{box-sizing:border-box}
html,body{min-height:100%;margin:0}
body{overflow-x:hidden;background:#d9d8d0;color:var(--ink);font-family:Arial,"Segoe UI",sans-serif}
button,a{font:inherit}
.sip-viewer{position:relative;isolation:isolate;display:grid;grid-template-rows:auto 1fr;min-height:100vh}
.sip-viewer::before,.sip-viewer::after{content:"";position:fixed;z-index:-2;inset:-32px;pointer-events:none}
.sip-viewer::before{background:url("/brand/sip-construction-background.jpg") center 54%/cover no-repeat;filter:blur(20px);transform:scale(1.045)}
.sip-viewer::after{z-index:-1;background:linear-gradient(135deg,rgba(242,239,230,.88),rgba(224,231,220,.78))}
.sip-viewer__header{position:sticky;z-index:20;top:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;min-height:72px;padding:10px clamp(16px,3vw,48px);border-bottom:1px solid rgba(16,54,35,.16);background:rgba(242,239,230,.88);box-shadow:0 6px 20px rgba(9,30,21,.08);backdrop-filter:blur(16px)}
.sip-viewer__back,.sip-viewer__fullscreen{width:max-content;min-height:44px;border:1px solid rgba(16,54,35,.36);border-radius:10px;padding:0 18px;background:rgba(255,255,255,.58);color:var(--ink);font-weight:800;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 3px 10px rgba(9,30,21,.06);cursor:pointer;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.sip-viewer__back:hover,.sip-viewer__fullscreen:hover{border-color:var(--green);background:#fff;box-shadow:0 6px 16px rgba(9,30,21,.1)}
.sip-viewer__back:active,.sip-viewer__fullscreen:active{transform:translateY(1px);box-shadow:0 2px 7px rgba(9,30,21,.08)}
.sip-viewer__back:focus-visible,.sip-viewer__fullscreen:focus-visible,.sip-controls button:focus-visible{outline:3px solid rgba(27,122,63,.24);outline-offset:3px}
.sip-viewer__fullscreen{justify-self:end}
.sip-viewer__brand{text-align:center;line-height:1}
.sip-viewer__brand b,.sip-viewer__brand span{display:block}
.sip-viewer__brand b{font-size:20px;letter-spacing:.02em}
.sip-viewer__brand span{margin-top:6px;color:var(--green);font-size:10px;font-weight:900;letter-spacing:.13em}
.sip-viewer__main{width:min(100% - 32px,1600px);margin:auto;padding:clamp(24px,3vw,46px) 0 38px}
.sip-stage{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr) 56px;gap:14px;align-items:center;outline:none;touch-action:pan-y}
.sip-stage__slide{position:relative;width:100%;margin:0;overflow:hidden;aspect-ratio:16/9;border:1px solid rgba(255,255,255,.68);border-radius:16px;background:#071f31;box-shadow:0 28px 72px rgba(9,30,21,.28),0 0 0 1px rgba(16,54,35,.1)}
.sip-stage__slide img{display:block;width:100%;height:100%;object-fit:contain}
.sip-stage__slide img.is-entering{animation:sip-slide-in .24s ease-out}
.sip-stage__arrow{width:56px;height:72px;border:1px solid rgba(16,54,35,.25);border-radius:12px;background:rgba(255,255,255,.82);color:var(--ink);box-shadow:0 7px 18px rgba(9,30,21,.12);font-size:42px;line-height:1;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.sip-stage__arrow:hover:not(:disabled){border-color:var(--green);background:#fff;box-shadow:0 10px 24px rgba(9,30,21,.17)}
.sip-stage__arrow:first-child:hover:not(:disabled){transform:translateX(-3px)}
.sip-stage__arrow:last-child:hover:not(:disabled){transform:translateX(3px)}
.sip-stage__arrow:active:not(:disabled){transform:scale(.96)}
.sip-stage__arrow:disabled,.sip-controls button:disabled{opacity:.35;cursor:default}
.sip-controls{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:18px;margin-top:22px;padding:0 2px}
.sip-controls button{width:min(100%,220px);min-height:50px;border:1px solid #166b38;border-radius:10px;background:var(--green);color:#fff;padding:0 24px;box-shadow:0 5px 14px rgba(27,122,63,.16);font-weight:850;cursor:pointer;transition:background-color .16s ease,box-shadow .16s ease,transform .16s ease}
.sip-controls button:hover:not(:disabled){background:#146f39;box-shadow:0 7px 18px rgba(27,122,63,.22)}
.sip-controls button:active:not(:disabled){transform:translateY(1px);box-shadow:0 3px 9px rgba(27,122,63,.15)}
.sip-controls button:first-child{justify-self:end}
.sip-controls button:last-child{justify-self:start}
.sip-controls p{margin:0;font-size:16px}
.sip-controls strong{font-size:24px}
.sip-viewer__hint{margin:14px 0 0;text-align:center;color:#5e6d65;font-size:12px}
@keyframes sip-slide-in{from{opacity:.72;transform:scale(.994)}to{opacity:1;transform:scale(1)}}
:fullscreen .sip-viewer__header,:fullscreen .sip-controls,:fullscreen .sip-viewer__hint{display:none}
:fullscreen .sip-viewer__main{width:100%;padding:0}
:fullscreen .sip-stage{height:100vh;grid-template-columns:64px minmax(0,1fr) 64px;background:#081d14}
:fullscreen .sip-stage__slide{max-height:100vh;box-shadow:none}
@media(max-width:720px){
  .sip-viewer__header{grid-template-columns:auto 1fr;min-height:64px;padding:8px 12px}
  .sip-viewer__brand{text-align:right}
  .sip-viewer__brand b{font-size:16px}
  .sip-viewer__fullscreen{display:none}
  .sip-viewer__main{width:100%;padding:14px 0 24px}
  .sip-stage{display:block}
  .sip-stage__arrow{display:none}
  .sip-stage__slide{border-right:0;border-left:0;border-radius:0;box-shadow:0 14px 34px rgba(9,30,21,.22)}
  .sip-controls{padding:0 12px;gap:8px}
  .sip-controls button{width:100%;min-height:52px;padding:0 12px;font-size:13px}
  .sip-controls p{white-space:nowrap}
  .sip-controls strong{font-size:20px}
  .sip-viewer__hint{padding:0 16px;line-height:1.4}
}
@media(max-width:360px){
  .sip-viewer__back{min-height:42px;padding:0 12px;font-size:13px}
  .sip-viewer__brand span{font-size:8px}
  .sip-controls{grid-template-columns:1fr auto 1fr}
  .sip-controls button{padding:0 9px;font-size:11px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.sip-viewer__back,.sip-viewer__fullscreen,.sip-stage__arrow,.sip-controls button{transition:none}.sip-stage__slide img.is-entering{animation:none}}
