.hero{background:linear-gradient(116deg,#f1ece5 0%,#ebe4da 47%,#ded2c3 100%);padding-top:175px;padding-bottom:110px;min-height:900px;grid-template-columns:54% 46%;gap:0;perspective:1200px}.hero:before{width:720px;height:920px;right:-140px;top:25px;background:radial-gradient(ellipse,#b99c7938 0%,#c9b19215 48%,transparent 70%);animation:heroGlow 12s ease-in-out infinite alternate}.hero:after{width:630px;height:630px;left:-400px;bottom:-340px;border-color:#ab937838;box-shadow:0 0 0 55px #a48c7307,0 0 0 110px #a48c7304}.hero .orb{right:45.3%;top:180px;width:44px;height:44px;opacity:.7}.hero-copy{padding-right:8%;position:relative;z-index:3}.hero .eyebrow{display:inline-flex;border:1px solid #bca78d66;background:#f4efe65c;padding:8px 13px;border-radius:30px;font-size:8px;letter-spacing:2px;margin-bottom:26px;gap:9px}.hero .eyebrow:before{width:5px;height:5px;border-radius:50%;background:#a68d70;box-shadow:0 0 0 4px #b39c7d15}.hero h1{font-size:clamp(65px,6.6vw,104px);line-height:1;letter-spacing:-2.2px;margin-bottom:28px}.title-line{display:block;position:relative;width:fit-content;transition:color .45s,transform .6s cubic-bezier(.2,.7,.3,1)}.hero h1 .title-line em{display:inline;font-style:italic;color:#a58b6d}.hero h1 .accent-line:after{content:'';position:absolute;height:1px;bottom:-3px;left:0;right:0;background:linear-gradient(90deg,#a98b65,transparent);transform:scaleX(.22);transform-origin:left;transition:transform .7s ease,opacity .7s;opacity:.6}.hero h1:hover .accent-line:after{transform:scaleX(1);opacity:1}.title-line:hover{transform:translateX(7px);color:#8c7155}.hero-copy>p{max-width:370px;font-size:13px;line-height:1.95;transition:color .35s}.hero-copy>p:hover{color:#51473c}.hero-actions{display:flex;gap:23px;align-items:center;flex-wrap:wrap}.hero-actions .btn{padding:18px 24px;position:relative;overflow:hidden;border:0;background:#8c755e;color:#fff6ea;box-shadow:0 8px 25px #8d74502b;font-size:11px;gap:24px}.hero-actions .btn:before{content:'';position:absolute;top:-40%;left:-60%;width:35%;height:180%;background:linear-gradient(90deg,transparent,#ffffff35,transparent);transform:rotate(25deg);transition:left .7s}.hero-actions .btn:hover:before{left:135%}.hero-actions .btn:hover{background:#735a43;box-shadow:0 13px 35px #8265443d;transform:translateY(-4px)}.hero-secondary{font-size:10px;color:#8c7b68;display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #b59a7a66;transition:color .3s,gap .3s}.hero-secondary:hover{gap:18px;color:#5f4935}.hero-note{font-size:8px;color:#9a8975;letter-spacing:1px;max-width:400px;margin-top:29px;display:flex;align-items:center;gap:12px;line-height:1.8}.hero-note:before{content:'';height:28px;width:1px;background:#b69b7b55;flex-shrink:0}.hero-photo{height:620px;position:relative;isolation:isolate;margin-top:10px;perspective:1200px;animation:heroIn 1.2s .3s both}.hero-photo:after{inset:-18px 18px 18px -18px;border-radius:170px 18px 170px 18px;transform:rotate(-4deg);border-color:#a78b6566;z-index:-1;transition:transform .8s,border-color .8s}.hero-photo:hover:after{transform:rotate(-7deg) scale(1.025);border-color:#a78b65aa}.portrait-main{height:100%;width:100%;position:relative;border-radius:170px 18px 170px 18px;overflow:hidden;background:#b5a693;box-shadow:0 25px 70px #7761462b;transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .8s cubic-bezier(.2,.65,.3,1),box-shadow .6s;transform-style:preserve-3d;will-change:transform}.hero-photo:hover .portrait-main{box-shadow:0 40px 90px #7761463d}.hero-photo .portrait-main>img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;border-radius:0;box-shadow:none;top:0;transform:scale(1.015) translateY(var(--photo-shift,0px));transition:transform 1.1s cubic-bezier(.2,.65,.3,1),filter .8s;filter:contrast(1.01)}.hero-photo:hover .portrait-main>img{transform:scale(1.07) translateY(var(--photo-shift,0px));filter:contrast(1.025)}.portrait-main:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at var(--shine-x,50%) var(--shine-y,30%),#fff6d629,transparent 48%);opacity:0;pointer-events:none;transition:opacity .6s}.hero-photo:hover .portrait-main:after{opacity:1}.photo-location{position:absolute;top:25px;left:25px;font-size:8px;letter-spacing:1.8px;color:#fff7eb;z-index:3;border:1px solid #fff6df4d;background:#79695135;backdrop-filter:blur(8px);border-radius:30px;padding:9px 13px;pointer-events:none}.hero-detail{position:absolute;width:145px;height:188px;right:-22px;bottom:-28px;border:7px solid #e9e0d3;border-radius:15px;background:#a6947e;transform:rotate(7deg);box-shadow:0 15px 45px #725c4433;overflow:hidden;z-index:5;transition:transform .7s cubic-bezier(.2,.65,.3,1),box-shadow .7s}.hero-photo .hero-detail img{width:100%;height:100%;object-fit:cover;object-position:65% 20%;border-radius:0;transform:scale(1.06);box-shadow:none;transition:transform .9s}.hero-detail:hover{transform:rotate(0) translateY(-7px);box-shadow:0 25px 55px #725c4455}.hero-photo .hero-detail:hover img{transform:scale(1.15)}.hero-photo .photo-caption{left:-47px;right:120px;bottom:37px;padding:22px 21px;border-radius:10px;font-size:25px;line-height:1.15;box-shadow:0 15px 50px #79654b20;z-index:6;background:#fcf8efed;backdrop-filter:blur(10px);animation:captionFloat 7s ease-in-out infinite}.hero-photo .photo-caption:before{font-size:19px;margin-right:10px}.hero-scroll{bottom:30px}.hero-vertical{position:absolute;right:-36px;top:190px;writing-mode:vertical-rl;font-size:8px;letter-spacing:3px;color:#9d866b;z-index:4}.hero-photo:hover .hero-vertical{color:#745b3e}.about-photo{transition:transform .8s}.about-photo img{transition:transform 1s cubic-bezier(.2,.65,.3,1),box-shadow .8s}.about-photo:hover img{transform:translateY(-8px) rotate(-1.2deg);box-shadow:0 30px 60px #80684b30}.about-photo:after{transition:transform .9s}.about-photo:hover:after{transform:rotate(2deg)}.about-copy h2,.section-top h2,.faq-grid h2,.booking-intro h2,.location-text h2{transition:color .5s}.about-copy h2:hover,.section-top h2:hover,.faq-grid h2:hover,.booking-intro h2:hover,.location-text h2:hover{color:#9b7c5a}.area h3{transition:transform .5s,color .5s}.area:hover h3{transform:translateY(-3px)}@keyframes heroGlow{from{transform:translate(-20px,-15px) scale(.95);opacity:.65}to{transform:translate(30px,20px) scale(1.1);opacity:1}}@keyframes captionFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@media(min-width:1500px){.hero{min-height:960px;padding-top:180px}.hero-photo{height:670px}.hero h1{font-size:110px}.hero-copy{padding-right:10%}}
@media(max-width:1100px){.hero{grid-template-columns:53% 47%;min-height:840px;padding:175px 6% 105px}.hero h1{font-size:77px}.hero-photo{height:570px}.hero-copy{padding-right:10%}.hero-actions{gap:16px}.hero-actions .btn{font-size:10px;padding:17px 21px}.hero-secondary{font-size:9px}.hero-detail{width:123px;height:160px;right:-12px}.hero-photo .photo-caption{left:-25px;right:90px;font-size:22px;padding:20px 18px}.hero-vertical{right:-27px}.hero .orb{right:47%;top:151px;width:35px;height:35px}}
@media(max-width:760px){.hero{display:flex;flex-direction:column;padding:144px 7% 85px;gap:53px;min-height:0}.hero-copy{padding:0}.hero h1{font-size:clamp(57px,14vw,83px);line-height:1.01;letter-spacing:-1.7px;margin-bottom:25px}.hero h1 .title-line em{display:inline}.hero .eyebrow{font-size:7px;letter-spacing:1.5px;padding:8px 11px;margin-bottom:24px}.hero-copy>p{font-size:12px;max-width:420px}.hero-actions{gap:18px}.hero-actions .btn{font-size:10px;padding:17px 20px;gap:20px}.hero-secondary{font-size:9px}.hero-note{font-size:7px;letter-spacing:.7px;margin-top:24px}.hero-photo{height:470px;width:88%;margin:0 4% 32px 4%;min-height:0}.portrait-main{border-radius:135px 15px 130px 15px}.hero-photo:after{border-radius:135px 15px 130px 15px;inset:-13px 14px 14px -13px}.hero-photo .portrait-main>img{height:100%;width:100%;object-fit:cover;object-position:50% 20%;transform:scale(1.015)!important}.hero-detail{width:108px;height:140px;border-width:5px;right:-26px;bottom:-28px;transform:rotate(7deg)}.hero-photo .hero-detail img{height:100%;width:100%;transform:scale(1.06)!important}.photo-location{left:20px;top:22px;font-size:6px;padding:8px 10px;letter-spacing:1.3px}.hero-photo .photo-caption{left:-23px;right:66px;bottom:26px;font-size:21px;padding:18px 17px;line-height:1.15}.hero-vertical{right:-29px;top:140px;font-size:7px;letter-spacing:2px}.hero .orb{right:9%;top:111px;width:30px;height:30px;opacity:.4}.hero-scroll{left:7%;bottom:24px}.title-line:hover{transform:none}.about-photo:hover img{transform:none}.hero-photo .photo-caption:before{font-size:16px;margin-right:5px}}
@media(max-width:370px){.hero h1{font-size:55px}.hero-actions{gap:12px}.hero-secondary{font-size:8px}.hero-detail{width:95px;height:125px}.hero-photo .photo-caption{right:52px;font-size:19px}.hero-photo{height:430px}}
@media(prefers-reduced-motion:reduce){.portrait-main,.hero-photo .portrait-main>img,.hero-photo:after,.hero-photo .hero-detail img,.hero-detail,.about-photo img,.about-photo:after,.title-line{transform:none!important;transition:none!important}.hero:before,.hero-photo .photo-caption{animation:none!important}}

.photo-location{left:auto;right:22px;top:22px}.hero-photo .hero-detail img{transform:scale(1.65);transform-origin:65% 20%}.hero-photo .hero-detail:hover img{transform:scale(1.8)}@media(max-width:760px){.photo-location{left:auto;right:17px;top:17px}.hero-photo .hero-detail img{transform:scale(1.6)!important;transform-origin:65% 20%}}@media(prefers-reduced-motion:reduce){.hero-photo .hero-detail img{transform:scale(1.6)!important}}

@keyframes heroTextIn{from{opacity:.35;transform:translateY(14px)}to{opacity:1;transform:none}}.hero-copy{animation:heroTextIn .75s both}.hero .eyebrow{animation:heroTextIn .65s .05s both}.hero h1{animation:heroTextIn .75s .1s both}.hero-copy>p{animation:heroTextIn .75s .15s both}.hero-actions .btn{animation:heroTextIn .75s .2s both}@media(prefers-reduced-motion:reduce){.hero-copy,.hero h1,.hero-copy>p,.hero .eyebrow,.hero-actions .btn{animation:none!important}}
