/* R-Way Immigration | The Service Library, V25 — original editorial reader */
:root{--r25-ink:#202831;--r25-red:#a1182b;--r25-paper:#fffcf6;--r25-line:#e8dfd3;--r25-gold:#c6a67d}
.rw23-home-stack .rw23-volume{min-height:61px;box-shadow:0 4px 0 #3a2626,0 9px 14px #30242c23,inset 1px 0 #fff3!important}
.rw23-home-stack .rw23-volume:focus-visible{outline:3px solid #ba182a;outline-offset:4px}
.rw25-layer{position:fixed;inset:0;display:none;z-index:99999;background:rgba(23,20,23,.80);backdrop-filter:blur(12px);padding:clamp(8px,2.1vw,30px);font-family:Inter,Manrope,Arial,sans-serif;color:var(--r25-ink)}
.rw25-layer.open{display:flex;justify-content:center;align-items:center;animation:rw25In .25s ease}
@keyframes rw25In{from{opacity:0}to{opacity:1}}
.rw25-dialog{height:min(95dvh,950px);width:min(1380px,100%);display:flex;flex-direction:column;background:#eee6dc;box-shadow:0 34px 90px #0007;border-radius:13px;overflow:hidden;border:1px solid #ffffff75}
.rw25-bar{background:#fffdfa;display:flex;align-items:center;gap:16px;padding:10px 22px;min-height:66px;border-bottom:1px solid #e8dfd9}
.rw25-brand{display:flex;align-items:center;gap:9px;color:#232b33;flex-shrink:0}
.rw25-brand img{width:37px;height:42px;object-fit:contain}
.rw25-brand strong{display:block;font:800 16px Manrope,Inter,sans-serif;letter-spacing:-.035em}
.rw25-brand small{font:700 8px Inter,sans-serif;letter-spacing:.15em;display:block;color:#737983}
.rw25-booklabel{margin-left:auto;color:#816a6f;font:750 10px Inter,sans-serif;letter-spacing:.13em;text-transform:uppercase}
.rw25-close{cursor:pointer;border:1px solid #e5dcd5;border-radius:6px;background:white;font:750 12px Inter,sans-serif;color:#373d44;padding:11px 14px;white-space:nowrap}
.rw25-close:hover{border-color:var(--r25-red);color:var(--r25-red)}
.rw25-main{min-height:0;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:clamp(9px,1.75vw,23px) clamp(8px,2vw,30px);background:radial-gradient(ellipse at 50% 30%,#fff 0%,#e9dfd4 73%,#d5c6b6 100%)}
.rw25-stage{position:relative;width:min(1200px,100%);height:100%;max-height:730px;perspective:1900px;display:flex;align-items:center;justify-content:center}
.rw25-binding{position:relative;width:100%;height:100%;display:grid;grid-template-columns:1fr 1fr;min-height:0;border-radius:8px 13px 13px 8px;background:#fefcf8;box-shadow:0 9px 0 #6a2631,0 13px 0 #d7be99,0 17px 0 #8d5e43,0 23px 36px #38242140,0 40px 60px #0002;isolation:isolate}
.rw25-binding:before{content:"";position:absolute;z-index:4;pointer-events:none;left:calc(50% - 14px);top:0;bottom:0;width:28px;background:linear-gradient(90deg,#cfbdaa00,#7c513c22 29%,#44302449 49%,#fffdfa88 60%,#ead6c12b 100%);border-radius:50%}
.rw25-leaf{position:relative;min-height:0;min-width:0;background:var(--r25-paper);border:1px solid #efe3d5;overflow:hidden;display:flex;flex-direction:column}
.rw25-leaf:first-child{border-radius:8px 0 0 3px;background:linear-gradient(90deg,#e8ddcd 0%,#fffcf7 3%,#fffcf7 92%,#e9dfd5 100%)}
.rw25-leaf:nth-child(2){border-radius:0 11px 4px 0;background:linear-gradient(90deg,#e8daca 0%,#fffefa 4%,#fffefa 98%,#ece0d4 100%)}
.rw25-rule{height:4px;background:linear-gradient(90deg,#65172a,#b62739 65%,#c6a67d);flex-shrink:0}
.rw25-pagehead{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 14px;color:#9c2936;font:800 10px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.rw25-leftcontent,.rw25-rightcontent{flex:1;min-height:0;display:flex;flex-direction:column;padding:clamp(17px,2.55vw,37px) clamp(17px,2.8vw,42px) 22px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#d3bdac transparent}
.rw25-kicker{color:#9b2836;font:850 10px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;display:block;margin:0 0 11px}
.rw25-leaf h2,.rw25-leaf h3{font-family:Manrope,Inter,sans-serif;color:#222a34;letter-spacing:-.045em;line-height:1.12;margin:0}
.rw25-leaf h2{font-size:clamp(27px,2.7vw,43px);margin-bottom:14px;font-weight:850}
.rw25-leaf h3{font-size:clamp(23px,2.1vw,32px);margin-bottom:14px;font-weight:820}
.rw25-desc{font:480 clamp(13px,1.11vw,15px)/1.7 Inter,sans-serif;color:#5d6570;margin:0 0 16px}
.rw25-photo{border-radius:6px;overflow:hidden;position:relative;min-height:180px;max-height:335px;flex:1;background:#e8ded3;margin-top:12px;border:1px solid #ebe1d7}
.rw25-photo img{width:100%;height:100%;object-fit:cover;display:block}
.rw25-photo small{position:absolute;bottom:0;left:0;right:0;padding:17px 15px 11px;background:linear-gradient(transparent,#171a24b9);color:#fff;font:750 10px Inter,sans-serif;letter-spacing:.08em}
.rw25-leftbottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:15px;color:#736b69;font-size:11px}
.rw25-leftbottom strong{color:#9f2230}
.rw25-paper-meta{font:700 10px Inter,sans-serif;color:#817677;letter-spacing:.11em;text-transform:uppercase}
.rw25-toc{display:grid;gap:0;margin:8px 0 18px}
.rw25-toc button{border:0;background:none;border-bottom:1px solid #e6ded5;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#29323b;padding:12px 0;text-align:left;font:700 13px/1.4 Inter,sans-serif;cursor:pointer}
.rw25-toc button:hover{color:#a1182b}
.rw25-toc b{font:800 11px Inter,sans-serif;color:#b21b2f}
.rw25-section{margin:0 0 24px;flex-shrink:0}
.rw25-section h4{border-bottom:1px solid #e2d6d1;padding-bottom:10px;margin:0 0 13px;color:#912335;text-transform:uppercase;letter-spacing:.1em;font:800 12px Inter,sans-serif}
.rw25-section ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.rw25-section li{position:relative;padding-left:21px;color:#47515b;font:460 13px/1.65 Inter,sans-serif}
.rw25-section li:before{content:"";position:absolute;left:0;top:9px;height:7px;width:7px;border:1.5px solid #a62637;border-radius:50%}
.rw25-note{border-left:3px solid #a52434;background:#f8f0eb;padding:12px 14px;color:#74666a;font:490 11px/1.7 Inter,sans-serif;margin-top:8px}
.rw25-review{padding:24px;background:#f7efe9;border:1px solid #e7d7cc;border-radius:8px;margin:17px 0}
.rw25-review blockquote{font:700 21px/1.55 Manrope,Inter,sans-serif;color:#282c35;margin:15px 0}
.rw25-review small{font-size:11px;color:#72727a}
.rw25-review a{display:inline-block;color:#8f1d2d;margin-top:12px;font-weight:760;font-size:12px}
.rw25-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.rw25-actions a{padding:12px 17px;text-align:center;border-radius:7px;text-decoration:none;background:#a1182b;border:1px solid #a1182b;color:white;font:800 12px Inter,sans-serif}
.rw25-actions a.alt{background:transparent;color:#972134}
.rw25-end{margin-top:auto;padding-top:14px;font:600 10px Inter,sans-serif;color:#90817b;letter-spacing:.07em}
.rw25-flip{position:absolute;z-index:8;pointer-events:none;width:50%;height:100%;top:0;left:50%;transform-origin:left center;transform-style:preserve-3d;backface-visibility:hidden;background:linear-gradient(100deg,#e7d7c7 0%,#fffdfa 10%,#fffdfa 88%,#dbcab9 100%);border:1px solid #ede1d4;box-shadow:-2px 1px 17px #4e362536;opacity:0}
.rw25-flip.flip-next{opacity:1;animation:rw25Flip .66s cubic-bezier(.29,.18,.21,.99) forwards}
.rw25-flip.flip-prev{opacity:1;left:0;transform-origin:right center;animation:rw25FlipPrev .66s cubic-bezier(.29,.18,.21,.99) forwards}
.rw25-flip:after{content:"R-WAY  ·  IMMIGRATION SERVICE GUIDE";color:#947e77;position:absolute;inset:0;display:grid;place-items:center;transform:rotateY(180deg);backface-visibility:visible;font:800 10px Inter,sans-serif;letter-spacing:.18em}
@keyframes rw25Flip{0%{transform:rotateY(0deg);filter:brightness(1)}49%{filter:brightness(.86)}100%{transform:rotateY(-180deg);filter:brightness(1)}}
@keyframes rw25FlipPrev{0%{transform:rotateY(0deg)}100%{transform:rotateY(180deg)}}
.rw25-coverflip{position:absolute;inset:0;z-index:12;pointer-events:none;display:none;justify-content:center;align-items:center;perspective:1600px}
.rw25-coverflip.show{display:flex}
.rw25-cover-card{background:linear-gradient(150deg,#702331,#3d1522);color:#f6ddc0;width:min(420px,50%);height:min(600px,92%);border:4px double #d2ae79;border-radius:6px 12px 12px 6px;box-shadow:6px 9px 0 #5d2e30,15px 24px 26px #0004;padding:38px;display:flex;flex-direction:column;transform-origin:left center;animation:rw25Cover .78s ease-in-out forwards}
.rw25-cover-card b{letter-spacing:.2em;font:800 11px Inter,sans-serif}
.rw25-cover-card strong{margin:auto 0;display:block;font:800 clamp(22px,2.8vw,38px)/1.22 Manrope,Inter,sans-serif;color:white}
.rw25-cover-card span{font:600 11px Inter,sans-serif;letter-spacing:.12em}
@keyframes rw25Cover{0%{transform:rotateY(0) scale(1);opacity:1}65%{opacity:1}100%{transform:rotateY(-165deg) scale(1);opacity:0}}
.rw25-footer{display:flex;gap:16px;align-items:center;justify-content:space-between;background:#fffdfa;padding:11px 23px;min-height:74px;border-top:1px solid #e6dcd3}
.rw25-paging{display:flex;gap:9px;align-items:center}
.rw25-paging button{border:1px solid #d9ccc2;border-radius:7px;min-height:41px;padding:10px 17px;color:#853044;background:white;font:800 12px Inter,sans-serif;cursor:pointer}
.rw25-paging .primary{color:white;background:#a1182b;border-color:#a1182b}
.rw25-paging button:disabled{opacity:.4;cursor:default}
.rw25-count{font:800 10px Inter,sans-serif;letter-spacing:.12em;color:#887b77}
.rw25-progress{width:180px;height:3px;background:#e7dcd5;border-radius:4px;overflow:hidden}
.rw25-progress i{display:block;height:100%;background:#9f2633;width:5%;transition:width .32s}
.rw25-chapters{display:flex;align-items:center;gap:8px;margin-left:auto;overflow:auto;max-width:38%;scrollbar-width:thin}
.rw25-chapters button{border:0;background:#f3ede7;color:#74646a;border-radius:5px;font:800 10px Inter,sans-serif;padding:10px 11px;cursor:pointer;flex-shrink:0}
.rw25-chapters button.active{background:#971f31;color:#fff}
@media(max-width:880px){
 .rw25-layer{padding:5px}.rw25-dialog{height:calc(100dvh - 10px);width:100%;border-radius:8px}.rw25-bar{min-height:58px;padding:7px 14px}.rw25-booklabel,.rw25-progress,.rw25-chapters{display:none}
 .rw25-main{padding:10px 9px}.rw25-stage{height:100%;max-height:none;min-height:0;perspective:800px}
 .rw25-binding{grid-template-columns:1fr;grid-template-rows:auto 1fr;overflow:hidden}
 .rw25-binding:before{display:none}
 .rw25-leaf:first-child{border-radius:8px 8px 0 0;max-height:41%;background:#fffaf4}
 .rw25-leaf:nth-child(2){border-radius:0 0 8px 8px;background:#fffefb;min-height:0}
 .rw25-leftcontent{padding:14px 17px;overflow:hidden}
 .rw25-leftcontent .rw25-desc,.rw25-leftbottom{display:none}
 .rw25-leftcontent h2{font-size:23px;margin-bottom:8px}
 .rw25-pagehead{margin-bottom:5px;font-size:9px}
 .rw25-photo{min-height:0;max-height:none;flex:1;margin:4px 0 0}
 .rw25-photo small{font-size:9px;padding:10px}
 .rw25-rightcontent{padding:20px 20px 27px;overflow-y:auto}
 .rw25-rightcontent h3{font-size:24px}
 .rw25-flip{width:100%;left:0;transform-origin:right center}
 .rw25-flip.flip-prev{left:0}
 .rw25-cover-card{width:min(335px,78%);height:80%;padding:30px}
 .rw25-footer{min-height:61px;padding:8px 13px}
 .rw25-paging{gap:7px}.rw25-paging button{font-size:11px;padding:10px 11px}.rw25-count{font-size:9px}
}
@media(max-width:390px){.rw25-brand small{display:none}.rw25-bar{gap:7px}.rw25-close{padding:8px}.rw25-rightcontent{padding:17px}.rw25-leftcontent h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){.rw25-layer,.rw25-cover-card,.rw25-flip{animation:none!important}.rw25-flip{display:none!important}}
/* V25 polish: book fills the viewport, mobile pages don't leave unused blank space. */
.rw25-stage{max-height:none}
@media(max-width:880px){
 .rw25-binding{grid-template-rows:minmax(160px,31%) minmax(0,1fr)}
 .rw25-leaf:first-child{max-height:none;height:100%}
 .rw25-leftcontent{height:100%;min-height:0;padding:11px 17px 12px}
 .rw25-leftcontent .rw25-photo{min-height:85px;max-height:none;flex:1}
 .rw25-leftcontent .rw25-kicker{margin-bottom:5px}
 .rw25-leftcontent .rw25-pagehead{margin-bottom:6px}
 .rw25-leftcontent .rw25-photo small{padding:7px 10px;font-size:8px}
 .rw25-rightcontent{min-height:0}
}
/* Fill the book-stage within the reading area at every viewport size. */
.rw25-main{align-items:stretch}
.rw25-stage{flex:1;align-self:stretch;height:auto;min-height:0}
.rw25-stage{align-items:stretch}
.rw25-binding{height:auto;flex:1;align-self:stretch}
/* Override the global site footer spacing inside the interactive book. */
.rw25-footer{margin:0!important}
