/* PHOTOGRAPHLY — Premium Photography Website */
:root{
--bg:#f8f7f4;--bg-secondary:#efede8;--surface:#fff;--text:#171715;--text-light:#68665f;
--border:rgba(23,23,21,.12);--gold:#c69b55;--gold-dark:#a67b38;--dark:#11110f;
--font-heading:"Cormorant Garamond",serif;--font-body:"DM Sans",sans-serif;
--transition:.4s cubic-bezier(.22,1,.36,1)
}
body.dark-mode{--bg:#11110f;--bg-secondary:#181815;--surface:#1c1c19;--text:#f4f2ec;--text-light:#aaa79f;--border:rgba(255,255,255,.12);--dark:#090908}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{font-family:var(--font-body);background:var(--bg);color:var(--text);transition:background .4s,color .4s;overflow-x:hidden}
a{text-decoration:none;color:inherit}img{max-width:100%;display:block}
.section-padding{padding:120px 0}
.section-label{display:inline-flex;align-items:center;gap:10px;font-size:11px;font-weight:700;letter-spacing:2.5px;color:var(--gold-dark);margin-bottom:25px}
.section-label::before{content:"";width:30px;height:1px;background:var(--gold)}
.section-label.light{color:#d8b26d}
.section-title{font-family:var(--font-heading);font-size:clamp(3rem,5vw,5rem);line-height:.95;font-weight:500;letter-spacing:-1px}
.section-title em{color:var(--gold);font-weight:400}
.section-text{color:var(--text-light);line-height:1.9;font-size:15px}
.text-link{display:inline-flex;align-items:center;gap:12px;margin-top:25px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;border-bottom:1px solid var(--text);padding-bottom:8px;transition:var(--transition)}
.text-link:hover{color:var(--gold);border-color:var(--gold);gap:18px}
.btn{border-radius:0;padding:14px 25px;font-size:12px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;transition:var(--transition)}
.btn-gold{background:var(--gold);border:1px solid var(--gold);color:#fff}
.btn-gold:hover{background:var(--gold-dark);border-color:var(--gold-dark);color:#fff;transform:translateY(-3px)}
.btn-outline-dark{border:1px solid var(--text);color:var(--text)}
.btn-outline-dark:hover{background:var(--text);color:var(--bg)}
.section-heading{max-width:750px;margin:auto}.section-heading p{color:var(--text-light);margin-top:25px;line-height:1.8}
.navbar{padding:20px 0;transition:.4s;z-index:1000}.navbar.scrolled{background:rgba(248,247,244,.94);backdrop-filter:blur(15px);box-shadow:0 10px 40px rgba(0,0,0,.06);padding:13px 0}.dark-mode .navbar.scrolled{background:rgba(17,17,15,.94)}
.logo,.footer-logo{font-size:20px;font-weight:700;letter-spacing:3px}.logo span,.footer-logo span{font-weight:400;color:var(--gold)}
.navbar-nav{gap:25px}.nav-link{color:var(--text)!important;font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;position:relative}
.nav-link::after{content:"";position:absolute;bottom:2px;left:8px;width:0;height:1px;background:var(--gold);transition:var(--transition)}
.nav-link:hover::after,.nav-link.active::after{width:calc(100% - 16px)}
.nav-actions{display:flex;align-items:center;gap:15px}.theme-toggle{width:42px;height:42px;border:1px solid var(--border);background:transparent;color:var(--text);border-radius:50%;transition:var(--transition)}
.theme-toggle:hover{background:var(--text);color:var(--bg);transform:rotate(15deg)}
.hero{min-height:100vh;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden;background:#161614}
.hero-bg{position:absolute;inset:0;background-image:url("https://images.unsplash.com/photo-1606800052052-a08af7148866?auto=format&fit=crop&w=2200&q=90");background-size:cover;background-position:center;animation:heroZoom 12s ease-in-out infinite alternate}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.75),rgba(0,0,0,.25))}
@keyframes heroZoom{from{transform:scale(1)}to{transform:scale(1.08)}}
.hero-tag{display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:3px;font-weight:700;margin-bottom:30px}.hero-tag span{width:35px;height:1px;background:var(--gold)}
.hero-title{font-family:var(--font-heading);font-size:clamp(4rem,8vw,8rem);font-weight:400;line-height:.83;letter-spacing:-3px}.hero-title em{color:#d3a860}
.hero-description{max-width:550px;margin-top:35px;color:rgba(255,255,255,.8);line-height:1.8;font-size:15px}.hero-buttons{display:flex;gap:15px;margin-top:40px}
.hero-side{display:flex;flex-direction:column;align-items:flex-end;gap:35px}.hero-number{display:flex;align-items:center;gap:15px}.hero-number strong{font-family:var(--font-heading);font-size:55px;font-weight:400;color:#d3a860}.hero-number span{font-size:11px;line-height:1.5;text-transform:uppercase;letter-spacing:1px;color:rgba(255,255,255,.7)}
.scroll-indicator{position:absolute;bottom:35px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;font-size:9px;letter-spacing:2px;color:rgba(255,255,255,.7)}.scroll-indicator i{animation:bounce 1.8s infinite}
@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}
.about{background:var(--bg-secondary)}.about-image{position:relative}.about-image img{width:100%;height:650px;object-fit:cover}
.image-badge{position:absolute;bottom:30px;right:-25px;background:var(--gold);color:#fff;padding:25px;display:flex;flex-direction:column}.image-badge strong{font-size:13px;letter-spacing:2px}.image-badge span{font-size:10px;letter-spacing:2px;margin-top:5px}
.about-content{padding-left:40px}.about-content>p{color:var(--text-light);line-height:1.9;font-size:15px;margin-top:25px}
.about-stats{display:flex;gap:40px;margin-top:40px;padding-top:30px;border-top:1px solid var(--border)}.about-stats div{display:flex;flex-direction:column}.about-stats strong{font-family:var(--font-heading);font-size:40px;font-weight:500;color:var(--gold)}.about-stats span{color:var(--text-light);font-size:10px;text-transform:uppercase;letter-spacing:1px}
.service-card{height:100%;padding:40px 30px;background:var(--surface);border:1px solid var(--border);position:relative;overflow:hidden;transition:var(--transition)}
.service-card::before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:var(--transition)}
.service-card:hover{transform:translateY(-10px);box-shadow:0 20px 50px rgba(0,0,0,.08)}.service-card:hover::before{transform:scaleX(1)}
.service-number{font-size:11px;color:var(--gold);letter-spacing:2px}.service-icon{width:55px;height:55px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;margin:45px 0 25px;font-size:20px;transition:var(--transition)}
.service-card:hover .service-icon{background:var(--gold);color:#fff;border-color:var(--gold);transform:rotate(8deg)}
.service-card h3{font-family:var(--font-heading);font-size:32px;font-weight:500}.service-card p{color:var(--text-light);font-size:13px;line-height:1.8;margin:15px 0 30px}.service-card a{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.service-card a i{margin-left:8px;color:var(--gold)}
.portfolio{background:var(--bg-secondary)}.portfolio-header{display:flex;justify-content:space-between;align-items:end;margin:0 auto 45px;max-width:1400px}
.portfolio-grid{max-width:1400px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:350px;gap:15px}.portfolio-item{position:relative;overflow:hidden}.portfolio-large{grid-column:span 2;grid-row:span 2}
.portfolio-item img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.22,1,.36,1)}.portfolio-item:hover img{transform:scale(1.08)}
.portfolio-overlay{position:absolute;inset:0;display:flex;align-items:end;padding:30px;background:linear-gradient(transparent 40%,rgba(0,0,0,.8));opacity:0;transition:var(--transition)}.portfolio-item:hover .portfolio-overlay{opacity:1}
.portfolio-overlay span{color:#d3a860;font-size:9px;font-weight:700;letter-spacing:2px}.portfolio-overlay h3{color:#fff;font-family:var(--font-heading);font-size:32px;font-weight:400;margin-top:5px}
.process{background:var(--bg)}.process-list{border-top:1px solid var(--border)}.process-item{display:grid;grid-template-columns:70px 1fr;gap:25px;padding:35px 0;border-bottom:1px solid var(--border)}.process-item>span{font-size:12px;color:var(--gold);font-weight:700}.process-item h3{font-family:var(--font-heading);font-size:30px;font-weight:500}.process-item p{color:var(--text-light);font-size:14px;line-height:1.8;margin-top:8px}
.packages{background:var(--bg-secondary)}.package-card{background:var(--surface);border:1px solid var(--border);padding:45px 35px;height:100%;position:relative;transition:var(--transition)}.package-card:hover{transform:translateY(-8px);box-shadow:0 20px 60px rgba(0,0,0,.08)}.package-card.featured{border:1px solid var(--gold)}
.popular{position:absolute;top:0;right:0;padding:8px 15px;background:var(--gold);color:#fff;font-size:9px;letter-spacing:1.5px;font-weight:700}.package-type{font-size:10px;color:var(--gold-dark);font-weight:700;letter-spacing:2px}.package-card h3{font-family:var(--font-heading);font-size:42px;font-weight:500;margin:20px 0 5px}.package-price{font-family:var(--font-heading);font-size:38px;color:var(--gold)}.package-card>p{color:var(--text-light);font-size:13px;line-height:1.7;margin:20px 0}.package-card ul{list-style:none;padding:0;margin:25px 0 35px}.package-card li{padding:9px 0;border-bottom:1px solid var(--border);color:var(--text-light);font-size:13px}.package-card li i{color:var(--gold);margin-right:8px}
.testimonial{background:var(--dark);color:#fff}.testimonial-content{max-width:850px;margin:auto}.quote-icon{color:var(--gold);font-size:50px}.testimonial blockquote{font-family:var(--font-heading);font-size:clamp(2.5rem,5vw,4.5rem);line-height:1;font-weight:400;margin:15px 0 35px}.testimonial-author{display:flex;flex-direction:column}.testimonial-author strong{font-size:12px;letter-spacing:1.5px}.testimonial-author span{font-size:10px;color:#999;margin-top:7px}
.accordion{--bs-accordion-bg:transparent;--bs-accordion-border-color:var(--border);--bs-accordion-color:var(--text);--bs-accordion-btn-color:var(--text);--bs-accordion-active-color:var(--text);--bs-accordion-active-bg:transparent;--bs-accordion-btn-focus-box-shadow:none}.accordion-button{padding:25px 0;font-size:15px;font-weight:600}.accordion-button::after{background-image:none;content:"+";font-size:22px;color:var(--gold)}.accordion-button:not(.collapsed)::after{content:"−";transform:none}.accordion-body{color:var(--text-light);line-height:1.8;padding:0 0 25px;font-size:14px}
.contact-cta{position:relative;padding:150px 0;color:#fff;overflow:hidden;background:#111}.contact-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,.65),rgba(0,0,0,.75)),url("https://images.unsplash.com/photo-1496747611176-843222e1e57c?auto=format&fit=crop&w=2000&q=85");background-size:cover;background-position:center;background-attachment:fixed}
.contact-cta h2{font-family:var(--font-heading);font-size:clamp(3rem,6vw,6rem);line-height:.95;font-weight:400}.contact-cta h2 em{color:#d3a860}.contact-cta p{color:rgba(255,255,255,.7);margin:25px 0 35px}.contact-buttons{display:flex;justify-content:center;gap:15px}
.footer{background:var(--dark);color:#fff;padding:80px 0 30px}.footer-logo{color:#fff;display:inline-block;margin-bottom:20px}.footer p{color:#999;font-size:13px;line-height:1.8;max-width:350px}.footer h5{font-size:11px;text-transform:uppercase;letter-spacing:2px;margin-bottom:25px}.footer a:not(.footer-logo){display:block;color:#999;font-size:12px;margin-bottom:13px;transition:var(--transition)}.footer a:hover{color:var(--gold)}.social-links{display:flex;gap:10px;margin-top:25px}.social-links a{width:40px;height:40px;border:1px solid #333;display:flex!important;align-items:center;justify-content:center;margin:0!important}.footer-bottom{border-top:1px solid #292929;margin-top:60px;padding-top:25px;display:flex;justify-content:space-between;color:#666;font-size:10px;letter-spacing:1px}
.back-to-top{position:fixed;bottom:25px;right:25px;width:45px;height:45px;background:var(--gold);color:#fff;border:none;z-index:999;opacity:0;visibility:hidden;transform:translateY(15px);transition:var(--transition)}.back-to-top.show{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background:var(--gold-dark)}
.reveal{opacity:0;transform:translateY(35px);transition:opacity .9s ease,transform .9s cubic-bezier(.22,1,.36,1)}.reveal.active{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}
@media(max-width:991px){.section-padding{padding:90px 0}.navbar{background:var(--bg);box-shadow:0 5px 25px rgba(0,0,0,.05)}.navbar-nav{padding:25px 0;gap:5px}.nav-actions{padding-bottom:15px}.hero-side{display:none}.hero-title{font-size:clamp(4rem,12vw,7rem)}.about-content{padding-left:0}.portfolio-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:300px}.portfolio-large{grid-column:span 2;grid-row:span 1}.image-badge{right:15px}}
@media(max-width:767px){.section-padding{padding:70px 0}.section-title{font-size:3.3rem}.hero-title{font-size:4.5rem;letter-spacing:-2px}.hero-description{font-size:14px}.hero-buttons{flex-direction:column;align-items:flex-start}.scroll-indicator{display:none}.about-image img{height:480px}.about-stats{gap:20px;flex-wrap:wrap}.about-stats strong{font-size:32px}.portfolio-header{display:block}.portfolio-grid{grid-template-columns:1fr;grid-auto-rows:400px}.portfolio-large{grid-column:span 1}.portfolio-overlay{opacity:1}.contact-buttons{flex-direction:column;align-items:center}.contact-buttons .btn{width:230px}.footer-bottom{flex-direction:column;gap:10px}}
@media(max-width:480px){.container{padding-left:20px;padding-right:20px}.hero-title{font-size:3.8rem}.section-title{font-size:2.9rem}.hero{min-height:90vh}.portfolio-grid{grid-auto-rows:350px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
