:root{--bg:#f7f0e8;--bg-deep:#e5d4c0;--panel:#fff9f2c7;--text:#1e1714;--muted:#665447;--line:#1e171417;--accent:#c9a46a;--accent-dark:#8b6132;--shadow:0 28px 90px #2b1c1229;--serif:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;--sans:"Avenir Next", "Segoe UI", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--text);background:radial-gradient(circle at top left, #c9a46a33, transparent 24%), radial-gradient(circle at 80% 20%, #ffffffd1, transparent 22%), linear-gradient(180deg, #fbf6f0 0%, var(--bg) 44%, var(--bg-deep) 100%);min-height:100vh;margin:0}body.admin-mode{background:radial-gradient(circle at top,#24170f14,#0000 30%),linear-gradient(#f4ede3 0%,#eadfce 100%)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.page-shell{position:relative;overflow:hidden}.ambient{filter:blur(12px);opacity:.5;pointer-events:none;border-radius:999px;position:absolute}.ambient-left{background:#b35c332e;width:18rem;height:18rem;top:8rem;left:-8rem}.ambient-right{background:#7c37171f;width:16rem;height:16rem;top:28rem;right:-6rem}.topbar,.hero,.editorial-band,.portfolio,.gallery,.specialties,.process,.quote,.testimonials,.contact{width:min(1120px,100% - 2rem);margin:0 auto}.topbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(135deg,#120e0ceb,#261c16e6);border:1px solid #ffffff14;border-radius:999px;justify-content:space-between;align-items:center;margin-top:1rem;padding:.95rem 1.25rem;display:flex;box-shadow:0 18px 38px #120e0c3d}.brand{align-items:center;gap:0;display:inline-flex}.brand-logo{opacity:.96;border-radius:50%;width:7.25rem;max-width:52vw;height:auto;transition:transform .18s,opacity .18s,box-shadow .18s;box-shadow:0 10px 24px #1e171424}.brand:hover .brand-logo{opacity:1;transform:translateY(-1px);box-shadow:0 14px 28px #1e17142e}.brand-lockup{display:none}.brand-lockup strong{letter-spacing:.08em;text-transform:uppercase;font-size:.96rem}.brand-lockup small{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;font-size:.66rem}.nav{color:#fff4e8d1;gap:1.5rem;font-size:.95rem;display:inline-flex}.nav a{position:relative}.nav a:after{content:"";background:linear-gradient(90deg, transparent, var(--accent), transparent);transform-origin:50%;width:100%;height:1px;transition:transform .18s;position:absolute;bottom:-.35rem;left:0;transform:scaleX(0)}.nav a:hover:after{transform:scaleX(1)}.hero-seal{width:fit-content;color:var(--accent-dark);letter-spacing:.16em;text-transform:uppercase;background:#fff9f2ad;border:1px solid #c9a46a52;border-radius:999px;margin-bottom:1rem;padding:.45rem .8rem;font-size:.7rem;display:inline-flex}.hero{grid-template-columns:1.15fr .85fr;align-items:center;gap:2rem;padding:4rem 0 5rem;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.22em;color:var(--accent-dark);margin:0 0 1rem;font-size:.78rem}.hero h1,.section-heading h2,.contact h2{font-family:var(--serif);margin:0;font-size:clamp(3rem,6vw,5.6rem);font-weight:500;line-height:.93}.hero .lede,.contact-copy,.step p,.testimonial span,.portfolio-item span{color:var(--muted);line-height:1.7}.hero .lede{max-width:36rem;margin:1.5rem 0 2rem;font-size:1.08rem}.hero-note{max-width:30rem;color:var(--muted);margin-top:1.75rem;font-size:.96rem;line-height:1.8}.hero-actions{flex-wrap:wrap;gap:1rem;display:flex}.button{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:3.2rem;padding:0 1.4rem;transition:transform .18s,background-color .18s,border-color .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:linear-gradient(135deg, var(--text), #3f2b21);color:#fff8f2;box-shadow:0 12px 24px #1e171429}.button-primary:hover{background:linear-gradient(135deg, #3f2b21, var(--accent-dark))}.button-secondary{background:#fffcf79e;border-color:#1e17141f}.hero-metrics{flex-wrap:wrap;gap:1.5rem;padding-top:2.2rem;display:flex}.hero-metrics div{min-width:10rem}.hero-metrics strong{font-size:1.6rem;font-family:var(--serif);margin-bottom:.35rem;font-weight:500;display:block}.hero-metrics span{color:var(--muted)}.hero-art{gap:1.2rem;display:grid}.photo-card{min-height:18rem;box-shadow:var(--shadow);color:#fff6ee;background:linear-gradient(135deg,#daac8fd9,#572d1be6);border:1px solid #ffffff73;border-radius:2rem;flex-direction:column;justify-content:flex-end;padding:1.6rem;display:flex;position:relative;overflow:hidden}.photo-card:before{content:"";z-index:1;background:linear-gradient(120deg,#ffffff2e,#0000 38%),radial-gradient(circle at 100% 0,#fff4e933,#0000 24%);position:absolute;inset:0}.photo-card:after{content:"";z-index:1;background:linear-gradient(#0000 25%,#1a0f0bb3 100%);position:absolute;inset:0}.photo-card>*{z-index:2;position:relative}.photo-card span,.portfolio-item p,.step strong{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.08em;text-transform:uppercase;background:#fff7f01f;border-radius:999px;width:fit-content;margin-bottom:.8rem;padding:.35rem .65rem;font-size:.82rem;display:inline-flex}.photo-card h2{max-width:16rem;font-family:var(--serif);margin:0;font-size:2rem;font-weight:500;line-height:1.04}.tall{min-height:31rem}.wide{min-height:16rem;transform:translate(-3rem)}.portfolio,.editorial-band,.gallery,.specialties,.process,.testimonials,.contact{padding:2rem 0 5rem}.section-heading{gap:.8rem;margin-bottom:2rem;display:grid}.section-heading h2,.contact h2{max-width:14ch;font-size:clamp(2.2rem,4vw,4rem)}.editorial-band{grid-template-columns:.9fr 1.1fr;align-items:center;gap:1.4rem;display:grid}.editorial-copy h2{max-width:11ch;font-family:var(--serif);margin:0;font-size:clamp(2.2rem,4vw,4rem);font-weight:500;line-height:.98}.editorial-frame{grid-template-columns:.8fr 1.2fr;align-items:end;gap:1rem;display:grid}.editorial-photo{min-height:19rem;box-shadow:var(--shadow);background:linear-gradient(135deg,#daac8f38,#572d1b4d);border:1px solid #ffffff80;border-radius:2rem;position:relative;overflow:hidden}.editorial-photo-left{transform:translateY(2rem)}.editorial-photo-right{min-height:27rem}.portfolio-grid,.gallery-grid,.specialties,.steps,.testimonials{gap:1.2rem;display:grid}.portfolio-grid,.steps{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-grid{grid-template-columns:1.1fr .9fr .9fr;grid-auto-rows:minmax(16rem,auto)}.gallery-card,.specialty,.portfolio-item,.step,.testimonial,.contact-card{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow);border-radius:1.6rem;padding:1.5rem}.portfolio-item h3,.step h3,.gallery-card h3,.specialty h2{font-family:var(--serif);margin:0 0 .7rem;font-size:1.6rem;font-weight:500}.gallery-card{color:#fff8f1;background:radial-gradient(circle at 0 0,#fff3e833,#0000 28%),linear-gradient(140deg,#d7a888 0%,#9e5d40 45%,#533123 100%);flex-direction:column;justify-content:flex-end;min-height:18rem;display:flex;position:relative;overflow:hidden}.gallery-card:before{content:"";z-index:1;background:linear-gradient(#ffffff05,#28140cbf);position:absolute;inset:0}.gallery-card>*{z-index:2;position:relative}.gallery-card span{letter-spacing:.08em;text-transform:uppercase;background:#fff8f11f;border-radius:999px;width:fit-content;margin-bottom:.9rem;padding:.35rem .7rem;font-size:.8rem;display:inline-flex}.gallery-card h3{max-width:14ch;margin:0;font-size:2rem;line-height:1.03}.gallery-card-tall{grid-row:span 2;min-height:100%}.gallery-card-wide{grid-column:span 2}.specialties{grid-template-columns:repeat(2,minmax(0,1fr))}.specialty{position:relative;overflow:hidden}.specialty:before{content:"";pointer-events:none;background:radial-gradient(circle at 100% 0,#ffffff59,#0000 24%),linear-gradient(145deg,#b35c331f,#0000 45%);position:absolute;inset:0}.specialty>*{z-index:1;position:relative}.specialty h2{max-width:12ch;font-size:clamp(2rem,3vw,2.8rem);line-height:.98}.specialty p:last-child{color:var(--muted);margin:0;line-height:1.8}.specialty-wedding{background:linear-gradient(#fffbf7d1,#fff3eae0),linear-gradient(120deg,#f5ece2,#efd8ca)}.specialty-reception{background:linear-gradient(#fffbf7d1,#fdf5eee0),linear-gradient(120deg,#f7efe8,#f1dfd2)}.quote{padding:2rem 0 4rem}.quote p{max-width:18ch;font-family:var(--serif);margin:0;font-size:clamp(2rem,4.5vw,4rem);line-height:1.02}.testimonials{grid-template-columns:repeat(2,minmax(0,1fr))}.testimonial p{margin:0 0 1rem;font-size:1.12rem;line-height:1.8}.contact{grid-template-columns:.9fr 1.1fr;align-items:start;gap:1.6rem;padding-bottom:6rem;display:grid}.contact-card{gap:1rem;display:grid}.contact-card label{color:var(--muted);gap:.5rem;font-size:.95rem;display:grid}.contact-card input,.contact-card select,.contact-card textarea{width:100%;color:var(--text);background:#fffcf8e6;border:1px solid #24170f1f;border-radius:1rem;padding:.95rem 1rem}.contact-card textarea{resize:vertical;min-height:7rem}.contact-form-status{min-height:1.4rem;color:var(--accent-dark);margin:-.15rem 0 0;font-size:.94rem}.floating-whatsapp{z-index:20;color:#f8fffb;letter-spacing:.03em;background:#1f9d61;border-radius:999px;justify-content:center;align-items:center;min-height:3.5rem;padding:0 1.25rem;font-weight:700;display:inline-flex;position:fixed;bottom:1.25rem;right:1.25rem;box-shadow:0 18px 38px #1f9d6152}.floating-admin{z-index:20;color:#fff4e8eb;letter-spacing:.04em;background:#120e0ce0;border:1px solid #ffffff14;border-radius:999px;justify-content:center;align-items:center;min-height:2.9rem;padding:0 1rem;font-size:.92rem;display:inline-flex;position:fixed;bottom:5.35rem;right:1.25rem;box-shadow:0 14px 30px #120e0c2e}.contact-links{flex-wrap:wrap;gap:1rem;margin-top:1.5rem;display:flex}.admin-shell{place-items:center;width:min(1120px,100% - 2rem);min-height:100vh;margin:0 auto;padding:3rem 0;display:grid}.admin-card,.admin-panel{border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);width:100%;box-shadow:var(--shadow);background:#fffaf3d1;border-radius:2rem}.admin-card{max-width:34rem;padding:2rem}.admin-card h1,.admin-heading h1{font-family:var(--serif);margin:0;font-size:clamp(2.4rem,5vw,4rem);font-weight:500;line-height:.95}.admin-copy,.admin-hint,.admin-success,.admin-error{color:var(--muted);line-height:1.6}.admin-status{border:1px solid var(--line);border-radius:1rem;margin:0 0 1rem;padding:.9rem 1rem}.admin-status-success{color:#2c5f3f;background:#2c5f3f14}.admin-status-error{color:var(--accent-dark);background:#7c371714}.admin-login,.editor-grid{gap:1rem;display:grid}.admin-login label,.editor-group label{color:var(--muted);gap:.5rem;display:grid}.admin-login input,.editor-group input,.editor-group textarea{width:100%;color:var(--text);background:#fffcf8e6;border:1px solid #24170f1f;border-radius:1rem;padding:.95rem 1rem}.admin-error{color:var(--accent-dark)}.admin-panel{padding:2rem}.admin-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;display:flex}.admin-actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;display:flex}.editor-grid{gap:1.5rem}.image-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.image-editor-card{border:1px solid var(--line);background:#ffffff57;border-radius:1.2rem;gap:.75rem;padding:1rem;display:grid}.image-editor-title{font-family:var(--serif);margin:0;font-size:1.15rem}.image-upload-hint{color:var(--accent-dark);margin:-.1rem 0 0;font-size:.94rem}.image-drag-hint{color:var(--muted);margin:-.25rem 0 0;font-size:.9rem}.image-editor-card label:has([data-zoom-input]){gap:.45rem;display:grid}.image-editor-card [data-zoom-input]{width:100%}.image-zoom-value{color:var(--accent-dark);font-size:.92rem}.image-preview{aspect-ratio:4/3;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background-color:#1e171414;border:1px solid #1e171414;border-radius:1rem;width:100%;position:relative;overflow:hidden}.image-preview.is-dragging{cursor:grabbing}.image-preview-tall{aspect-ratio:.9/1.5;min-height:24rem}.image-preview-wide{aspect-ratio:1.9}.image-preview-gallery{aspect-ratio:1}.image-preview-gallery-tall{aspect-ratio:1/1.9;min-height:23rem}.image-preview-gallery-wide{aspect-ratio:2}.cover-media{object-fit:cover;object-position:center;transform-origin:50%;will-change:transform, object-position;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.image-editor-actions{flex-wrap:wrap;gap:.75rem;display:flex}.image-upload-button{position:relative;overflow:hidden}.sr-only-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.editor-group{border:1px solid var(--line);background:#ffffff6b;border-radius:1.4rem;margin:0;padding:1.25rem}.editor-group legend{color:var(--accent-dark);padding:0 .45rem;font-weight:600}.editor-submit{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}.reveal.visible{opacity:1;transform:translateY(0)}@media (width<=920px){.nav{display:none}.topbar{justify-content:center;padding:1rem 1.1rem}.brand-logo{width:min(7rem,100%);max-width:100%}.hero,.editorial-band,.editorial-frame,.image-editor-grid,.gallery-grid,.specialties,.contact,.portfolio-grid,.steps,.testimonials{grid-template-columns:1fr}.wide{transform:none}.hero{padding-top:2rem}.gallery-card-tall,.gallery-card-wide{grid-area:auto}.admin-heading{flex-direction:column}.editorial-photo-left{transform:none}}@media (width<=640px){.topbar,.hero,.editorial-band,.portfolio,.gallery,.specialties,.process,.quote,.testimonials,.contact{width:min(1120px,100% - 1.25rem)}.hero h1,.section-heading h2,.contact h2,.quote p{line-height:1}.photo-card,.tall,.wide{min-height:16rem}.hero-metrics{grid-template-columns:1fr 1fr;display:grid}.brand-logo{width:100%;max-width:6.2rem}.floating-whatsapp{bottom:.9rem;right:.9rem}.floating-admin{bottom:4.95rem;right:.9rem}}
