*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f6f5f1;color:#242723;font-family:"DM Sans",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.site-header{height:86px;padding:0 6.2vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e6e4dd;background:#f6f5f1;position:sticky;top:0;z-index:10}.brand{font-family:Manrope,sans-serif;font-weight:800;font-size:22px;letter-spacing:-1.4px}.brand span{font-weight:400}.brand i{font-style:normal;font-size:8px;vertical-align:top;margin-left:3px}.desktop-nav{display:flex;gap:38px;margin-left:80px}.desktop-nav a,.header-cta,.lang-switch{font-size:12px;font-weight:600}.desktop-nav a{color:#666b63;transition:color .2s}.desktop-nav a:hover{color:#1e211e}.header-actions{display:flex;align-items:center;gap:22px}.lang-switch{border:0;background:transparent;cursor:pointer;padding:8px;color:#676b64}.header-cta{border-bottom:1px solid #333;padding:10px 0}.menu-toggle{display:none;border:0;background:none;font-size:22px}.hero{min-height:680px;padding:78px 6.2vw 45px;display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center;overflow:hidden}.hero-copy{padding:15px 0 0}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;color:#777d73;display:flex;align-items:center;gap:9px}.dot{height:6px;width:6px;border-radius:50%;background:#a5a991}.hero h1,.section-heading h2,.about-copy h2,.contact-section h2{font-family:Manrope,sans-serif;font-weight:500;letter-spacing:-4.8px;line-height:.99}.hero h1{font-size:clamp(64px,7.5vw,112px);margin:34px 0 25px}.hero h1 em,.section-heading h2 em,.about-copy h2 em,.contact-section h2 em{font-family:Georgia,serif;font-weight:400}.hero-intro{font-size:15px;line-height:1.85;color:#696e66;max-width:420px}.hero-buttons{display:flex;align-items:center;gap:28px;margin-top:35px}.button{display:inline-flex;align-items:center;justify-content:center;padding:17px 22px;font-size:11px;font-weight:700;letter-spacing:.2px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-dark{background:#282c27;color:#fff}.text-link{font-size:11px;font-weight:700;border-bottom:1px solid #9b9d94;padding-bottom:7px}.hero-foot{display:flex;justify-content:space-between;gap:15px;margin-top:92px;font-size:9px;letter-spacing:.5px;color:#858980}.scroll-note{letter-spacing:1.2px}.hero-art{height:510px;position:relative;display:flex;align-items:center;justify-content:center}.hero-image{height:100%;width:78%;position:relative;overflow:hidden;background:linear-gradient(145deg,#d8d7cb,#b9b9aa 48%,#9c9e8e);display:flex;align-items:flex-end;padding:25px}.image-placeholder{position:relative}.image-label{font-size:8px;letter-spacing:1.5px;position:absolute;z-index:2;top:18px;left:18px;color:#62675f}.hero-image p{font:italic 17px Georgia,serif;line-height:1.3;color:#4f554d;z-index:2}.sun{position:absolute;width:190px;height:190px;border-radius:50%;background:#e9e3d2;right:13%;top:13%}.arch{position:absolute;bottom:-5%;border:1px solid rgba(75,82,70,.4);border-bottom:0;border-radius:180px 180px 0 0}.arch-one{height:72%;width:45%;left:18%;background:linear-gradient(90deg,#a7aa9b,#c4c5b9)}.arch-two{height:56%;width:35%;left:48%;background:linear-gradient(90deg,#d0cdbf,#a8ab9d)}.hero-stamp{position:absolute;right:1%;bottom:8%;height:66px;width:66px;border-radius:50%;background:#f6f5f1;border:1px solid #c6c8bd;display:grid;place-content:center;text-align:center;font:14px/1.05 Manrope;color:#565c52}.vertical-note{position:absolute;right:-3.5%;top:20%;writing-mode:vertical-rl;font-size:8px;letter-spacing:2px;color:#81867d}.intro-strip{border-top:1px solid #e3e1d9;border-bottom:1px solid #e3e1d9;padding:22px 6.2vw;display:flex;align-items:center;justify-content:space-between}.intro-strip p{font:italic 18px Georgia,serif;color:#60665d;margin:0}.intro-strip span{font-size:9px;letter-spacing:1px;color:#969a91}.section-pad{padding:115px 10vw}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:52px}.section-heading h2,.about-copy h2{font-size:clamp(48px,5vw,72px);margin:22px 0 0}.section-heading>p{max-width:285px;font-size:13px;line-height:1.8;color:#747970;margin:0 0 7px}.portfolio-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:42px 24px}.portfolio-card:first-child{grid-row:span 2}.portfolio-image{height:270px;position:relative;overflow:hidden;display:flex;align-items:flex-start;padding:17px}.portfolio-card:first-child .portfolio-image{height:590px}.portfolio-image>span,.about-photo>span{font-size:8px;letter-spacing:1.4px;color:#676d62;z-index:2}.placeholder-interior{background:linear-gradient(135deg,#d9d8ce,#b4b8aa)}.window-shape{position:absolute;right:12%;top:12%;height:75%;width:48%;background:linear-gradient(90deg,#d9e0db,#aebbb5);border:12px solid #eeeae0;box-shadow:0 20px 40px #77786c35}.placeholder-portrait{background:linear-gradient(140deg,#d5c7b9,#a58f7e)}.portrait-shape{position:absolute;width:150px;height:190px;border-radius:80px 80px 35px 35px;background:linear-gradient(130deg,#76695d,#b7a18d);left:50%;bottom:-20px;transform:translateX(-50%)}.placeholder-product{background:linear-gradient(135deg,#d8d8cc,#b9b9a9)}.product-shape{position:absolute;width:120px;height:145px;border-radius:45% 45% 14px 14px;background:linear-gradient(110deg,#f0eee4,#a6aa9a);left:50%;bottom:18px;transform:translateX(-50%);box-shadow:20px 15px 30px #74786b30}.card-meta{display:flex;align-items:center;justify-content:space-between;padding:17px 0 0}.card-meta h3{font:600 15px Manrope;margin:0 0 5px}.card-meta p{font-size:10px;color:#83877e;margin:0}.card-meta b{font-size:18px;font-weight:400}.editor-note{font-size:10px;color:#92968d;margin-top:35px}.services-section{background:#eaeae3}.services-section .section-heading{margin-bottom:65px}.service-list article{display:grid;grid-template-columns:55px 1fr 30px;gap:20px;padding:25px 0;border-top:1px solid #cfd0c6;align-items:start}.service-list article:last-child{border-bottom:1px solid #cfd0c6}.service-list article>span{font-size:10px;color:#898e84;padding-top:7px}.service-list h3{font:500 23px Manrope;margin:0 0 8px;letter-spacing:-.6px}.service-list p{font-size:12px;color:#747970;margin:0;line-height:1.7;max-width:510px}.service-list article>a{font-size:18px}.about-section{display:grid;grid-template-columns:1fr 1fr;min-height:610px}.about-visual{padding:75px 6vw 75px 10vw;background:#dedfd5}.about-photo{height:100%;min-height:450px;background:linear-gradient(145deg,#b7b8aa,#e0ddd1);position:relative;display:flex;align-items:flex-start;padding:18px;overflow:hidden}.camera-circle{position:absolute;width:190px;height:190px;border:1px solid #8c9185;border-radius:50%;display:grid;place-items:center;font:40px Manrope;color:#72786c;left:50%;top:50%;transform:translate(-50%,-50%)}.about-copy{padding:110px 10vw 80px 7vw;align-self:center}.about-copy h2{margin-bottom:30px}.about-copy>p:not(.eyebrow){font-size:13px;line-height:1.95;color:#737970;max-width:430px}.about-copy .text-link{display:inline-block;margin-top:20px}.contact-section{background:#292e28;color:#f6f5f1;padding-top:95px;padding-bottom:85px}.contact-top{display:flex;justify-content:space-between;align-items:center}.contact-section .eyebrow{color:#b7bbae}.contact-top>p:last-child{font-size:11px;color:#c4c8bd}.contact-section h2{font-size:clamp(55px,7vw,95px);margin:65px 0 70px}.contact-bottom{display:flex;align-items:flex-start;gap:8vw;border-top:1px solid #53594f;padding-top:28px}.button-light{background:#f6f5f1;color:#282c27}.contact-bottom>div{display:flex;flex-direction:column;gap:7px}.contact-bottom span{font-size:9px;letter-spacing:1.3px;color:#aeb4a8;text-transform:uppercase}.contact-bottom a,.contact-bottom p{font-size:12px;margin:0}.contact-bottom small{font-size:9px;color:#aeb4a8;max-width:210px;line-height:1.5}.site-footer{padding:28px 6.2vw;display:flex;align-items:center;justify-content:space-between}.site-footer p,.site-footer>a:last-child{font-size:9px;color:#81867d}.site-footer .brand{color:#272b26}.mobile-nav{display:none}
@media(max-width:800px){.site-header{height:72px;padding:0 6vw}.desktop-nav{display:none}.header-actions{gap:14px}.menu-toggle{display:block}.header-cta{display:none}.mobile-nav{display:flex;position:absolute;top:72px;left:0;right:0;background:#f6f5f1;padding:20px 6vw 26px;flex-direction:column;gap:18px;border-bottom:1px solid #e5e3db}.mobile-nav a{font-size:13px}.mobile-nav.open{display:flex}.hero{padding:65px 7vw 35px;grid-template-columns:1fr;gap:35px}.hero h1{font-size:clamp(62px,15vw,90px)}.hero-art{height:390px}.hero-image{width:82%}.hero-foot{margin-top:55px}.section-pad{padding:78px 7vw}.section-heading{display:block}.section-heading>p{margin-top:22px}.portfolio-grid{grid-template-columns:1fr 1fr;gap:28px 15px}.portfolio-card:first-child{grid-column:span 2;grid-row:auto}.portfolio-card:first-child .portfolio-image{height:390px}.portfolio-image{height:220px}.about-section{grid-template-columns:1fr}.about-visual{padding:50px 10vw}.about-photo{min-height:360px}.about-copy{padding:70px 9vw}.contact-section h2{margin:55px 0}.contact-bottom{flex-wrap:wrap;gap:30px 45px}.contact-bottom .button{flex-basis:100%;max-width:230px}.site-footer{padding:25px 7vw;gap:15px;flex-wrap:wrap}.site-footer p{order:3;flex-basis:100%;margin:0}.intro-strip{padding:20px 7vw}.intro-strip p{font-size:15px}.vertical-note{right:-1%}}
@media(max-width:480px){.hero-buttons{align-items:flex-start;flex-direction:column;gap:20px}.hero-art{height:320px}.portfolio-grid{grid-template-columns:1fr}.portfolio-card:first-child{grid-column:auto}.portfolio-card:first-child .portfolio-image{height:300px}.portfolio-image{height:260px}.service-list article{grid-template-columns:30px 1fr 20px;gap:12px}.service-list h3{font-size:19px}.contact-top{display:block}.contact-top>p:last-child{margin-top:20px}.site-footer{align-items:flex-start}.site-footer .brand{font-size:19px}}

.hero-image,.portfolio-image{padding:0;display:block}.hero-image img,.portfolio-image img{width:100%;height:100%;object-fit:cover;display:block}.hero-image img{object-position:45% center}.sample-badge,.portfolio-image>span.sample-badge{position:absolute;bottom:12px;left:12px;top:auto;background:rgba(246,245,241,.94);color:#30382e;padding:7px 9px;font-size:9px;letter-spacing:.3px;max-width:calc(100% - 24px)}.editor-note{color:#62685f;font-size:12px;line-height:1.6}

.brand{display:inline-flex;align-items:center}.brand img{display:block;width:200px;height:40px}@media(max-width:480px){.brand img{width:170px;height:34px}}

.contact-bottom{flex-wrap:wrap;gap:30px 4vw}

/* Camera logo supplied by Jona. */
.site-header{height:132px}.brand img{width:240px;height:120px;object-fit:contain}.about-photo{display:flex;align-items:center;justify-content:center;background:#fff;padding:20px}.about-brand-logo{display:block;width:100%;height:auto}.site-footer .brand img{width:220px;height:110px}@media(max-width:800px){.site-header{height:104px}.brand img{width:184px;height:92px}.mobile-nav{top:104px}}@media(max-width:480px){.brand img{width:168px;height:84px}.site-footer .brand img{width:200px;height:100px}}

/* Transparent branding integrated with the existing warm palette. */
.site-header{height:116px}.brand img{width:220px;height:104px;object-fit:contain}.about-photo{background:transparent;min-height:360px;padding:0}.about-brand-logo{width:100%;max-width:480px;height:auto}.site-footer .brand img{width:200px;height:96px}@media(max-width:800px){.site-header{height:98px}.brand img{width:180px;height:88px}.mobile-nav{top:98px}.about-photo{min-height:240px}}@media(max-width:480px){.brand img{width:160px;height:80px}}

/* Contact form inspired by the supplied reference. */
.contact-section{background:#f6f5f1;color:#292e28}
.contact-form-heading{text-align:center;max-width:680px;margin:0 auto 42px}
.contact-form-heading .eyebrow{justify-content:center;color:#777d73}
.contact-form-heading h2{font-family:Georgia,serif;font-size:clamp(42px,5vw,64px);letter-spacing:-1.5px;line-height:1.1;margin:22px 0}
.contact-form-heading>p:last-child{font-size:17px;line-height:1.7;color:#62685f}
.enquiry-form{max-width:700px;margin:0 auto;text-align:center}
.form-field{text-align:left;margin-bottom:24px}
.form-field label{display:block;font-size:13px;font-weight:600;margin-bottom:9px}
.form-field input,.form-field textarea{display:block;width:100%;border:1px solid #dedfd8;border-radius:7px;background:#efefeb;padding:18px;color:#292e28;font:inherit;font-size:16px;line-height:1.5}
.form-field textarea{resize:vertical;min-height:180px}
.form-field input:focus,.form-field textarea:focus{outline:2px solid #8d794e;outline-offset:2px;background:#fff}
.form-note{font-size:12px;line-height:1.6;color:#71776b;margin:8px 0 24px}
.enquiry-form .button{border:0;border-radius:5px;font:inherit;font-size:12px;cursor:pointer;padding:18px 28px}
.enquiry-form .button:disabled{opacity:.6;cursor:wait}
.form-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
#formStatus{font-size:14px;line-height:1.6;min-height:24px;margin:20px 0}
.contact-section .contact-bottom{justify-content:center;border-color:#dedfd8;margin-top:46px;gap:28px 7vw}
.contact-section .contact-bottom span{color:#71776b}
@media(max-width:480px){.contact-form-heading>p:last-child{font-size:16px}.contact-section .contact-bottom{justify-content:flex-start}}

.feedback-section{background:#eaeae3;border-top:1px solid #d9dacf}
.feedback-section h2{font-family:Georgia,serif;font-weight:400}
.rating-field{border:0;padding:0;margin:0 0 28px;text-align:left}
.rating-field legend{font-size:13px;font-weight:600;margin-bottom:12px}
.rating-options{display:flex;gap:10px;flex-wrap:wrap}
.rating-options label{position:relative;cursor:pointer}
.rating-options input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.rating-options label>span{display:block;border:1px solid #c7cabc;border-radius:6px;padding:12px 17px;background:#f6f5f1;font-size:15px}
.rating-options input:checked+span{background:#292e28;color:#fff;border-color:#292e28}
.rating-options input:focus-visible+span{outline:2px solid #8d794e;outline-offset:3px}
.rating-note{font-size:12px;color:#62685f;margin:10px 0}
.form-status{font-size:14px;line-height:1.6;min-height:24px;margin:20px 0}
.desktop-nav{gap:24px;margin-left:20px}
section[id]{scroll-margin-top:116px}
@media(max-width:480px){.rating-options{gap:8px}.rating-options label>span{padding:12px 13px}}

.footer-instagram{font-size:12px}.footer-instagram a:hover,.contact-bottom a:hover{text-decoration:underline}.site-footer{flex-wrap:wrap;gap:20px}

