@font-face{font-family:Cormorant;src:url('assets/cormorant.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Cormorant;src:url('assets/cormorant-italic.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:DM;src:url('assets/dm-sans.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:DM;src:url('assets/dm-sans-500.woff2') format('woff2');font-weight:500;font-display:swap}
:root{--ink:#171914;--dark:#11140f;--gold:#dcc493;--ivory:#f6f3eb;--paper:#eeede5;--muted:#777a6d;--line:#d8d9cc;--serif:Cormorant,Georgia,serif;--sans:DM,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ivory);color:var(--ink);font:400 14px/1.8 var(--sans);overflow-x:clip}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;color:inherit}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h2{font:400 clamp(52px,5.5vw,84px)/.96 var(--serif);letter-spacing:-2.3px}h2 em,h1 em{font-weight:400}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #ac8b50;outline-offset:6px}input:focus,textarea:focus,select:focus{outline:2px solid #ac8b50;outline-offset:3px}[hidden]{display:none!important}.skip{position:absolute;top:-100px;left:20px;background:var(--ivory);padding:12px;z-index:100}.skip:focus{top:15px}.scroll-progress{position:fixed;left:0;top:0;width:100%;height:2px;transform-origin:left;transform:scaleX(0);background:var(--gold);z-index:60}.brand{display:inline-flex;flex-direction:column;align-items:center;line-height:1}.brand>span{font:italic 43px/.95 var(--serif);letter-spacing:-1.8px;white-space:nowrap}.brand small{font-size:7px;letter-spacing:5px;margin-top:11px;padding-left:5px}header{position:absolute;top:0;left:0;right:0;height:112px;padding:0 5.7%;display:flex;align-items:center;justify-content:space-between;color:var(--ivory);border-bottom:1px solid #ffffff29;z-index:30;transition:height .4s,background .4s;gap:30px}header.scrolled{position:fixed;height:83px;background:#11140ff2;backdrop-filter:blur(18px)}nav{display:flex;gap:30px;font-size:11px}nav a{position:relative;white-space:nowrap}nav a:after{content:'';position:absolute;bottom:-6px;left:0;right:100%;height:1px;background:var(--gold);transition:right .25s}nav a:hover:after{right:0}.nav-actions{display:flex;align-items:center;gap:25px}.language{background:none;color:var(--gold);font-size:10px;padding:8px}.nav-cta{background:none;color:var(--ivory);padding:12px 20px;border:1px solid #d7c59e88;font-size:11px;white-space:nowrap}.nav-cta span{margin-left:22px}.nav-cta:hover{background:#dcc49320}.menu-toggle{display:none;background:none;width:32px;padding:3px}.menu-toggle span{display:block;height:1px;background:var(--ivory);margin:7px 0}.hero{position:relative;isolation:isolate;min-height:800px;height:100svh;max-height:1100px;background:var(--dark);color:var(--ivory);overflow:hidden}.hero-photo{position:absolute;inset:0;z-index:-3;will-change:transform}.hero-photo img{object-position:65% 52%;animation:heroZoom 2s cubic-bezier(.16,1,.3,1) both;filter:brightness(.85)}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#11140fde 0%,#11140f8c 42%,#11140f22 75%),linear-gradient(0deg,#11140fd9,transparent 38%,#11140f55)}.hero-frame{position:absolute;inset:132px 28px 28px;z-index:-1;border:1px solid #dcc49321;pointer-events:none}.hero-content{position:relative;padding:205px 7.2% 165px;z-index:2;max-width:1340px}.eyebrow{display:flex;align-items:center;gap:15px;font-size:10px;letter-spacing:1px;color:#e3d9c3;margin-bottom:35px;animation:entrance 1s .1s both}.gold-line{width:30px;height:1px;background:var(--gold)}h1{font:400 clamp(100px,10.3vw,158px)/.85 var(--serif);letter-spacing:-5px;max-width:1050px}.title-line{display:block;overflow:clip;animation:titleEnter 1.4s cubic-bezier(.16,1,.3,1) both}.title-line:nth-child(2){animation-delay:.13s}h1 em{color:#ead9b5}.hero-bottom-content{display:flex;align-items:center;gap:55px;margin-top:50px;animation:entrance 1s .4s both}.hero-description{font-size:12px;line-height:1.9;color:#e3ddcf}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:57px;padding:10px 12px 10px 25px;font-size:11px;line-height:1.5;transition:background .25s,box-shadow .25s;position:relative;overflow:hidden}.gold{background:var(--gold);color:var(--dark)}.gold:hover{background:#f0dfb8;box-shadow:0 8px 35px #0002}.dark{background:var(--ink);color:var(--ivory)}.dark:hover{background:#3b4435}.button-arrow{width:36px;height:36px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:20px;transition:transform .3s}.button:hover .button-arrow{transform:rotate(45deg)}.hero-editorial{position:absolute;right:7.3%;bottom:20%;width:220px;transform:rotate(5deg);padding:9px 9px 14px;background:var(--paper);color:var(--ink);box-shadow:0 25px 80px #0005;animation:photoEnter 1.5s .5s both;z-index:3;transition:rotate .5s}.hero-editorial:hover{rotate:-4deg}.hero-editorial-photo{height:190px;overflow:hidden}.hero-editorial-photo img{object-position:62% center;transition:transform .6s}.hero-editorial:hover img{transform:scale(1.06)}.hero-editorial>span{font:italic 16px/1.2 var(--serif);display:inline-block;margin-top:12px}.hero-editorial>span:last-child{float:right;font-style:normal;font-size:19px}.hero-side{position:absolute;right:47px;top:38%;writing-mode:vertical-rl;font-size:8px;letter-spacing:4px;color:#e3d5b9}.hero-foot{position:absolute;left:7.2%;right:7.2%;bottom:52px;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.8px;z-index:3}.scroll-discover{display:flex;gap:25px;align-items:center}.scroll-arrow{border:1px solid #dcc49370;border-radius:50%;width:42px;height:42px;font-size:19px;display:grid;place-items:center}.hero-sparkles{position:absolute;inset:0;pointer-events:none;z-index:1}.hero-sparkles i{position:absolute;display:block;width:3px;height:3px;border-radius:50%;background:#f3dc99;box-shadow:0 0 12px #eacc83;opacity:0;animation:sparkleFloat var(--duration) var(--delay) infinite;left:var(--x);top:var(--y)}.occasion-marquee{overflow:hidden;background:var(--gold);padding:20px 0;color:#443d2d;font:italic 25px var(--serif)}.occasion-marquee>div{display:flex;align-items:center;white-space:nowrap;width:max-content;gap:45px;animation:marquee 42s linear infinite}.occasion-marquee i{font-size:26px;font-style:normal}.section-pad{padding:105px 7.2%}.section-label{font-size:10px;color:#8c7957;letter-spacing:.6px;margin-bottom:25px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center;max-width:1700px;margin:auto;padding-top:130px;padding-bottom:130px}.story-image-stack{height:585px;position:relative;perspective:1000px;margin-right:10px}.story-main-photo{position:absolute;inset:0 14% 10% 0;border-radius:200px 200px 0 0;overflow:hidden}.story-main-photo img{object-position:45% center;transition:transform 1s}.story-detail-photo{position:absolute;right:-10%;bottom:0;width:63%;height:240px;border:9px solid var(--ivory);overflow:hidden}.story-detail-photo img{object-position:center}.story-photo-note{position:absolute;left:-34px;top:35%;writing-mode:vertical-rl;font-size:8px;letter-spacing:1.5px;color:var(--muted)}.story-stamp{position:absolute;right:-15%;top:30px;background:var(--ink);border-radius:50%;width:112px;height:112px;display:flex;align-items:center;justify-content:center;color:var(--gold);font:italic 63px var(--serif);box-shadow:0 0 0 8px var(--ivory),0 0 0 9px #d2c6b0}.story-stamp span{margin-top:18px;margin-left:-15px}.intro-copy{padding-left:0;max-width:470px}.intro h2{font-size:clamp(65px,6.7vw,102px);line-height:.88}.intro .lead{font:26px/1.3 var(--serif);margin:30px 0 20px}.intro-copy>p:not(.lead):not(.section-label){font-size:12px;color:var(--muted);line-height:1.95;max-width:380px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;border-bottom:1px solid #b7ab91;background:none;padding:0 0 10px;font-size:11px;line-height:1.5;margin-top:25px}.text-link span:last-child{font-size:20px}.text-link:hover{border-color:var(--ink)}.occasions{background:var(--dark);color:var(--ivory);position:relative}.occasions .section-label{color:var(--gold)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:50px}.section-heading>p,.gallery-note{font-size:12px;color:var(--muted);line-height:1.9;max-width:310px;padding-bottom:5px}.occasions .section-heading>p{color:#acae9d}.occasion-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.occasion-card{position:relative;height:515px;background:#232a20;color:var(--ivory);padding:0;text-align:left;overflow:hidden;isolation:isolate}.occasion-card:nth-child(2){margin-top:50px}.occasion-card:nth-child(3){margin-top:100px}.occasion-card img{transition:transform 1.1s cubic-bezier(.16,1,.3,1),filter .7s;object-position:50% center;filter:saturate(.75)}.occasion-card:hover img{transform:scale(1.065);filter:saturate(1)}.card-shade{position:absolute;inset:0;background:linear-gradient(0deg,#080c08eb,transparent 85%)}.occasion-content{position:absolute;inset:auto 26px 30px;display:flex;flex-direction:column}.occasion-content small{font-size:9px;color:#e3d4b5;letter-spacing:.4px}.occasion-content strong{font:400 clamp(34px,3.6vw,54px)/1.15 var(--serif);letter-spacing:-1px;margin-top:8px}.occasion-description{font-size:10px;color:#e4e1d6;margin-top:10px;max-width:240px;min-height:36px}.occasion-more{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:23px;border-top:1px solid #ffffff44;padding-top:15px;font-size:9px}.occasion-more i{font:normal 21px var(--serif);display:grid;place-items:center;width:34px;height:34px;border:1px solid #dcc49366;border-radius:50%;transition:background .3s,color .3s}.occasion-card:hover .occasion-more i{background:var(--gold);color:var(--dark)}.inspiration-note{font-size:8px;color:#969a87;text-align:right;margin-top:25px}.gallery-section{background:var(--paper)}.gallery-section .section-heading{margin-bottom:40px}.small-note{font-size:9px;margin-top:15px;color:#8c7957}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:35px}.filters button{border:1px solid #d2d3c5;border-radius:50px;background:none;padding:10px 20px;font-size:10px;color:var(--muted);transition:background .3s,color .3s}.filters button.active{background:var(--ink);border-color:var(--ink);color:var(--ivory)}.filters button:hover{border-color:var(--ink)}.gallery-grid{display:grid;grid-template-columns:1.15fr .8fr 1fr;gap:25px;align-items:start}.gallery-item{background:none;padding:0;text-align:left;min-width:0;animation:galleryIn .5s both}.gallery-item:nth-child(3n+2){margin-top:60px}.gallery-item .photo{height:350px;position:relative;overflow:hidden;cursor:zoom-in}.gallery-item:nth-child(3n+2) .photo{height:425px}.gallery-item img{transition:transform .9s cubic-bezier(.16,1,.3,1),filter .8s;filter:saturate(.82)}.gallery-item:hover img{transform:scale(1.07);filter:saturate(1)}.gallery-item .photo:after{content:'↗';position:absolute;right:15px;bottom:15px;display:grid;place-items:center;background:var(--ivory);color:var(--ink);width:38px;height:38px;border-radius:50%;font-size:20px;transition:transform .3s}.gallery-item:hover .photo:after{transform:rotate(45deg)}.gallery-item-caption{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:14px 0 8px}.gallery-item-caption strong{font:400 22px/1.2 var(--serif)}.gallery-item-caption small{font-size:7px;color:#8b7857;white-space:nowrap}.attribution{font-size:8px;color:#838675;margin-top:40px;max-width:600px;line-height:1.8}.gallery-cursor{display:none;position:fixed;left:0;top:0;pointer-events:none;z-index:50;width:75px;height:75px;border-radius:50%;background:#e0c89aef;color:var(--ink);font:italic 20px/1.1 var(--serif);align-items:center;justify-content:center;flex-direction:column;opacity:0;transition:opacity .2s;will-change:transform}.studio{position:relative;background:#e1ded1;overflow:hidden}.studio-inner{display:grid;grid-template-columns:1fr 1.2fr;min-height:740px;max-width:1700px;margin:auto}.studio-copy{padding:95px 0 95px 15.8%;position:relative;z-index:2}.studio .section-label{color:#827144}.studio h2{font-size:clamp(65px,6.5vw,98px);line-height:.9}.studio h2 em{color:#8a744b}.studio-copy>p:not(.section-label){font-size:12px;line-height:1.95;color:#777461;max-width:300px;margin-top:30px}.palette-options{display:flex;gap:10px;margin-top:27px}.palette-options button{background:none;padding:12px 8px 14px;min-width:85px;border-bottom:1px solid transparent;color:#807861;font-size:9px;transition:border-color .3s}.palette-options button.selected{border-color:#9d8350;color:var(--ink)}.swatches{display:flex;justify-content:center;padding-left:8px;margin-bottom:10px}.swatches i{width:27px;height:27px;display:block;border:1px solid #fff8;border-radius:50%;margin-left:-7px;box-shadow:1px 2px 4px #0001}.champagne i:nth-child(1){background:#c9aa69}.champagne i:nth-child(2){background:#eee6d8}.champagne i:nth-child(3){background:#625c4c}.rose i:nth-child(1){background:#bf8c90}.rose i:nth-child(2){background:#e7c5bc}.rose i:nth-child(3){background:#967456}.sage i:nth-child(1){background:#8a9b85}.sage i:nth-child(2){background:#d7d2be}.sage i:nth-child(3){background:#b29562}.studio .text-link{margin-top:35px;color:var(--ink);border-color:#a89670}.scene-wrap{position:relative;min-height:700px;isolation:isolate;background:radial-gradient(ellipse at 50% 40%,#f9f6ec,transparent 66%)}#balloon-scene{display:block;position:relative;z-index:2;min-height:700px;height:100%;width:100%;touch-action:pan-y;cursor:grab}#balloon-scene:active{cursor:grabbing}.scene-ring{position:absolute;top:15%;left:12%;width:74%;aspect-ratio:1;border:1px solid #b39b6b44;border-radius:50%;z-index:-1}.scene-ring:after{content:'';position:absolute;inset:30px;border:1px solid #b39b6b22;border-radius:50%}.scene-caption{position:absolute;bottom:50px;left:0;right:0;text-align:center;font-size:9px;letter-spacing:.3px;z-index:3;pointer-events:none;color:#8c7c5a}.tiny-star{font-size:20px;margin-right:10px}.scene-index{position:absolute;right:22px;top:42%;writing-mode:vertical-rl;font-size:7px;letter-spacing:2px;color:#9b8b6a}.studio-plinth{position:absolute;bottom:110px;left:18%;width:65%;height:40px;background:radial-gradient(ellipse,#83714b44,transparent 68%);filter:blur(13px);z-index:0}.scene-fallback{position:absolute;inset:14% 8% 25%;z-index:0;transition:opacity .5s}.scene-fallback span{position:absolute;width:160px;height:190px;border-radius:50% 50% 46% 46%;background:radial-gradient(circle at 28% 25%,#fff3d2,#c8a762 35%,#76603b 75%,#d6ba80);box-shadow:10px 18px 30px #0002}.scene-fallback span:nth-child(1){left:18%;top:15%;transform:rotate(-20deg)}.scene-fallback span:nth-child(2){left:50%;top:10%;transform:rotate(20deg)}.scene-fallback span:nth-child(3){left:35%;top:45%;background:radial-gradient(circle at 28% 28%,#fff,#e1d7bc 35%,#8b8168 85%)}.scene-fallback span:nth-child(4){left:1%;top:48%;transform:scale(.7)}.scene-fallback span:nth-child(5){left:65%;top:45%;transform:scale(.8)}.webgl-ready .scene-fallback{opacity:0}.process{background:var(--ivory)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:65px;margin-top:60px}.step-number{display:block;font:italic 48px var(--serif);color:#9c875d;border-top:1px solid var(--line);padding-top:24px;margin-bottom:23px}.process-grid h3{font:400 33px/1.1 var(--serif);margin-bottom:17px}.process-grid p{font-size:12px;color:var(--muted);line-height:1.95;max-width:300px}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:70px;border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;position:relative;cursor:pointer;padding:24px 35px 24px 0;font-size:12px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:0;top:15px;color:#907b51;font:30px var(--serif);transition:transform .3s}.faq-list details[open] summary:after{transform:rotate(45deg)}.faq-list details p{padding:0 35px 25px 0;font-size:12px;line-height:1.9;color:var(--muted);animation:galleryIn .25s both}.contact-section{display:grid;grid-template-columns:1fr 1.1fr;gap:9%;background:var(--paper);align-items:center}.contact-photo{height:570px;position:relative;overflow:hidden}.contact-photo img{object-position:55% center}.contact-photo-overlay{position:absolute;inset:0;background:linear-gradient(0deg,#11140fcf,transparent 60%)}.contact-photo>p{position:absolute;bottom:40px;left:35px;right:25px;font:italic 38px/1 var(--serif);color:var(--ivory)}.contact-copy h2{font-size:clamp(52px,5.3vw,76px)}.contact-copy>p:not(.section-label){font-size:12px;color:var(--muted);max-width:330px;margin:25px 0}.contact-link{display:flex;align-items:center;gap:18px;border-bottom:1px solid #cdcfbf;padding:22px 0;transition:border-color .3s}.contact-link:hover{border-color:#91805a}.contact-icon{width:40px;font-size:25px;color:#85734b}.contact-link>span:not(.contact-icon){display:flex;flex-direction:column;gap:3px}.contact-link small{font-size:9px;color:#898771}.contact-link strong{font:400 24px/1.2 var(--serif);overflow-wrap:anywhere}.contact-link>i{margin-left:auto;font-size:21px;font-style:normal;color:#8b7951}.contact-copy>.button{margin-top:32px}.whatsapp-icon{display:inline-block;width:24px;height:24px;flex-shrink:0;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.5 3.5A11.9 11.9 0 002.1 17.8L.5 23.5l5.9-1.6A12 12 0 0020.5 3.5zM12 21.4a9.8 9.8 0 01-5-1.4l-.4-.2-3.5.9.9-3.4-.2-.4A9.9 9.9 0 1112 21.4zm5.5-7.4c-.3-.2-1.8-.9-2.1-1-.3-.1-.5-.2-.7.1l-.9 1.1c-.2.2-.4.2-.7.1a8.2 8.2 0 01-2.4-1.5 9.2 9.2 0 01-1.6-2c-.2-.3 0-.4.1-.6l.5-.6.3-.5c.1-.2 0-.4 0-.5L9.1 6.3c-.2-.5-.5-.5-.7-.5h-.6c-.2 0-.5.1-.8.4-.3.3-1 1-1 2.4s1 2.8 1.2 3c.1.2 2.1 3.3 5.1 4.5.7.3 1.3.5 1.7.6.7.2 1.3.2 1.8.1.6-.1 1.8-.7 2.1-1.4.3-.7.3-1.3.2-1.4-.1-.1-.3-.2-.6-.4z'/%3E%3C/svg%3E") center/contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.5 3.5A11.9 11.9 0 002.1 17.8L.5 23.5l5.9-1.6A12 12 0 0020.5 3.5zM12 21.4a9.8 9.8 0 01-5-1.4l-.4-.2-3.5.9.9-3.4-.2-.4A9.9 9.9 0 1112 21.4zm5.5-7.4c-.3-.2-1.8-.9-2.1-1-.3-.1-.5-.2-.7.1l-.9 1.1c-.2.2-.4.2-.7.1a8.2 8.2 0 01-2.4-1.5 9.2 9.2 0 01-1.6-2c-.2-.3 0-.4.1-.6l.5-.6.3-.5c.1-.2 0-.4 0-.5L9.1 6.3c-.2-.5-.5-.5-.7-.5h-.6c-.2 0-.5.1-.8.4-.3.3-1 1-1 2.4s1 2.8 1.2 3c.1.2 2.1 3.3 5.1 4.5.7.3 1.3.5 1.7.6.7.2 1.3.2 1.8.1.6-.1 1.8-.7 2.1-1.4.3-.7.3-1.3.2-1.4-.1-.1-.3-.2-.6-.4z'/%3E%3C/svg%3E") center/contain no-repeat}.contact-icon.whatsapp-icon{width:29px;margin-right:11px}.closing{position:relative;height:570px;color:var(--ivory);overflow:hidden;text-align:center}.closing>img{object-position:center 38%}.closing-shade{position:absolute;inset:0;background:#11140faf}.closing-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px}.closing .section-label{color:var(--gold)}.closing h2{font-size:clamp(75px,8vw,118px);line-height:.88;margin-bottom:40px}.closing h2 em{color:var(--gold)}footer{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:35px;background:var(--dark);color:var(--ivory);padding:70px 7.2% 30px}footer>.brand{justify-self:start;align-items:start}footer>p{font-size:12px;color:#a8ad9a}.footer-links{display:flex;flex-direction:column;align-items:end;gap:10px;font-size:10px}.footer-links button{background:none;padding:0}.footer-links a:hover,.footer-links button:hover{color:var(--gold)}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;padding-top:30px;margin-top:30px;border-top:1px solid #ffffff22;font-size:8px;color:#8f9783}.floating-whatsapp{position:fixed;bottom:27px;right:28px;z-index:35;display:flex;align-items:center;gap:12px;padding:15px 18px;background:#203a29;color:#f9f7ef;border-radius:60px;font-size:11px;box-shadow:0 8px 35px #0003;border:1px solid #6c876855;transition:background .3s,transform .3s}.floating-whatsapp:hover{background:#31583d;transform:translateY(-3px)}.chat-status{display:block;width:5px;height:5px;background:#bacd9a;border-radius:50%;margin-left:3px}dialog{border:0;padding:0;color:var(--ink);background:var(--ivory);max-height:92svh;max-width:95vw;overscroll-behavior:contain}dialog[open]{animation:dialogEnter .3s cubic-bezier(.16,1,.3,1) both}dialog::backdrop{background:#080d08c9;backdrop-filter:blur(9px)}body:has(dialog[open]){overflow:hidden}.dialog-close{position:absolute;top:17px;right:17px;width:36px;height:36px;border-radius:50%;background:#f6f3ebdf;z-index:5;font-size:25px;line-height:1}.consult-dialog{width:1020px}.consult-layout{display:grid;grid-template-columns:.8fr 1.2fr}.consult-visual{position:relative;min-height:760px}.consult-visual>img{position:absolute;inset:0}.consult-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(#11140f66,#11140fcc)}.consult-visual>div{position:absolute;inset:45px;z-index:1;display:flex;flex-direction:column;justify-content:space-between;align-items:start;color:var(--ivory)}.consult-visual h2{font:italic 65px/.9 var(--serif)}.consult-form-wrap{padding:45px 45px 30px}.consult-form-wrap h2{font-size:52px}.consult-form-wrap .section-label{font-size:9px;margin-bottom:16px}.form-intro{font-size:11px;color:var(--muted);margin:20px 0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}form label{display:flex;flex-direction:column;gap:7px;font-size:10px;color:#85734b;margin-bottom:17px}input,textarea,select{width:100%;min-width:0;border:0;border-bottom:1px solid #c5c7b7;border-radius:0;background:none;color:var(--ink);padding:7px 0;font-size:13px}textarea{resize:vertical}.demo-note{font-size:9px;line-height:1.7;color:#8a8d7d;margin:13px 0 22px}form .button{width:100%;padding:18px 25px}.result-star{font-size:40px;color:#978155}#brief-result h3{font:36px var(--serif)}#brief-result>p{font-size:12px;color:var(--muted);margin:16px 0}#brief-details{font-size:12px;margin:25px 0;max-height:260px;overflow-y:auto;overscroll-behavior:contain}#brief-details dt{color:#8c7957;font-size:10px}#brief-details dd{margin:2px 0 13px;overflow-wrap:anywhere}.result-actions{display:flex;gap:15px;flex-wrap:wrap;align-items:center}.result-actions .button{font-size:10px;padding:16px 20px}.result-actions .text-link{font-size:10px;margin-top:0}.lightbox{width:100vw;height:100svh;max-width:100vw;max-height:100svh;background:var(--dark);color:var(--ivory)}.lightbox figure{margin:50px 80px 60px;height:calc(100% - 110px);display:flex;flex-direction:column;align-items:center;justify-content:center}.lightbox figure img{max-width:100%;width:auto;max-height:calc(100% - 60px);object-fit:contain}.lightbox figcaption{font-size:11px;color:#cec7b7;padding-top:24px;text-align:center}.lightbox-prev,.lightbox-next{position:absolute;top:45%;z-index:4;background:none;color:var(--gold);font:60px var(--serif);padding:10px}.lightbox-prev{left:15px}.lightbox-next{right:15px}#lightbox-count{position:absolute;bottom:23px;left:0;right:0;text-align:center;font-size:9px;color:#abae9d}.credits-dialog{width:590px;padding:55px}.credits-dialog h2{font-size:50px;margin-bottom:25px}.credits-dialog>p:last-child{font-size:12px;line-height:1.95;color:var(--muted)}.reveal-photo{clip-path:inset(0 0 0 0);transition:clip-path 1.3s cubic-bezier(.16,1,.3,1)}
@keyframes heroZoom{from{transform:scale(1.1)}to{transform:scale(1)}}@keyframes titleEnter{from{opacity:0;transform:translateY(65px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:translateY(0);clip-path:inset(0)}}@keyframes entrance{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes photoEnter{from{opacity:0;transform:translateY(40px) rotate(10deg)}to{opacity:1;transform:translateY(0) rotate(5deg)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes sparkleFloat{0%,100%{opacity:0;transform:translateY(0)}30%{opacity:.5}80%{opacity:0;transform:translateY(-90px)}}@keyframes galleryIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes dialogEnter{from{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(min-width:1700px){.section-pad{padding-left:max(7.2%,calc((100vw - 1450px)/2));padding-right:max(7.2%,calc((100vw - 1450px)/2))}.hero-content{padding-top:230px}.hero-editorial{width:260px}.hero-editorial-photo{height:230px}}
@media(max-width:1150px){header{padding:0 4%;gap:20px}nav{gap:20px;font-size:10px}.nav-actions{gap:16px}.brand>span{font-size:37px}.nav-cta{padding:10px 14px}.hero-content{padding-left:7%;padding-top:210px}.hero h1{font-size:clamp(95px,10.5vw,125px)}.hero-editorial{right:7%;width:185px;bottom:18%}.hero-editorial-photo{height:155px}.hero-bottom-content{gap:30px}.hero-description{font-size:11px}.hero-editorial>span{font-size:13px}.section-pad{padding-left:6%;padding-right:6%}.intro{gap:12%}.story-image-stack{height:510px}.story-detail-photo{height:200px}.story-stamp{width:90px;height:90px;font-size:52px}.intro h2{font-size:80px}.occasion-card{height:450px}.occasion-content{left:20px;right:20px}.gallery-item .photo{height:300px}.gallery-item:nth-child(3n+2) .photo{height:370px}.gallery-item-caption{display:block}.gallery-item-caption small{display:block;margin-top:6px}.studio-copy{padding-left:13%}.studio h2{font-size:80px}.contact-section{gap:7%}.contact-photo{height:550px}.contact-link strong{font-size:22px}}
@media(max-width:850px){header{padding:0 6%;height:90px}.brand>span{font-size:36px}.brand small{font-size:6px;letter-spacing:4px}.nav-actions{gap:18px}.nav-cta{display:none}.menu-toggle{display:block}nav{display:none;position:absolute;top:89px;left:0;right:0;background:var(--dark);padding:30px 6% 40px;font:30px var(--serif)}nav.open{display:flex;flex-direction:column;gap:25px}header.scrolled nav{top:82px}.hero{min-height:790px;max-height:1000px}.hero-content{padding-top:195px}.hero h1{font-size:105px;letter-spacing:-4px}.hero-frame{inset:110px 18px 18px}.hero-shade{background:linear-gradient(90deg,#11140fd9,#11140f55 90%),linear-gradient(0deg,#11140fd9,transparent 50%)}.hero-side{right:30px;font-size:7px}.hero-bottom-content{flex-direction:column;align-items:start;gap:25px;margin-top:35px}.hero-editorial{width:170px;bottom:21%;right:9%}.hero-editorial-photo{height:145px}.hero-foot{left:7%;right:7%;bottom:40px;font-size:8px}.hero-foot a{gap:15px}.hero-foot a>span:first-child{display:none}.section-pad{padding-top:80px;padding-bottom:80px}.intro{gap:11%}.intro h2{font-size:66px}.intro .lead{font-size:23px}.story-image-stack{height:450px}.story-main-photo{right:5%;bottom:15%}.story-detail-photo{right:-12%;width:80%;height:180px}.story-stamp{right:-23%;top:25px;width:76px;height:76px;font-size:44px}.story-photo-note{left:-20px;font-size:7px}.intro-copy>p:not(.lead):not(.section-label){font-size:11px}h2{font-size:59px}.section-heading{gap:25px}.section-heading>p,.gallery-note{font-size:11px;max-width:230px}.occasion-grid{gap:12px}.occasion-card{height:390px}.occasion-card:nth-child(2){margin-top:30px}.occasion-card:nth-child(3){margin-top:60px}.occasion-content{left:14px;right:14px;bottom:22px}.occasion-content strong{font-size:34px}.occasion-content small{font-size:8px}.occasion-description{font-size:9px;min-height:50px}.occasion-more{font-size:8px;margin-top:18px;padding-top:10px}.occasion-more i{width:27px;height:27px;font-size:18px}.gallery-grid{gap:16px}.gallery-item .photo{height:230px}.gallery-item:nth-child(3n+2) .photo{height:290px}.gallery-item-caption strong{font-size:20px}.studio-inner{min-height:650px}.studio-copy{padding-top:75px;padding-bottom:75px}.studio h2{font-size:65px}.studio-copy>p:not(.section-label){font-size:11px;max-width:245px}.palette-options{gap:0}.palette-options button{min-width:76px;font-size:8px}.scene-wrap,#balloon-scene{min-height:650px}.scene-index{display:none}.process-grid{gap:30px}.process-grid h3{font-size:29px}.faq{grid-template-columns:.8fr 1.2fr;gap:35px}.contact-section{gap:6%}.contact-photo{height:530px}.contact-copy h2{font-size:53px}.contact-photo>p{font-size:32px;left:25px;bottom:30px}.contact-icon{display:none!important}.contact-link{gap:0}.contact-link strong{font-size:21px}.contact-link>i{font-size:18px}.contact-copy>p:not(.section-label){font-size:11px}.closing{height:480px}.closing h2{font-size:85px}footer{grid-template-columns:1fr 1fr;padding-left:6%;padding-right:6%}.footer-links{grid-column:2;grid-row:1/3}footer>p{grid-column:1}.footer-bottom{flex-wrap:wrap}.footer-bottom>span:nth-child(2){order:3;width:100%}.consult-visual{display:none}.consult-layout{display:block}.consult-dialog{width:560px}.consult-form-wrap{padding:45px}.floating-whatsapp{padding:13px 17px;bottom:20px;right:20px;font-size:10px}.floating-whatsapp .whatsapp-icon{width:22px;height:22px}}
@media(max-width:560px){body{font-size:13px}header{height:84px}.brand>span{font-size:34px}header.scrolled{height:74px}header.scrolled nav{top:73px}nav{top:83px}.hero{height:100svh;min-height:760px;max-height:960px}.hero-content{padding:170px 6% 140px}.hero-photo img{object-position:55% center}.hero-frame{inset:103px 12px 14px}.eyebrow{font-size:8px;letter-spacing:.4px;gap:10px;margin-bottom:35px;max-width:290px}.gold-line{width:20px;flex-shrink:0}.hero h1{font-size:clamp(58px,17vw,93px);letter-spacing:-2.6px;line-height:.88}.hero-bottom-content{margin-top:32px;gap:24px}.hero-description{font-size:12px;line-height:1.85}.hero .button{font-size:10px;padding-left:20px;min-height:54px;gap:25px}.button-arrow{width:32px;height:32px;font-size:18px}.hero-editorial{width:130px;right:8%;bottom:15%;padding:6px 6px 10px}.hero-editorial-photo{height:108px}.hero-editorial>span{font-size:11px;margin-top:8px;max-width:90px}.hero-editorial>span:last-child{font-size:15px;max-width:20px}.hero-side{display:none}.hero-foot{left:6%;right:6%;bottom:37px;font-size:7px;max-width:none;gap:15px;line-height:1.7}.hero-foot>span{max-width:250px}.scroll-arrow{width:32px;height:32px;font-size:16px}.occasion-marquee{padding:15px 0;font-size:22px}.occasion-marquee>div{gap:30px}.occasion-marquee i{font-size:22px}.section-pad{padding:65px 6%}.intro{display:flex;flex-direction:column;gap:52px;align-items:stretch;padding-top:80px;padding-bottom:70px}.story-image-stack{height:425px;margin:0 10% 0 4%}.story-main-photo{inset:0 7% 12% 0;border-radius:180px 180px 0 0}.story-detail-photo{right:-15%;width:72%;height:180px;border-width:7px}.story-stamp{right:-15%;width:83px;height:83px;top:35px;font-size:48px}.story-photo-note{font-size:7px;left:-20px;top:30%}.intro-copy{max-width:100%}.intro h2{font-size:83px}.intro .section-label{font-size:9px}.intro .lead{font-size:27px;line-height:1.3}.intro-copy>p:not(.lead):not(.section-label){font-size:12px;max-width:100%}h2{font-size:59px;letter-spacing:-1.9px}.section-label{font-size:9px;line-height:1.7;margin-bottom:20px}.section-heading{display:block;margin-bottom:32px}.section-heading>p,.gallery-note{font-size:12px;margin-top:24px;max-width:100%}.occasion-grid{grid-template-columns:1fr;gap:22px}.occasion-card{height:460px}.occasion-card:nth-child(2),.occasion-card:nth-child(3){margin-top:0}.occasion-card:nth-child(2) img{object-position:center}.occasion-content{inset:auto 25px 28px}.occasion-content strong{font-size:49px}.occasion-content small{font-size:9px}.occasion-description{font-size:11px;min-height:0;max-width:100%;margin-top:8px}.occasion-more{font-size:10px;margin-top:25px;padding-top:15px}.occasion-more i{width:35px;height:35px;font-size:20px}.inspiration-note{font-size:7px;margin-top:22px;text-align:left}.gallery-note br{display:none}.filters{gap:7px;margin-bottom:30px}.filters button{padding:9px 12px;font-size:9px}.gallery-grid{grid-template-columns:1fr 1fr;gap:15px}.gallery-item:nth-child(3n+2){margin-top:0}.gallery-item:nth-child(even){margin-top:32px}.gallery-item .photo,.gallery-item:nth-child(3n+2) .photo{height:220px}.gallery-item:nth-child(even) .photo{height:275px}.gallery-item-caption{display:block;padding:13px 0 3px}.gallery-item-caption strong{font-size:21px}.gallery-item-caption small{font-size:7px;white-space:normal}.gallery-item .photo:after{width:30px;height:30px;right:10px;bottom:10px;font-size:17px}.attribution{font-size:8px;margin-top:30px}.studio-inner{display:flex;flex-direction:column;min-height:0}.studio-copy{padding:65px 6% 5px}.studio h2{font-size:80px}.studio-copy>p:not(.section-label){font-size:12px;max-width:310px;margin-top:25px}.palette-options{gap:10px;margin-top:20px}.palette-options button{min-width:86px;font-size:9px}.studio .text-link{margin-top:25px}.scene-wrap,#balloon-scene{min-height:480px;height:480px}.scene-wrap{margin-top:-5px}.scene-ring{width:75%;top:12%}.scene-caption{bottom:20px;font-size:8px}.scene-fallback{inset:0;transform:scale(.75)}.studio-plinth{bottom:90px}.process-grid{grid-template-columns:1fr;gap:30px;margin-top:40px}.process-grid article{display:grid;grid-template-columns:48px 1fr;column-gap:20px;border-top:1px solid var(--line);padding-top:25px}.step-number{grid-row:1/3;margin:0;padding:0;border:0;font-size:38px}.process-grid h3{font-size:32px;margin-bottom:12px}.process-grid p{font-size:12px;max-width:100%}.faq{display:block}.faq-list{margin-top:35px}.faq-list summary{font-size:12px;padding-top:21px;padding-bottom:21px}.contact-section{display:flex;flex-direction:column;gap:42px;align-items:stretch}.contact-photo{height:380px;width:100%}.contact-photo>p{font-size:37px;bottom:30px;left:25px}.contact-copy h2{font-size:60px}.contact-copy>p:not(.section-label){font-size:12px;max-width:310px}.contact-icon{display:block!important}.contact-link{gap:15px;padding:21px 0}.contact-link .contact-icon{width:24px}.contact-icon.whatsapp-icon{width:25px;margin-right:0}.contact-link strong{font-size:23px}.contact-copy>.button{margin-top:30px}.button{font-size:11px}.closing{height:450px}.closing-content{padding:24px 6%}.closing h2{font-size:70px;margin-bottom:35px}.closing .section-label{font-size:8px;max-width:250px}.closing .button{font-size:10px;gap:20px}.closing>img{object-position:55% center}footer{padding:55px 6% 95px;grid-template-columns:1fr;gap:28px}footer .brand>span{font-size:40px}footer>p{font-size:11px}.footer-links{grid-column:1;grid-row:auto;align-items:start;font-size:11px;gap:12px}.footer-bottom{margin-top:10px;gap:20px;font-size:8px}.footer-bottom>span:nth-child(2){order:3;font-size:7px}.floating-whatsapp{bottom:16px;right:15px;padding:13px 17px;gap:10px;font-size:10px}.consult-dialog{max-width:95vw;max-height:94svh}.consult-form-wrap{padding:40px 24px 27px}.consult-form-wrap h2{font-size:49px}.form-row{gap:15px}.form-intro{max-width:260px}form label{font-size:9px}.result-actions{gap:18px}.result-actions .button{width:100%;justify-content:center}.lightbox figure{margin:70px 35px 55px;height:calc(100% - 125px)}.lightbox figcaption{font-size:10px;line-height:1.8}.lightbox-prev{left:0}.lightbox-next{right:0}.lightbox-prev,.lightbox-next{font-size:48px;padding:5px}.credits-dialog{padding:45px 25px}.credits-dialog h2{font-size:45px}.credits-dialog>p:last-child{font-size:11px}}
@media(max-width:360px){.hero-editorial{width:110px;bottom:13%}.hero-editorial-photo{height:85px}.hero{min-height:735px}.hero-content{padding-top:155px}.hero-foot>span{max-width:220px}.hero h1{font-size:17vw}.palette-options{gap:3px}.contact-link strong{font-size:20px}.filters button{font-size:8px;padding:8px 10px}}
@media(hover:hover) and (pointer:fine){.gallery-cursor{display:flex}.gallery-section:has(.gallery-item:hover) .gallery-cursor{opacity:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-photo{transform:none!important}.hero-photo img{transform:none}.reveal-photo{clip-path:none!important}.gallery-cursor{display:none!important}}

/* The contact card remains full-width when its WhatsApp link is a form trigger. */
button.contact-link{width:100%;text-align:left;background:transparent;border-top:0;border-left:0;border-right:0}

/* Mobile reliability: the canvas must never contribute intrinsic size to its grid. */
.scene-wrap{height:740px;min-height:0}
#balloon-scene{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;max-width:100%;max-height:100%}
.studio-inner{align-items:stretch}
.enable-3d{position:absolute;left:50%;bottom:78px;transform:translateX(-50%);z-index:4;background:var(--ink);color:var(--ivory);padding:13px 22px;border-radius:30px;min-height:44px;font-size:12px;white-space:nowrap}
body.dialog-open{overflow:hidden}
dialog{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
dialog.dialog-fallback[open]{position:fixed;inset:0;margin:auto;z-index:100;box-shadow:0 0 0 100vmax #080d08c9}
@media(max-width:850px){.scene-wrap{height:650px}}
@media(max-width:560px){
.scene-wrap{height:480px;min-height:0}#balloon-scene{height:100%;min-height:0}
header{padding-top:env(safe-area-inset-top,0px)}
.hero{min-height:720px;height:100vh;height:100svh}
input,select,textarea{font-size:16px;min-height:44px}
button.language{min-width:44px;min-height:44px}.menu-toggle{min-width:44px;min-height:44px}
.filters button{min-height:44px;font-size:11px}
.palette-options button{min-height:75px}
.floating-whatsapp{bottom:calc(14px + env(safe-area-inset-bottom,0px));min-height:48px}
.consult-dialog{max-height:90vh;max-height:calc(94svh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));width:95vw}
.consult-form-wrap{padding-bottom:calc(27px + env(safe-area-inset-bottom,0px))}
.dialog-close{min-width:44px;min-height:44px;top:10px;right:10px}
.hero-editorial{pointer-events:auto}
}
@media(pointer:coarse){.hero-photo,.hero-photo img{transform:none!important}.hero-sparkles{display:none}.occasion-marquee>div{animation:none}.hero-editorial{animation:none}}

/* Photography is content, never hidden behind an animation observer. */
.reveal-photo,.motion-ready .reveal-photo:not(.is-visible){clip-path:none!important}
@media(max-width:560px){.consult-dialog>.dialog-close{position:sticky;display:block;top:10px;margin:10px 10px -54px auto;right:auto}}
