:root{--navy:#102b48;--deep:#071a2c;--gold:#e8c477;--ink:#102b44;--muted:#556779;--paper:#f3f6f8;--line:#d5dfe6}
body{background:#fff;color:var(--ink)}
header{box-shadow:0 8px 30px #09223a0d;height:84px}
.local-banner{background:#e9c982;color:#102b44;border-color:#d4ac54;padding:12px 5%;box-shadow:inset 0 -1px #9c762b38}
.local-banner:hover{background:#f2d695}
.button{border-radius:7px;box-shadow:0 10px 24px #0d27431c}
.button:hover{transform:translateY(-4px);box-shadow:0 17px 34px #0b29452b}
.hero{background:radial-gradient(circle at 83% 18%,#285777 0,transparent 35%),linear-gradient(125deg,#07192b 3%,#123656 56%,#07192b 100%)}
.hero-inner{grid-template-columns:.93fr 1.07fr;gap:5%;padding-top:76px;padding-bottom:75px}
.hero h1{font-size:clamp(45px,4.65vw,74px);line-height:1.12}
.hero h1 em{color:#f0cf87}
.hero .intro{color:#d7e2ed;font-size:18px;line-height:1.7}
.eyebrow.light{color:#efd299}
.hero-note{border-top:1px solid #ffffff2c;padding-top:20px;margin-top:35px;max-width:440px}
.section{padding-top:92px;padding-bottom:92px}
.section-heading h2,.team-band h2,.contact-copy h2{line-height:1.18}
.service{border-radius:12px;background:linear-gradient(160deg,#fff,#f9fbfc);min-height:340px}
.service:hover{background:#f2f8fc;border-color:#b9cddd;box-shadow:0 24px 40px #153f5b19}
.service-bottom a{background:#e9f0f5;transition:transform .25s,background .25s}
.service:hover .service-bottom a{transform:rotate(45deg);background:#e9c982}
.step{transition:transform .3s}.step:hover{transform:translateY(-5px)}
.team-band{background:linear-gradient(125deg,#eff4f7,#f8fafb)}
.book-widget{min-width:0;max-width:700px;width:100%;padding:15px;background:linear-gradient(135deg,#244a66,#112b42);border:1px solid #ffffff33;border-radius:20px;box-shadow:0 34px 70px #020d1b88,0 0 0 6px #ffffff08;isolation:isolate;animation:book-entrance .85s ease both}
.book-topline{display:flex;justify-content:space-between;color:#d8e8f2;letter-spacing:.17em;font-size:11px;font-weight:700;padding:6px 8px 13px}
.book-counter{color:#f4d593}
.book-stage{position:relative;overflow:hidden;border-radius:10px;background:#06172a;aspect-ratio:1.38;perspective:1100px;box-shadow:inset 0 0 0 1px #ffffff20,0 14px 32px #0005;touch-action:pan-y}
.book-image{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.98) contrast(1.02);transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .65s}
.book-widget[data-page="1"] .book-image{transform:scale(1.055) translateX(-1%)}
.book-widget[data-page="2"] .book-image{transform:scale(1.08) translateX(-2%)}
.book-cover{position:absolute;inset:0 0 0 50%;z-index:4;transform-origin:left center;transform:rotateY(0);background:linear-gradient(145deg,#194269,#0a223e 72%);box-shadow:-7px 0 17px #0009,inset 1px 0 #f0d69a7a;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:10%;color:#f9ead0;transition:transform 1.25s cubic-bezier(.16,.72,.2,1),opacity .5s .85s;pointer-events:none;backface-visibility:hidden}
.book-cover:before{content:'';position:absolute;inset:12px;border:1px solid #e9c98255;pointer-events:none}
.cover-monogram{border:1px solid #e9c98278;padding:10px 15px;font-family:Georgia,serif;font-size:26px;letter-spacing:.1em;margin-bottom:20px}
.book-cover>span:not(.cover-monogram),.book-cover small{font-size:10px;letter-spacing:.2em}
.book-cover b{font-family:'Playfair Display',serif;font-weight:400;font-size:clamp(21px,2.6vw,35px);line-height:1.2;margin:21px 0;color:#fff}
.book-widget.opened .book-cover{transform:rotateY(-157deg);opacity:0}
.book-page-turn{position:absolute;z-index:3;inset:0 0 0 50%;background:linear-gradient(100deg,#ffffffd9,#dce6ef,#ffffff);transform-origin:left center;transform:rotateY(90deg);opacity:0;pointer-events:none;box-shadow:-15px 0 30px #03111c70}
.book-widget.turning .book-page-turn{animation:page-turn .62s ease-in-out both}
.book-zoom{position:absolute;z-index:2;right:18px;bottom:18px;width:37%;height:53%;overflow:hidden;border:4px solid #fbf9f4;background:#fff;border-radius:4px;box-shadow:0 14px 34px #00172bbb;transform:rotate(2deg);transition:transform .4s;pointer-events:none}
.book-widget:hover .book-zoom{transform:translateY(-5px) rotate(0)}
.zoom-image{height:100%;width:100%;background-image:url('assets/index-2.jpg');background-repeat:no-repeat;background-size:340% 105%;background-position:7% center;transition:background-position .55s ease}
.book-widget[data-page="1"] .zoom-image{background-position:51% center}
.book-widget[data-page="2"] .zoom-image{background-position:95% center}
.zoom-hint{position:absolute;bottom:0;left:0;right:0;padding:5px 7px;text-align:center;background:#0c2942dd;color:#fff;font-size:9px;font-weight:700;letter-spacing:.15em}
.book-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 7px 12px}
.book-caption{display:flex;flex-direction:column;line-height:1.4;min-height:78px;gap:3px}
.book-kicker{font-size:10px;letter-spacing:.18em;color:#edcd8d;font-weight:700}
.book-caption strong{font-size:17px;font-family:'Manrope',sans-serif;font-weight:700;color:#fff}
.book-caption>span:last-child{font-size:13px;color:#c5d6e3}
.book-buttons{display:flex;gap:8px;flex-shrink:0}
.book-arrow{border:1px solid #ffffff5c;background:#ffffff12;color:#fff;width:42px;height:42px;border-radius:50%;font-size:23px;line-height:1;cursor:pointer;transition:background .2s,transform .2s}
.book-arrow:hover,.book-arrow:focus-visible{background:#edcd8d;color:#102b44;transform:translateY(-2px)}
.book-tabs{display:flex;gap:7px;padding:0 7px 5px}
.book-tabs button{border:1px solid #ffffff40;background:#ffffff0f;border-radius:6px;color:#e0eaf1;flex:1;padding:9px;font-size:13px;font-weight:700;letter-spacing:.06em;cursor:pointer;transition:background .25s,color .25s,transform .25s}
.book-tabs button:hover{background:#ffffff30;transform:translateY(-2px)}
.book-tabs button[aria-current="true"]{background:#efd194;color:#122d46;border-color:#efd194}
.book-disclaimer{font-size:11px;color:#b8c9d6;text-align:center;margin:9px 0 0}
@keyframes page-turn{0%{transform:rotateY(90deg);opacity:0}25%{opacity:.95}52%{transform:rotateY(-18deg);opacity:.95}100%{transform:rotateY(-90deg);opacity:0}}
@keyframes book-entrance{from{opacity:0;transform:translateY(25px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:1100px){.hero-inner{grid-template-columns:1fr 1fr;gap:3%}.hero h1{font-size:clamp(42px,5vw,58px)}.book-caption strong{font-size:15px}}
@media(max-width:820px){header{height:76px}nav{top:76px}.hero-inner{grid-template-columns:1fr;gap:35px;padding-top:52px}.book-widget{max-width:620px;margin:0 auto}.hero-art{padding:13px}.section{padding-top:68px;padding-bottom:68px}}
@media(max-width:480px){.hero-inner{padding-top:42px}.hero h1{font-size:clamp(39px,10vw,49px)}.hero .intro{font-size:16px}.book-widget{padding:10px;border-radius:14px}.book-topline{font-size:9px;padding:5px 5px 9px}.book-stage{aspect-ratio:1.18}.book-zoom{right:8px;bottom:8px;width:37%;height:48%;border-width:3px}.book-cover{padding:7%}.book-cover b{font-size:21px}.cover-monogram{font-size:18px;padding:5px 8px}.book-controls{align-items:flex-start;padding:13px 3px 8px}.book-caption{min-height:74px}.book-caption strong{font-size:14px}.book-caption>span:last-child{font-size:12px}.book-arrow{width:34px;height:34px;font-size:19px}.book-tabs{padding:0 3px}.book-tabs button{padding:8px}.book-disclaimer{font-size:10px}.local-banner{padding:11px 5%}.section-heading h2{font-size:35px}}
@media(prefers-reduced-motion:reduce){.book-cover{display:none}.book-widget,.book-widget.turning .book-page-turn{animation:none}.book-page-turn{display:none}}
@media(max-width:980px){header .menu{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:white;border-radius:5px;padding:8px 13px;font-size:14px}header nav{display:none;position:absolute;top:84px;left:0;right:0;background:white;padding:25px 5%;border-bottom:1px solid var(--line);align-items:stretch;gap:18px}header nav.open{display:flex;flex-direction:column}header nav>a{font-size:16px}}
@media(max-width:820px){header nav{top:76px}}
