/* Ibiza editorial direction. Original theme remains available in style.css. */
:root{--color-terracotta:#ab522b;--color-deep-blue:#153e46;--color-gold:#f4ce91}
.landing{background:#fbf9f4}
.skip-link{position:fixed;top:12px;left:12px;z-index:1000;padding:12px 20px;background:white;transform:translateY(-180%)}
.skip-link:focus{transform:none}
:focus-visible{outline:3px solid #bd6b31;outline-offset:6px}
.reading-progress{position:fixed;left:0;top:0;height:3px;width:100%;background:#e5b576;transform:scaleX(0);transform-origin:left;z-index:300}
.landing .site-header{background:#fbf9f4ed;backdrop-filter:blur(18px)}
.landing .nav{padding-top:.85rem;padding-bottom:.85rem}
.landing .nav-logo{font-weight:500;letter-spacing:-.04em}
.landing .nav-links a{font-size:.875rem;font-weight:500}
.landing .hero{isolation:isolate;min-height:740px;min-height:min(880px,calc(100svh - 75px));padding:90px 0 110px;background:#123b45}
.hero-landscape{position:absolute;inset:-7% 0;background:url('../img/ibiza-kueste.png') center 51%/cover;z-index:-3;transform:translateY(var(--landscape-y,0px)) scale(1.03);will-change:transform}
.landing .hero::before{z-index:-2;background:linear-gradient(90deg,rgba(7,32,39,.91),rgba(9,38,46,.58) 44%,rgba(9,38,46,.08)),linear-gradient(0deg,rgba(9,34,42,.75),transparent 45%)}
.hero-light{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 80% 22%,#ffdb9740,transparent 48%);pointer-events:none}
.landing .hero .container{max-width:1320px;grid-template-columns:1.2fr 1fr;gap:5rem;text-align:left}
.landing .hero-text{align-items:flex-start}
.landing .hero-eyebrow{font-size:.875rem;letter-spacing:.17em;margin-bottom:1.9rem}
.landing .hero h1{font-size:clamp(3.5rem,6.8vw,6.25rem);font-weight:500;line-height:1.04;letter-spacing:-.055em;margin-bottom:1.5rem}
.landing .hero h1 em{font-weight:500;color:#f5d4a1}
.landing .hero .subtitle{font-size:1.4rem;font-style:normal;margin-bottom:1.2rem}
.hero-intro{color:#e3e8e4;font-size:1rem;line-height:1.8;margin-bottom:2rem}
.hero-actions{display:flex;align-items:center;gap:1.8rem;flex-wrap:wrap}
.landing .btn{position:relative;overflow:hidden;padding:1rem 1.6rem;font-size:.875rem;font-weight:500;border-radius:3px;isolation:isolate}
.landing .btn-primary{background:#f1ce98;color:#193c43;box-shadow:0 10px 30px #041c2520}
.landing .btn-primary:hover{background:#ffe2b5;box-shadow:0 12px 30px #041c2540}
.landing .btn::before{content:'';position:absolute;inset:-60% auto -60% -60%;width:35%;background:linear-gradient(90deg,transparent,#ffffff60,transparent);transform:skewX(-22deg);transition:left .65s;pointer-events:none}
.landing .btn:hover::before{left:130%}
.landing .btn span{margin-left:.6rem;transition:transform .3s}.landing .btn:hover span{transform:translate(3px,-3px)}
.text-link{font-size:.875rem;color:#fff;border-bottom:1px solid #ffffff60;padding:8px 0}.text-link span{display:inline-block;margin-left:10px;transition:transform .3s}.text-link:hover span{transform:translateX(5px)}
.landing .hero-cover{position:relative;width:min(100%,310px);max-width:none;filter:none;perspective:1000px;padding:10px 0;order:2}
.floating-book{position:relative;transform:rotate(-7deg) rotateY(-12deg);box-shadow:30px 40px 50px #001d3280;transform-style:preserve-3d;transition:transform .3s ease-out;will-change:transform}
.floating-book::after{content:'';position:absolute;left:100%;top:1%;width:14px;height:98%;background:repeating-linear-gradient(90deg,#d6cbb8 0px,#f8ecda 1px,#f8ecda 3px);transform-origin:left;transform:rotateY(55deg);box-shadow:5px 0 8px #0003}
.landing .hero-cover img{border-radius:1px;width:100%;height:auto}
.book-orbit{position:absolute;width:145%;aspect-ratio:1;top:0;left:-22%;border:1px solid #f5dbac50;border-radius:50%;transform:rotate(-20deg) scaleY(1.15);pointer-events:none}
.book-orbit::after{content:'';position:absolute;inset:20px;border:1px solid #f5dbac24;border-radius:50%}
.book-seal{position:absolute;right:-64px;bottom:5px;border-radius:50%;width:130px;height:130px;display:flex;flex-direction:column;justify-content:center;text-align:center;background:#f5dcaf;color:#173c44;font-size:.875rem;line-height:1.65;box-shadow:0 12px 32px #001e3630;transform:rotate(9deg)}
.book-seal em{font-family:var(--font-heading);font-size:1.125rem}
.hero-bottom{position:absolute;bottom:25px;left:5%;right:5%;border-top:1px solid #ffffff30;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:.75rem;letter-spacing:.12em;color:#e6e6d9}
.hero-bottom a{font-size:.875rem;letter-spacing:0}.hero-bottom a span{margin-left:18px}
.landing .divider{display:none}
.landing .section{padding:110px 0}.landing .bg-white{background:#fbf9f4}
.landing .section-label{font-size:.875rem;letter-spacing:.17em}
.landing h2{font-weight:500;font-size:clamp(2.5rem,4vw,3.5rem);letter-spacing:-.045em}
.landing .author-grid{gap:6rem;align-items:start}
.landing .author-photo{margin:25px 25px 90px 0}
.landing .author-photo::before{content:'';position:absolute;inset:-22px 22px 24px -18px;border:1px solid #b88549;z-index:0}
.landing .author-photo>img{position:relative;border-radius:180px 180px 3px 3px;aspect-ratio:4/5;box-shadow:0 20px 45px #163c4518}
.author-postcard{position:absolute;width:54%;right:-36px;bottom:-64px;background:#fffdf5;padding:10px 10px 14px;transform:rotate(8deg);box-shadow:0 12px 35px #173e4530}
.author-postcard img{aspect-ratio:1.4;object-fit:cover;border-radius:0;box-shadow:none}.author-postcard span{display:block;text-align:center;margin-top:9px;font-family:var(--font-heading);font-style:italic}
.landing .author-content p{font-size:1rem}.landing .author-content p:last-child{border-left:2px solid #b87d42;padding-left:20px;font-family:var(--font-heading);font-size:1.125rem}
.landing #buch{position:relative;overflow:hidden;background:#eaf0ec}
.landing #buch::before{content:'Ibiza';position:absolute;top:-70px;left:-30px;font:italic clamp(10rem,27vw,26rem) var(--font-heading);color:#153e4607;pointer-events:none}
.landing .book-grid{position:relative;gap:5rem}
.landing .book-cover-wrap{position:relative;padding:45px 30px}
.landing .book-cover-wrap::before{content:'';position:absolute;inset:0 0 0 7%;background:#d6e3da;border-radius:50% 50% 4px 4px;transform:rotate(-7deg)}
.landing .book-cover-wrap img{position:relative;width:80%;max-width:280px;transform:rotate(5deg);box-shadow:15px 25px 35px #173e4538;transition:transform .6s}
.landing .book-cover-wrap:hover img{transform:rotate(0) translateY(-8px)}
.landing .book-content .book-title{font-size:clamp(2.25rem,3.3vw,3rem);color:var(--color-deep-blue)}
.landing .book-content .book-subtitle{font-size:1.25rem}
.landing .testimonial-grid{grid-template-columns:repeat(2,1fr);gap:24px}
.landing .testimonial-card{border-radius:2px;border:1px solid #153e461a;box-shadow:0 12px 25px #153e4605;padding:32px;transition:transform .45s,box-shadow .45s}
.landing .testimonial-card:nth-child(even){margin-top:25px;margin-bottom:-25px;background:#f1ede4}
.landing .testimonial-card:hover{transform:translateY(-7px);box-shadow:0 20px 40px #153e4612}
.landing .testimonial-text{font-family:var(--font-heading);font-size:1.25rem;font-style:normal}
.draft-note{font-size:.875rem;color:#536365}.landing .testimonial-stars{color:#9a631d}
.landing .newsletter-section{margin:40px 4% 0;position:relative;overflow:hidden;isolation:isolate;background:#123a43;border-radius:4px}
.landing .newsletter-section::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(#103a43df,#103a43ef),url('../img/ibiza-kueste.png') center 60%/cover}
.landing .newsletter-section h2{color:#f6e5c8}.landing .newsletter-form input{border-radius:3px}.landing .newsletter-note{color:#d1dad5;font-size:.875rem}
.landing .social-section{background:#fbf9f4;padding:75px 0}.landing .social-section h2{font-size:2rem}
.landing .footer-copy{color:#d0dcdd}.landing .site-footer{border-top:1px solid #ffffff20}
.landing [id]{scroll-margin-top:100px}
.fade-in-up{opacity:1;transform:none}.motion-ready .fade-in-up:not(.is-visible){opacity:0;transform:translateY(25px)}
.motion-ready .fade-in-up{transition:opacity .8s,transform .8s;transition-delay:var(--reveal-delay,0ms)}
.availability-message{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:400;width:min(90%,540px);padding:18px 24px;background:#153e46;color:white;border:1px solid #efcd97;border-radius:4px;box-shadow:0 10px 40px #0003;font-size:1rem}
@media(min-width:1000px){.landing .author-photo{position:sticky;top:130px}}
@media(max-width:1050px){.landing .hero .container{gap:2rem}.landing .hero-cover{width:260px}.book-seal{right:-25px}.hero-actions{gap:1rem}.landing .author-grid{gap:3rem}.landing .hero{padding-top:75px}}
@media(max-width:859px){.landing .hero{min-height:auto;padding:60px 0 100px}.landing .hero .container{grid-template-columns:1fr;text-align:center;gap:45px}.landing .hero-text{align-items:center}.landing .hero h1{font-size:clamp(3.6rem,10vw,5.8rem)}.hero-actions{justify-content:center}.landing .hero-cover{width:235px}.hero-bottom>span{display:none}.hero-bottom{justify-content:center}.landing .section{padding:75px 0}.landing .author-grid,.landing .book-grid{grid-template-columns:1fr;gap:3rem}.landing .author-photo{max-width:420px;width:calc(100% - 45px);margin:20px auto 75px}.landing .book-cover-wrap{max-width:400px;width:100%;margin:auto}.hero-landscape{background-position:62% center}.landing .hero::before{background:linear-gradient(90deg,#092630d9,#09263065),linear-gradient(0deg,#092630b0,transparent)}.landing .newsletter-section{margin:0 3%}}
@media(max-width:760px){.nav-links{visibility:hidden;pointer-events:none}.nav-links.open{visibility:visible;pointer-events:auto}.landing .nav-links{background:#fbf9f4}.landing .nav-links a{font-size:1.125rem}.landing .nav-logo{font-size:1.6rem}.landing .testimonial-grid{grid-template-columns:1fr}.landing .testimonial-card:nth-child(even){margin:0}.landing .newsletter-form{flex-direction:column}.landing .newsletter-form input{flex:auto;min-width:0}.landing .newsletter-section h2{font-size:2.5rem}.hero-intro br{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion-ready .fade-in-up:not(.is-visible){opacity:1;transform:none}.hero-landscape,.floating-book{will-change:auto}.hero-landscape{transform:none!important}.floating-book{transform:rotate(-7deg)!important}}

