/* Portfolio extension: dimensional surfaces and multi-page layouts */
.page-body{background:#f8f5ef;color:#2a222b}
.page-body .site-header{position:sticky;top:0}
.page-hero{background:#261b28;color:#fff;position:relative;overflow:hidden;padding:108px 0 104px;min-height:380px}
.page-hero:before{content:"";position:absolute;width:750px;height:750px;border:1px solid #a9816659;border-radius:50%;right:-220px;top:-300px;box-shadow:0 0 0 90px #b58f6010,0 0 0 170px #b58f6008;pointer-events:none}
.page-hero .shell{position:relative;z-index:1}
.kicker-light{color:#d9b581;letter-spacing:.21em;font-size:10px;font-weight:800;text-transform:uppercase}
.page-hero h1,.detail-heading{font-family:"Playfair Display",serif;font-weight:500;line-height:1.13;letter-spacing:-.04em}
.page-hero h1{font-size:clamp(48px,6vw,82px);margin:24px 0}
.page-hero h1 em,.detail-heading em{font-weight:400;color:#d9b581}
.page-hero p{color:#e0d4de;font-size:15px;line-height:1.9;max-width:640px}
.pill-line{display:flex;gap:10px;flex-wrap:wrap;margin-top:27px}
.pill-line span{border:1px solid #ffffff4d;color:#e7d8e5;border-radius:100px;padding:9px 15px;font-size:10px;letter-spacing:.07em}
.page-main{overflow:hidden}
.pro-section{padding:100px 0}
.pro-section.alt{background:#efe8de}
.detail-heading{font-size:clamp(39px,4.5vw,64px);margin:14px 0 25px}
.detail-heading em{color:#ad805b}
.pro-eyebrow{font-size:10px;letter-spacing:.22em;color:#a17b53;font-weight:800}
.pro-lead{font-family:"Playfair Display",serif;font-size:clamp(21px,2.2vw,28px);line-height:1.6}
.pro-copy{color:#68616a;font-size:14px;line-height:1.95}
.pro-split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.pro-split.two-third{grid-template-columns:1.1fr .9fr}
.pro-portrait{min-height:570px;position:relative;perspective:1200px}
.pro-portrait:before{content:"";position:absolute;inset:25px 35px 16px 40px;background:linear-gradient(135deg,#c39078,#845b65);border-radius:250px 250px 5px 5px;box-shadow:25px 35px 65px #2f10283d}
.pro-portrait img{position:absolute;left:65px;top:47px;width:calc(100% - 105px);height:calc(100% - 75px);object-fit:cover;object-position:center 10%;border-radius:260px 260px 6px 6px;transform:rotateY(-7deg) rotateZ(-2deg);box-shadow:18px 18px 35px #1a152338;transition:transform .5s ease}
.pro-portrait:hover img{transform:rotateY(0) rotateZ(0) translateY(-7px)}
.pro-portrait .float-note{position:absolute;right:0;bottom:45px;background:#fcf8ee;box-shadow:0 16px 48px #1a15232f;padding:22px 24px;min-width:210px;transform:translateZ(30px)}
.float-note small{display:block;color:#ae8257;letter-spacing:.16em;font-weight:800;font-size:9px}.float-note strong{font-family:"Playfair Display",serif;font-weight:500;font-size:25px}
.pro-button{display:inline-flex;align-items:center;gap:18px;background:#2d222c;color:#fff;padding:17px 21px;font-size:12px;font-weight:800;transition:transform .3s,box-shadow .3s}
.pro-button:hover{transform:translateY(-4px);box-shadow:0 9px 22px #25172547}
.pro-button.gold{background:#d7b782;color:#291b2a}
.pro-button svg,.pro-card svg,.pro-simple-icon svg,.retailer-icon svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}
.pro-button svg{width:16px;height:16px}
.pro-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pro-card{background:#fdfaf5;border:1px solid #e7dcd0;min-height:310px;padding:30px;position:relative;transform-style:preserve-3d;transition:transform .4s,box-shadow .4s}
.pro-card:hover{transform:perspective(800px) rotateX(2deg) rotateY(-3deg) translateY(-9px);box-shadow:19px 22px 37px #2118271c}
.pro-card .pro-simple-icon{width:58px;height:58px;display:flex;align-items:center;justify-content:center;border-radius:17px;background:linear-gradient(140deg,#f1dfca,#e5c7a6);color:#6b4035;box-shadow:5px 8px 0 #e4d3c3}
.pro-card h3{font-family:"Playfair Display",serif;font-size:24px;font-weight:500;margin:24px 0 12px;line-height:1.25}
.pro-card p{color:#686169;font-size:13px;line-height:1.8}
.pro-card span.num{font-size:10px;color:#a47e57;font-weight:800;letter-spacing:.16em;position:absolute;right:30px;top:35px}
.pro-timeline{border-top:1px solid #d8ccbf}
.pro-timeline-item{display:grid;grid-template-columns:180px 1fr;gap:34px;border-bottom:1px solid #d8ccbf;padding:26px 0}
.pro-timeline-item b{font-size:11px;color:#9d744a;letter-spacing:.06em}
.pro-timeline-item h3{font-family:"Playfair Display",serif;font-size:24px;font-weight:500;margin:0 0 6px}
.pro-timeline-item p{margin:0;color:#686169;font-size:13px;line-height:1.8}
.book-3d-stage{height:580px;position:relative;display:grid;place-items:center;perspective:1200px;background:radial-gradient(circle at 50% 35%,#d7a38c,#98635c 74%);overflow:hidden}
.book-3d-stage:before{content:"";width:480px;height:480px;position:absolute;border:1px solid #fff8;border-radius:50%;box-shadow:0 0 0 65px #ffffff11,0 0 0 150px #ffffff0b}
.book-volume{width:min(68%,325px);aspect-ratio: .66;position:relative;transform-style:preserve-3d;transform:rotateY(-21deg) rotateZ(-5deg);box-shadow:38px 40px 35px #532a325b;transition:transform .6s ease}
.book-volume:hover{transform:rotateY(-7deg) rotateZ(-2deg) translateY(-13px)}
.book-volume:before{content:"";position:absolute;left:-24px;top:0;width:27px;height:100%;transform-origin:right;transform:rotateY(-55deg);background:linear-gradient(90deg,#3a1830,#b78a7b)}
.book-volume img{width:100%;height:100%;object-fit:cover;background:#563346;position:absolute;inset:0;border:7px solid #efdcc8}
.book-volume:after{content:"";position:absolute;inset:0;border:1px solid #ffffff70;pointer-events:none}
.book-corner{position:absolute;right:20px;top:25px;color:white;letter-spacing:.2em;font-size:10px;font-weight:800}
.retailer-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.retailer-card{padding:33px;background:white;border:1px solid #e0d3c5;min-height:310px;display:flex;flex-direction:column;gap:13px;box-shadow:0 6px 12px #2919250b;transition:transform .3s,box-shadow .3s}
.retailer-card:hover{transform:translateY(-7px);box-shadow:10px 20px 25px #2919251a}
.retailer-icon{width:48px;height:48px;background:#eee0cf;color:#754a44;border-radius:13px;display:grid;place-items:center}
.retailer-card h3{font-family:"Playfair Display",serif;font-size:27px;font-weight:500;margin:10px 0 0}
.retailer-card p{color:#6b6269;font-size:13px;line-height:1.8;margin-bottom:auto}
.retailer-card small{font-weight:800;font-size:10px;color:#9d754d;letter-spacing:.15em}
.retailer-card .pro-button{align-self:flex-start}
.pro-pubs{display:grid;gap:15px}
.pro-pub{display:grid;grid-template-columns:100px 1fr 30px;gap:20px;background:#fff;border:1px solid #e7ddd1;padding:28px;transition:transform .2s}
.pro-pub:hover{transform:translateX(5px)}
.pro-pub h3{font-family:"Playfair Display",serif;font-size:25px;font-weight:500;margin:0 0 10px}
.pro-pub p{font-size:13px;color:#70656c;line-height:1.8;margin-bottom:0}
.pro-pub small{font-size:10px;color:#a4774b;font-weight:800}
.pro-pub .pub-out{font-size:22px;color:#9b7554}
.pro-contact-card{background:#fff;border:1px solid #e4d9cb;padding:35px;box-shadow:10px 15px 30px #37243614}
.pro-contact-card h3{font-family:"Playfair Display",serif;font-size:26px;font-weight:500}
.pro-contact-card p{color:#6c626a;font-size:13px;line-height:1.9}
.pro-contact-card+.pro-contact-card{margin-top:20px}
.pro-contact-card a{font-size:14px;font-weight:800;color:#885b3d;word-break:break-word}
.pro-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.pro-tags span{border:1px solid #d7c7b4;font-size:10px;padding:10px 14px;letter-spacing:.08em}
.pro-cta{background:#281d2b;color:white;text-align:center;padding:75px 0}
.pro-cta h2{font-family:"Playfair Display",serif;font-size:clamp(39px,5vw,64px);font-weight:500;margin:0 0 20px}
.pro-cta p{color:#d3c6d0;font-size:13px;margin-bottom:24px}
.pro-cta .pro-button{margin:auto}
.new-footer{background:#171219;color:#d8cdd4;padding:33px 0;font-size:11px}
.new-footer .shell{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}
.new-footer a{text-decoration:underline}
.book-extra-stores{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.home-3d .hero-portrait-wrap{transition:transform .45s;transform-style:preserve-3d}
.home-3d .hero-portrait-wrap:hover{transform:perspective(900px) rotateY(-5deg) translateY(-6px)}
.home-3d .book-image-frame{transition:transform .45s}
.home-3d .book-image-frame:hover{transform:perspective(750px) rotateY(-12deg) rotateZ(-5deg) translateY(-9px)}
.home-3d .card-symbol{font-family:inherit;width:54px;height:54px;display:grid;place-items:center;background:#f0dfc9;border-radius:14px;box-shadow:5px 6px 0 #e0cbb4}
.home-3d .card-symbol svg{width:30px;height:30px;stroke:#80573e;stroke-width:1.5;fill:none}
@media(max-width:900px){.pro-card-grid{grid-template-columns:repeat(2,1fr)}.pro-split,.pro-split.two-third{gap:35px}.pro-portrait{min-height:430px}.book-3d-stage{height:460px}}
@media(max-width:680px){.page-hero{padding:78px 0 65px;min-height:0}.pro-section{padding:65px 0}.pro-split,.pro-split.two-third,.retailer-grid{grid-template-columns:1fr}.pro-card-grid{grid-template-columns:1fr}.pro-portrait{min-height:450px}.pro-timeline-item{grid-template-columns:1fr;gap:10px}.pro-pub{grid-template-columns:1fr 20px;gap:12px}.pro-pub small{grid-column:1/-1}.book-3d-stage{height:390px}.book-volume{width:58%}.pro-contact-card{padding:25px}}
@media(prefers-reduced-motion:reduce){.pro-card,.book-volume,.pro-portrait img,.retailer-card{transition:none}}
