/* Shared light, material and shape language. Static gradients avoid continuous paint work. */
:root{--radius-photo:26px;--radius-panel:22px;--ease-soft:cubic-bezier(.2,.65,.25,1)}
body{background:#eeeae1}
#work{background:radial-gradient(ellipse at 30% 22%,#fffdf6 0,transparent 58%),radial-gradient(ellipse at 92% 76%,#d8c7b544,transparent 58%),#eeeae1}
.pricing{background:radial-gradient(ellipse at 17% 47%,#6d514033,transparent 64%),radial-gradient(ellipse at 92% 12%,#64715a1f,transparent 60%),#1b1e19}
.about{background:radial-gradient(ellipse at 73% 42%,#fffdf4cc,transparent 65%),radial-gradient(ellipse at 8% 65%,#dfc6aa55,transparent 60%),#eee9df;border-top-color:#ded7c8}
.preparation{background:radial-gradient(ellipse at 80% 35%,#fffdf6,transparent 65%),radial-gradient(ellipse at 10% 82%,#c9cbb640,transparent 60%),#eae9df;border-top-color:#d8d9cb}
.conditions{background:radial-gradient(ellipse at 68% 38%,#fffdf7,transparent 70%),#eeeae1;border-top-color:#dcd5c8}
.contact{background:radial-gradient(ellipse at 30% 25%,#f76b45 0,transparent 62%),radial-gradient(ellipse at 95% 90%,#822e2566,transparent 65%),#d9472d}
footer{background:radial-gradient(ellipse at 70% 0,#fffaf0aa,transparent 85%),#eeeae1}
.ticker{background:linear-gradient(105deg,#e9e4da,#faf6ec 48%,#e8e1d5);border-color:#d0c9bb}
.series-photo{border-radius:var(--radius-photo);box-shadow:0 18px 42px -25px #45362975,0 1px 0 #ffffffb3 inset}.preparation figure img{border-radius:var(--radius-photo);box-shadow:0 20px 48px -28px #45362980}
.photo-open,.round-link{transition:background .3s var(--ease-soft),transform .3s var(--ease-soft)}.photo:hover .photo-open{transform:translateY(-3px)}
.price-booking,#contact-links .whatsapp-link{border-radius:16px;box-shadow:0 12px 28px -19px #0007;transition:background .3s ease,transform .3s var(--ease-soft),box-shadow .3s ease}
.price-booking:hover,#contact-links .whatsapp-link:hover{transform:translateY(-2px);box-shadow:0 17px 32px -18px #0008}
.price-booking:active,#contact-links .whatsapp-link:active{transform:translateY(0)}
.filters button{transition:background .3s ease,color .3s ease,border-color .3s ease;box-shadow:0 5px 15px -12px #45362955}
.conditions details,.conditions details:last-child{border:1px solid #cfc5b780;background:#fffdf650;border-radius:var(--radius-panel);margin-bottom:12px;padding:0 24px;box-shadow:0 10px 26px -24px #45362966;transition:background .3s ease,border-color .3s ease}
.conditions details[open]{background:#fffdf6b3;border-color:#cfc5b7}.conditions summary{padding:23px 0}.condition-copy{padding:0 10px 8px 0}.conditions details[open] .condition-copy{animation:condition-appear .35s var(--ease-soft)}
@keyframes condition-appear{from{opacity:.3;transform:translateY(-5px)}to{opacity:1;transform:none}}
@supports(interpolate-size:allow-keywords){.conditions details{interpolate-size:allow-keywords}.conditions details::details-content{height:0;overflow:clip;transition:height .4s var(--ease-soft),content-visibility .4s allow-discrete}.conditions details[open]::details-content{height:auto}}
.gallery-image{border-radius:20px}.gallery-image img{border-radius:20px}.gallery-stage>button{border-radius:50%;transition:background .25s ease}.gallery-stage>button:hover{background:#ffffff17}
.color-palette li>span{border-radius:10px;box-shadow:0 7px 18px -13px #45362990}.contact-bottom{border-top-color:#5f231d55}
@media(max-width:520px){:root{--radius-photo:20px;--radius-panel:18px}.series-photo{box-shadow:0 13px 30px -22px #45362980}.conditions details,.conditions details:last-child{padding-inline:18px;margin-bottom:10px}.conditions summary{font-size:17px;padding-block:21px}.condition-copy{padding-right:0}.price-booking,#contact-links .whatsapp-link{border-radius:14px}.gallery-image,.gallery-image img{border-radius:16px}.gallery-stage>button{border-radius:12px}}
@media(prefers-reduced-motion:reduce){.conditions details[open] .condition-copy{animation:none}.conditions details::details-content{transition:none}.price-booking:hover,#contact-links .whatsapp-link:hover,.photo:hover .photo-open{transform:none}}

/* A quiet satin highlight invites booking without a flashing effect. */
.hero .hero-link{position:relative;isolation:isolate;overflow:hidden;min-height:56px;min-width:210px;justify-content:space-between;gap:34px;padding:16px 24px;border:1px solid #fff8e980;border-radius:999px;background:linear-gradient(135deg,#fff5df,#e5cda8);color:#33251b;box-shadow:0 10px 30px #1c100b30,inset 0 1px 0 #fff9;font-size:15px;font-weight:500;transition:transform .3s var(--ease-soft),box-shadow .3s ease}
.hero .hero-link::before{content:'';position:absolute;inset:-50% auto -50% -80%;width:50%;z-index:-1;background:linear-gradient(90deg,transparent,#ffffffb3,transparent);transform:skewX(-22deg);animation:booking-sheen 6s ease-in-out infinite;pointer-events:none}
.hero .hero-link:hover{transform:translateY(-2px);box-shadow:0 15px 36px #1c100b45,inset 0 1px 0 #fffc}.hero .hero-link:active{transform:translateY(0)}.hero .hero-link>span{display:inline-flex;align-items:center}.hero .hero-link .icon-arrow{width:21px;height:21px}
@keyframes booking-sheen{0%,62%{transform:translateX(0) skewX(-22deg);opacity:0}67%{opacity:.8}83%,100%{transform:translateX(480%) skewX(-22deg);opacity:0}}
@media(max-width:520px){.hero .hero-link{min-width:200px;min-height:54px;padding:15px 23px;margin-top:22px;font-size:15px}}
@media(prefers-reduced-motion:reduce){.hero .hero-link::before{animation:none;display:none}.hero .hero-link:hover{transform:none}}
