@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Inter:wght@400;500;600;700;800&display=swap');
:root{--ink:#17130f;--navy:#101725;--cream:#f7f2e9;--cream2:#fbf9f5;--gold:#b77a35;--gold2:#d9a45d;--gold-soft:#efe0c8;--muted:#716b62;--line:#e8dfd2;--white:#fff;--shadow:0 24px 70px rgba(40,27,13,.12);--shadow2:0 12px 35px rgba(40,27,13,.08);--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream2);font-family:Inter,Arial,sans-serif;line-height:1.7;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(circle at 10% 10%,rgba(214,169,103,.10),transparent 28%),radial-gradient(circle at 90% 25%,rgba(16,23,37,.05),transparent 28%)}a{text-decoration:none;color:inherit}.container{width:min(1180px,92%);margin:auto}.scroll-progress{position:fixed;left:0;top:0;height:3px;width:0;background:linear-gradient(90deg,var(--gold),#f0c980,var(--gold));z-index:9999;box-shadow:0 0 16px rgba(183,122,53,.45)}.topbar{background:var(--navy);color:#f8efe2;font-size:12px;letter-spacing:.2px;padding:7px 0}.topbar .container{display:flex;justify-content:flex-end;gap:24px}.nav{position:sticky;top:0;z-index:100;background:rgba(251,249,245,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(183,122,53,.14);transition:.35s}.nav.scrolled{box-shadow:0 10px 35px rgba(30,20,10,.08);background:rgba(251,249,245,.95)}.navin{height:82px;display:flex;align-items:center;justify-content:space-between;transition:.35s}.nav.scrolled .navin{height:68px}.logo{display:flex;align-items:center;gap:9px;font-weight:800;font-size:22px;letter-spacing:-.7px;color:var(--navy)}.logo-mark{width:34px;height:34px;border-radius:11px;background:linear-gradient(145deg,var(--navy),#334563);display:grid;place-items:center;color:#fff;font-family:Georgia,serif;font-size:20px;box-shadow:0 8px 20px rgba(16,23,37,.2)}.logo .brand-name{color:var(--navy)}.logo .brand-name span{color:var(--gold)}.menu{display:flex;gap:25px;align-items:center;font-size:13px;font-weight:600}.menu a{position:relative}.menu a:not(.btn):after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:1px;background:var(--gold);transition:.25s}.menu a:hover:after,.menu a.active:after{width:100%}.menu a:hover,.menu a.active{color:var(--gold)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 21px;border-radius:999px;background:linear-gradient(135deg,#9b6226,#d0a05b);color:#fff;font-weight:700;border:1px solid rgba(183,122,53,.55);cursor:pointer;box-shadow:0 10px 25px rgba(183,122,53,.22);transition:transform .25s,box-shadow .25s,filter .25s}.btn:after{content:"→";font-size:16px;transition:.25s}.btn:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(183,122,53,.28);filter:saturate(1.08)}.btn:hover:after{transform:translateX(4px)}.btn.alt{background:transparent;color:var(--ink);border-color:#cdbca3;box-shadow:none}.mobile{display:none}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;width:44px;height:44px;border-radius:12px;font-size:20px}.mobile-menu{display:none}
.hero{position:relative;overflow:hidden;padding:92px 0 105px;background:radial-gradient(circle at 75% 42%,rgba(221,185,130,.28),transparent 25%),linear-gradient(135deg,#fbf8f2,#f0e6d7)}.hero:before,.pagehero:before{content:"";position:absolute;width:480px;height:480px;border:1px solid rgba(183,122,53,.17);border-radius:50%;right:-160px;top:-180px}.hero:after,.pagehero:after{content:"";position:absolute;right:2%;bottom:-55px;width:min(440px,42vw);height:440px;background:url('caricature.svg') center/contain no-repeat;opacity:.98;pointer-events:none;animation:float 7s ease-in-out infinite}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:55px;align-items:center;position:relative;z-index:2}.eyebrow{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:2.6px;color:var(--gold);display:inline-flex;align-items:center;gap:10px}.eyebrow:before{content:"";width:28px;height:1px;background:var(--gold)}h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;color:var(--navy);font-weight:700}h1{font-size:66px;line-height:.98;letter-spacing:-2.6px;margin:15px 0 22px;max-width:790px}h2{font-size:43px;line-height:1.05;letter-spacing:-1.3px;margin:0 0 15px}h3{font-size:23px;line-height:1.1;margin:8px 0}.lead{font-size:17px;color:var(--muted);max-width:690px}.actions{display:flex;gap:13px;margin-top:30px;flex-wrap:wrap}.heroimg{width:100%;height:475px;object-fit:cover;border-radius:30px;box-shadow:var(--shadow);border:8px solid rgba(255,255,255,.55);animation:heroIn 1s ease both}.section{padding:94px 0;position:relative}.section.alt{background:linear-gradient(180deg,#f5eee3,#f8f5ef)}.center{text-align:center}.sub{color:var(--muted);max-width:740px;margin:0 auto 42px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.card{position:relative;background:rgba(255,255,255,.78);border:1px solid rgba(183,122,53,.17);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow2);transition:transform .35s,box-shadow .35s,border-color .35s;overflow:hidden}.card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.75),transparent 55%);pointer-events:none}.card:hover{transform:translateY(-8px);box-shadow:var(--shadow);border-color:rgba(183,122,53,.38)}.icon{width:52px;height:52px;border-radius:16px;background:linear-gradient(145deg,#1b273b,#0e1421);color:#e7b96f;display:grid;place-items:center;font-weight:900;margin-bottom:17px;box-shadow:0 10px 20px rgba(16,23,37,.16)}.card p{color:var(--muted);font-size:14px}.portal{padding:0}.portal img,.portfolio img{width:100%;height:215px;object-fit:cover;display:block;transition:transform .6s}.portal:hover img,.portfolio:hover img{transform:scale(1.045)}.portal-body,.portfolio-body{padding:23px}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.tag{background:var(--gold-soft);color:#765020;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.3px}.pagehero{position:relative;overflow:hidden;padding:90px 0;background:linear-gradient(110deg,#111827,#222b3d 52%,#5a4027);color:#fff}.pagehero:after{opacity:.58;right:3%;bottom:-105px}.pagehero h1,.pagehero h2{color:#fff;max-width:700px}.pagehero p{max-width:760px;color:#e6ded1}.crumb{font-size:12px;color:#cdbd9f;margin-bottom:13px;letter-spacing:.5px}.feature{display:flex;gap:15px;margin:19px 0;color:var(--muted)}.check{color:var(--gold);font-weight:900}.case{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.case img{width:100%;border-radius:26px;box-shadow:var(--shadow);border:5px solid #fff}.contact{display:grid;grid-template-columns:1fr 1fr;gap:45px}.form{background:rgba(255,255,255,.84);border:1px solid rgba(183,122,53,.2);padding:32px;border-radius:24px;box-shadow:var(--shadow)}label{font-size:12px;font-weight:800;display:block;margin:14px 0 6px;color:#433a30}input,select,textarea{width:100%;padding:14px 15px;border:1px solid #ded4c5;border-radius:12px;background:#fff;font:inherit;outline:none;transition:.25s}input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(183,122,53,.10)}textarea{min-height:140px;resize:vertical}.form .btn{margin-top:18px}.footer{position:relative;background:#101725;color:#cfc6b8;padding:65px 0 25px;overflow:hidden}.footer:before{content:"";position:absolute;right:-120px;top:-150px;width:380px;height:380px;border:1px solid rgba(217,164,93,.16);border-radius:50%}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:34px;position:relative}.footer .logo{color:#fff}.footer .logo .brand-name{color:#fff}.footer .logo .brand-name span{color:#e6b96f}.footer .logo-mark{background:linear-gradient(145deg,#e1b36d,#8f5a28)}.footer p{max-width:360px;font-size:14px;line-height:1.8}.footer h3{color:#fff;font-size:20px}.footer a{display:block;margin:9px 0;font-size:13px;color:#d5cbbd;transition:.2s}.footer a:hover{color:#e6b96f;transform:translateX(3px)}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:38px;padding-top:18px;font-size:12px;color:#a89f92}.portfolio img{height:235px}.filter{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:25px 0 42px}.filter a{padding:9px 15px;border:1px solid #d9cebf;border-radius:999px;font-size:12px;background:#fff;transition:.25s}.filter a:hover,.filter a.active{background:var(--navy);color:#fff;border-color:var(--navy);transform:translateY(-2px)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:35px}.stat{padding:26px;border-radius:18px;background:#fff;border:1px solid var(--line);text-align:center;box-shadow:var(--shadow2)}.stat strong{font-size:31px;color:var(--gold);display:block;font-family:"Cormorant Garamond",Georgia,serif}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}.delay-3{transition-delay:.24s}.delay-4{transition-delay:.32s}.shine{position:relative;overflow:hidden}.shine:after{content:"";position:absolute;top:-120%;left:-40%;width:25%;height:340%;transform:rotate(22deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);animation:shine 5s ease-in-out infinite}.gold-line{width:70px;height:2px;background:linear-gradient(90deg,var(--gold),transparent);margin:22px 0}.floating-badge{position:absolute;right:6%;top:12%;z-index:4;padding:12px 16px;border-radius:15px;background:rgba(255,255,255,.86);border:1px solid rgba(183,122,53,.25);box-shadow:var(--shadow2);font-size:11px;font-weight:800;backdrop-filter:blur(12px);animation:float 5s ease-in-out infinite}.mobile-menu{position:absolute;top:100%;left:0;right:0;background:rgba(251,249,245,.98);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);padding:14px 4%;box-shadow:0 20px 30px rgba(30,20,10,.08)}.mobile-menu.open{display:block}.mobile-menu a{display:block;padding:13px 0;border-bottom:1px solid #eee5d8;font-weight:600}.mobile-menu a:last-child{border-bottom:0}.cursor-glow{position:fixed;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(183,122,53,.10),transparent 68%);pointer-events:none;z-index:0;transform:translate(-50%,-50%);mix-blend-mode:multiply}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes heroIn{from{opacity:0;transform:translateX(25px) scale(.98)}to{opacity:1;transform:none}}@keyframes shine{0%,55%{left:-50%}75%,100%{left:130%}}@media(max-width:1000px){h1{font-size:52px}.hero-grid,.case,.contact{grid-template-columns:1fr}.hero:after{width:330px;height:330px;right:-25px;bottom:-55px;opacity:.65}.pagehero:after{width:290px;height:290px}.grid4{grid-template-columns:repeat(2,1fr)}.grid3{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.menu{display:none}.menu-toggle{display:grid;place-items:center}.heroimg{height:390px}.floating-badge{display:none}}@media(max-width:620px){.topbar{display:none}.navin{height:70px}.grid4,.grid3,.grid2,.stats{grid-template-columns:1fr}.section{padding:65px 0}.hero{padding:60px 0 78px}h1{font-size:43px;letter-spacing:-1.6px}h2{font-size:35px}.lead{font-size:16px}.actions{flex-direction:column}.actions .btn{width:100%}.heroimg{height:300px}.hero:after{width:230px;height:230px;right:-45px;bottom:-45px;opacity:.42}.pagehero{padding:65px 0 82px}.pagehero:after{width:220px;height:220px;right:-55px;bottom:-60px;opacity:.35}.footer-grid{grid-template-columns:1fr}.contact{gap:25px}.form{padding:23px}.logo{font-size:20px}.logo-mark{width:31px;height:31px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}

/* Package page */
.package-featured{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;background:linear-gradient(135deg,#fffdf9,#f2e7d8);border:1px solid rgba(183,122,53,.22);border-radius:30px;padding:42px;box-shadow:var(--shadow)}
.package-visual{position:relative}.package-visual img{width:100%;height:390px;object-fit:cover;border-radius:24px;box-shadow:var(--shadow)}
.floating-price{position:absolute;left:-18px;bottom:24px;background:#111827;color:#fff;border:1px solid rgba(228,189,130,.4);border-radius:18px;padding:16px 20px;font-family:"Cormorant Garamond",Georgia,serif;font-size:32px;font-weight:700;box-shadow:0 18px 35px rgba(16,23,37,.25)}
.floating-price span{display:block;font:700 10px Inter,Arial,sans-serif;letter-spacing:1px;text-transform:uppercase;color:#e7bd7c;margin-top:2px}
.price{font-family:"Cormorant Garamond",Georgia,serif;font-size:64px;line-height:1;color:var(--navy);font-weight:700;margin:28px 0 8px}.price span{font-size:34px;color:var(--gold)}.price small{font:700 11px Inter,Arial,sans-serif;color:var(--muted);text-transform:uppercase;letter-spacing:1.5px;margin-left:8px}
.package-option{padding:35px;text-align:left}.package-option h3{font-size:31px}.package-number{font:700 13px Inter,Arial,sans-serif;color:var(--gold);letter-spacing:2px;margin-bottom:10px}.featured-option{border-color:rgba(183,122,53,.45);box-shadow:0 22px 55px rgba(73,49,24,.13)}.recommended{display:inline-block;padding:6px 10px;border-radius:999px;background:var(--gold-soft);color:#755021;font:800 10px Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.feature-list{list-style:none;padding:0;margin:24px 0}.feature-list li{padding:9px 0;border-bottom:1px solid #eee4d6;color:var(--muted);font-size:14px}.feature-list li:before{content:"✓";color:var(--gold);font-weight:900;margin-right:10px}.package-strip{display:flex;justify-content:space-between;align-items:center;gap:30px;background:linear-gradient(110deg,#101725,#222b3d 55%,#5b4027);color:#fff;border-radius:28px;padding:36px 42px;box-shadow:var(--shadow)}.package-strip h2{color:#fff;margin-bottom:7px}.package-strip p{color:#d8d0c4;margin:0;max-width:650px}.package-strip-price{font:700 42px "Cormorant Garamond",Georgia,serif;text-align:center;white-space:nowrap}.package-strip-price .btn{display:flex;margin-top:12px;font:700 13px Inter,Arial,sans-serif}.package-includes .card{text-align:left}
@media(max-width:800px){.package-featured{grid-template-columns:1fr;padding:28px}.package-visual img{height:300px}.floating-price{left:12px}.package-strip{flex-direction:column;align-items:flex-start;padding:30px}.package-strip-price{text-align:left}}
