:root{--navy:#0b2b4c;--blue:#1589d4;--sky:#dceffc;--pale:#f1f7fb;--ink:#15344f;--muted:#607387}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #1589d4;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.045em}h2{font-size:clamp(36px,4vw,58px);font-weight:600;margin-bottom:27px}h2 span{color:var(--blue)}h3{letter-spacing:-.025em;font-size:22px}p{color:var(--muted)}.wrap{width:min(1240px,calc(100% - 96px));margin:auto}.section{padding-top:108px;padding-bottom:108px}.topline{background:var(--navy);color:#d5e7f5;font-size:12px;letter-spacing:.025em}.topline .wrap{display:flex;justify-content:space-between;padding:9px 0}.dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#7bc9ff;vertical-align:middle;margin:0 10px}header{position:sticky;top:0;background:#ffffffed;backdrop-filter:blur(12px);z-index:10;border-bottom:1px solid #e8eef3}.nav{height:90px;display:flex;align-items:center;justify-content:space-between}.brand{font-weight:800;font-size:38px;letter-spacing:-3px;line-height:1;display:inline-flex;align-items:center}.brand span{color:var(--blue)}.brand i{font-size:24px;color:var(--blue);font-style:normal;margin:0 0 10px 10px;letter-spacing:0}nav{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:600}nav>a:hover{color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:16px 25px;border-radius:5px;background:var(--blue);color:white;border:0;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.btn:hover{background:#086fae;transform:translateY(-2px)}.btn b{font-size:22px;line-height:1}.btn.white{color:var(--navy);background:white}.btn.white:hover{background:var(--sky)}.btn.small{padding:13px 20px;gap:28px}nav .btn:hover{color:#fff}.menu-toggle{display:none}.hero{position:relative;background:var(--navy);color:white;overflow:hidden}.hero-image{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,31,53,.95) 0%,rgba(7,31,53,.82) 32%,rgba(7,31,53,.13) 74%),url(hotel.jpg) center 56%/cover}.hero-inner{position:relative;min-height:670px;display:flex;align-items:center;justify-content:space-between;padding-top:60px;padding-bottom:75px}.hero-copy{max-width:670px}.eyebrow{display:block;font-size:11px;font-weight:700;letter-spacing:.18em;color:var(--blue);margin-bottom:22px}.eyebrow.light{color:#9cd7ff}h1{font-size:clamp(50px,5.3vw,78px);font-weight:600;letter-spacing:-.05em;margin-bottom:26px}h1 em{font-style:normal;color:#b4dfff}.hero p{max-width:450px;color:#d9e4ed;font-size:17px;margin-bottom:32px}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:13px;margin-left:25px}.photo-label{align-self:flex-end;background:#ffffffeb;color:var(--navy);backdrop-filter:blur(12px);border-radius:6px;display:flex;gap:18px;align-items:center;padding:21px 28px;font-size:14px;line-height:1.5;box-shadow:0 10px 30px #0001}.spark{font-size:35px;color:var(--blue)}.hero-foot{position:relative;display:flex;justify-content:space-between;align-items:center;padding:26px 0;border-top:1px solid #ffffff40;font-size:11px;letter-spacing:.12em;font-weight:600}.hero-foot i{font-size:15px;font-style:normal;color:#8cccf6}.intro{display:grid;grid-template-columns:1fr 1fr;gap:110px;padding-bottom:60px}.lead{font-size:22px;line-height:1.55;color:var(--ink)}.inline-link{font-size:14px;font-weight:700;color:var(--blue);display:inline-flex;gap:35px;padding-top:10px}.principles{display:grid;grid-template-columns:repeat(4,1fr);padding-bottom:100px;gap:35px}.principles article{border-top:1px solid #d7e3ec;padding-top:25px}.principles article>span{font-size:12px;color:var(--blue);font-weight:700}.principles h3{font-size:19px;margin:20px 0 13px}.principles p{font-size:14px}.services{background:var(--pale)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:48px}.section-head h2{margin-bottom:0}.section-head>p{font-size:15px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service{display:block;position:relative;text-align:left;min-height:310px;background:white;border:0;border-radius:7px;padding:30px;color:var(--ink);overflow:hidden;transition:transform .25s,box-shadow .25s}.service:hover{transform:translateY(-5px);box-shadow:0 14px 35px #12345015}.service-num{font-size:12px;font-weight:600;opacity:.7}.service .icon{display:block;color:var(--blue);font-size:45px;line-height:1;margin:25px 0}.service h3{font-size:25px;margin-bottom:13px}.service p{font-size:14px;line-height:1.6;max-width:260px;margin-bottom:10px}.arrow{position:absolute;right:25px;top:25px;font-size:27px}.image-card{color:#fff;display:flex;align-items:flex-end}.image-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.image-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#082b4be8,#082b4b10)}.image-card>div{position:relative;z-index:1}.image-card .service-num{display:block;margin-bottom:10px}.image-card p{color:#d9e8f4}.image-card .arrow{top:auto;bottom:0;right:-5px}.blue-card{background:var(--sky)}.dark-card{background:var(--navy);color:white}.dark-card p{color:#bdd1e2}.dark-card .icon{color:#8dd0fc}.quality{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.quality-photo{position:relative;height:660px}.quality-photo>img{width:100%;height:100%;object-fit:cover;border-radius:7px}.image-note{position:absolute;bottom:28px;left:28px;right:28px;background:white;padding:25px 30px;border-radius:5px;font-size:23px;line-height:1.3;letter-spacing:-.03em}.image-note span{position:absolute;right:30px;top:25px;font-size:42px;color:var(--blue)}.check-row{border-top:1px solid #e3ebf2;padding:20px 0 5px;display:flex;gap:20px}.check-row>span{color:var(--blue);font-size:21px}.check-row h3{font-size:18px;margin-bottom:7px}.check-row p{font-size:14px;margin-bottom:10px}.nationwide{background:var(--navy);color:white;overflow:hidden}.nationwide .wrap{padding:75px 0;position:relative}.nationwide h2{font-size:52px}.nationwide p{color:#bdd1e2;max-width:590px;margin-bottom:30px}.nation-mark{position:absolute;right:50px;top:-60px;font-size:370px;line-height:1.3;color:#1b496d;pointer-events:none}.nationwide .btn{position:relative;z-index:1}.hotel-types{display:flex;gap:20px;padding:36px 0;border-top:1px solid #dfe9f1;border-bottom:1px solid #dfe9f1}.hotel-types span{flex:1;font-weight:600;font-size:21px;text-align:center}.subtle{font-size:12px;color:#738395}.references .subtle{margin:20px 0 0}.process{background:var(--pale)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:40px}.steps article{border-top:1px solid #c5d9e8;padding-top:28px}.steps article>span{display:inline-flex;align-items:center;justify-content:center;background:var(--sky);width:46px;height:46px;border-radius:50%;font-size:13px;font-weight:700;color:var(--blue);margin-bottom:25px}.steps h3{font-size:20px}.steps p{font-size:14px}.contact{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.contact-note{background:var(--pale);padding:20px 24px;border-left:3px solid var(--blue);margin-top:30px;max-width:380px;font-size:13px}.contact-note p{margin-bottom:0;margin-top:8px}form{border:1px solid #dde8f0;padding:35px;border-radius:8px;box-shadow:0 15px 50px #0b2b4c06}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:12px;font-weight:600;margin-bottom:18px}input,select,textarea{width:100%;border:1px solid #d9e4ed;border-radius:4px;background:#f8fafc;padding:13px 12px;margin-top:8px;font-size:14px;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:2px solid #66b8ec;outline-offset:1px}textarea{resize:vertical}form .btn{width:100%}.form-status{font-size:13px;margin:12px 0;color:#176247}.care{background:var(--sky)}.care-inner{display:grid;grid-template-columns:1fr 1fr;gap:110px}.care-tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.care-tags span{border:1px solid #aac9df;border-radius:30px;padding:8px 16px;font-size:12px}.faq{max-width:900px}.faq h2{margin-bottom:40px}details{border-bottom:1px solid #dce6ef}summary{padding:22px 5px;font-size:18px;font-weight:600;cursor:pointer}details p{padding:0 5px 15px;max-width:740px;font-size:15px}footer{background:var(--navy);color:white;padding-top:65px}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr;gap:70px;padding-bottom:50px}footer .brand{color:white}footer p{color:#a9c2d5;font-size:14px;margin-top:25px}footer h3{font-size:15px;letter-spacing:0;margin-bottom:20px}.footer-main>div>a:not(.brand),.footer-main>div>span{display:block;margin:10px 0;font-size:13px;color:#bdd1e2}.footer-bottom{border-top:1px solid #ffffff20;padding:25px 0;display:flex;justify-content:space-between;font-size:12px;color:#aac2d5}.footer-bottom>div{display:flex;gap:25px}.footer-bottom button{background:none;color:inherit;border:none;padding:0;font-size:12px}dialog{color:var(--ink);border:0;border-radius:10px;padding:48px;max-width:640px;width:calc(100% - 32px);box-shadow:0 30px 100px #00182c50}dialog::backdrop{background:#00182c99;backdrop-filter:blur(4px)}dialog h2{font-size:36px}dialog p,dialog li{font-size:15px;color:var(--muted)}.close{position:absolute;top:10px;right:15px;background:none;border:0;font-size:30px;color:var(--ink)}
@media(min-width:1500px){.hero-inner{min-height:730px}}@media(max-width:1050px){.wrap{width:calc(100% - 56px)}nav{gap:20px}.hero-copy{max-width:610px}.photo-label{display:none}.quality,.intro,.contact,.care-inner{gap:50px}.quality-photo{height:600px}.nation-mark{right:-130px;opacity:.4}.principles{gap:22px}.service{padding:25px}.service h3{font-size:22px}}@media(max-width:760px){.wrap{width:calc(100% - 40px)}.topline .wrap>span:last-child{display:none}.nav{height:74px}.brand{font-size:33px}.menu-toggle{display:block;background:none;border:0;font-size:25px;color:var(--navy)}nav{display:none;position:absolute;left:0;right:0;top:74px;background:white;padding:22px;box-shadow:0 20px 25px #09294715;flex-direction:column;align-items:stretch;gap:18px}nav.open{display:flex}.hero-inner{min-height:620px;padding:65px 0}.hero-image{background:linear-gradient(90deg,#08223be8,#08223b80),url(hotel.jpg) 64% center/cover}h1{font-size:53px}.hero p{font-size:16px;max-width:330px}.text-link{display:flex;margin:20px 0 0}.hero-foot{font-size:8px;gap:8px;padding:20px 0}.hero-foot i{display:none}.section{padding-top:70px;padding-bottom:70px}.intro,.quality,.contact,.care-inner{grid-template-columns:1fr;gap:28px}.intro{padding-bottom:35px}.lead{font-size:20px}.principles{grid-template-columns:1fr 1fr;gap:20px;padding-bottom:60px}.principles h3{font-size:17px}.section-head{display:block;margin-bottom:32px}.section-head>p{margin-top:25px}.service-grid{grid-template-columns:1fr 1fr;gap:12px}.service{min-height:270px;padding:20px}.service h3{font-size:20px}.service p{font-size:12px}.service .icon{font-size:38px;margin:20px 0}.arrow{font-size:23px;right:18px;top:18px}.quality-photo{height:420px}.quality-copy{padding-top:15px}.nationwide .wrap{padding:60px 0}.nationwide h2{font-size:38px;position:relative;z-index:1}.nationwide p{position:relative;z-index:1}.nation-mark{right:-190px;font-size:320px;opacity:.35}.hotel-types{display:grid;grid-template-columns:1fr 1fr;gap:25px}.hotel-types span{font-size:17px}.steps{grid-template-columns:1fr 1fr;gap:28px}.contact form{padding:25px}.footer-main{grid-template-columns:1fr 1fr;gap:30px}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{gap:20px;flex-direction:column}.faq summary{font-size:16px}.care-tags{gap:8px}dialog{padding:35px 25px}}@media(max-width:420px){h1{font-size:45px}.service-grid{grid-template-columns:1fr}.service{min-height:250px}.image-card{min-height:320px}.form-grid{grid-template-columns:1fr;gap:0}.hero-foot{flex-wrap:wrap;gap:12px 20px;justify-content:flex-start}.hero-foot span{font-size:9px}.steps{gap:20px}.steps h3{font-size:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.hotel-types strong{display:block;font-size:52px;color:var(--blue);letter-spacing:-.05em;line-height:1.2;margin-bottom:12px}.contact-note a{display:block;margin-top:10px;color:var(--blue)}.footer-main{grid-template-columns:1.4fr .8fr .9fr 1.2fr;gap:40px}@media(max-width:760px){.footer-main{grid-template-columns:1fr 1fr;gap:30px}.footer-main>div:first-child,.footer-main>div:last-child{grid-column:1/-1}.hotel-types{grid-template-columns:1fr}.hotel-types strong{font-size:44px}}
/* Premium photographic service collection and motion system. */
.scroll-progress{position:fixed;left:0;top:0;width:100%;height:3px;z-index:40;background:linear-gradient(90deg,#1494de,#b1e5ff);transform:scaleX(0);transform-origin:left;pointer-events:none}
.hero-image{inset:-4%;transform:scale(1.035);animation:hero-camera 24s ease-in-out infinite alternate;will-change:transform}.hero-copy{animation:hero-copy-in .9s ease both}.hero .eyebrow{display:inline-flex;align-items:center;gap:12px}.hero .eyebrow:before{content:'';width:7px;height:7px;background:#8cd8ff;border-radius:50%;box-shadow:0 0 0 5px #80ccff18}.hero h1{font-weight:600}.hero .photo-label{animation:label-float 7s ease-in-out infinite;box-shadow:0 24px 60px #08223830}.hero .spark{display:inline-block;animation:slow-turn 35s linear infinite}.hero-foot{background:#09264120}
.service-grid{gap:24px}.photo-service{padding:0;min-height:380px;border-radius:12px;display:flex;align-items:flex-end;isolation:isolate;box-shadow:0 8px 30px #10354d0b;transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .5s ease,box-shadow .4s ease}.photo-service:hover{transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-7px);box-shadow:0 22px 45px #092e4c25}.service-media{position:absolute;inset:0;z-index:-2;overflow:hidden}.service-media img{width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:filter .6s ease,transform 1.2s ease;animation:service-camera 18s ease-in-out infinite alternate;animation-play-state:paused}.photo-service.is-visible .service-media img{animation-play-state:running}.photo-service:nth-child(2n) .service-media img{animation-direction:alternate-reverse;animation-delay:-6s}.photo-service:nth-child(3n) .service-media img{animation-delay:-12s}.photo-service:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#08264110 0%,#07274408 20%,#07274495 58%,#061e37f5 100%);transition:background .4s}.service-caption{padding:30px;width:100%;color:#fff}.photo-service .service-num{position:absolute;top:25px;left:25px;border:1px solid #ffffff65;background:#0a2b4633;backdrop-filter:blur(8px);border-radius:50%;width:36px;height:36px;display:grid;place-items:center;opacity:1;font-size:11px;margin:0}.photo-service .arrow{top:25px;right:25px;bottom:auto;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#ffffffed;color:var(--navy);font-size:24px;transition:transform .35s,background .35s}.photo-service:hover .arrow{transform:rotate(45deg);background:#b5e1ff}.photo-service h3{font-size:26px;margin-bottom:10px;letter-spacing:-.025em;max-width:290px}.photo-service p{font-size:14px;color:#d8e8f4;max-width:280px;margin:0;line-height:1.6}.photo-service:nth-child(4) img{object-position:62% center}.photo-service:nth-child(5) img{object-position:center 65%}.quality-photo{overflow:hidden;border-radius:12px}.quality-photo>img{height:110%;position:absolute;top:-5%;transform:translateY(var(--quality-shift,0px));transition:transform .15s linear;object-position:center center}.image-note{z-index:1;backdrop-filter:blur(15px);background:#fffffff2;box-shadow:0 10px 25px #10334c10}.quality-copy h2{font-weight:600}.nationwide{background:radial-gradient(ellipse at 80% 30%,#154c73 0%,#0b2b4c 65%)}.rotating-mark{animation:slow-turn 65s linear infinite}.principles article{transition:border-color .3s,transform .3s}.principles article:hover{border-color:var(--blue);transform:translateY(-4px)}.btn{box-shadow:0 7px 20px #0876b71c;transition:background .25s,transform .25s,box-shadow .25s}.btn:hover{box-shadow:0 14px 28px #0876b730;transform:translateY(-3px)}.btn b{transition:transform .25s}.btn:hover b{transform:translate(2px,-2px)}.check-row{transition:padding-left .3s}.check-row:hover{padding-left:8px}.steps article{transition:transform .3s}.steps article:hover{transform:translateY(-5px)}.steps article>span{transition:background .3s,color .3s}.steps article:hover>span{background:var(--navy);color:white}.contact form{border-radius:12px}.faq details[open]{background:#f5faff;border-radius:7px}.faq details[open] p{animation:hero-copy-in .3s ease}.motion-ribbon{background:#dceffc;border-top:1px solid #d2e6f4;border-bottom:1px solid #d2e6f4;overflow:hidden;padding:25px 0}.ribbon-track{display:flex;width:max-content;animation:marquee 35s linear infinite}.ribbon-group{display:flex;align-items:center;gap:55px;padding-right:55px}.ribbon-group span{font-size:26px;letter-spacing:.08em;font-weight:600;white-space:nowrap;color:#0c3655}.ribbon-group i{font-size:23px;color:#2f93d0;font-style:normal}.motion-ribbon:hover .ribbon-track{animation-play-state:paused}
@keyframes hero-camera{from{transform:scale(1.035) translate3d(-.7%,0,0)}to{transform:scale(1.095) translate3d(.7%,-.4%,0)}}@keyframes service-camera{from{transform:scale(1.04) translate3d(-.6%,0,0)}to{transform:scale(1.13) translate3d(.6%,-.8%,0)}}@keyframes label-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes slow-turn{to{transform:rotate(360deg)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes hero-copy-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){.motion-ready [data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .7s ease var(--reveal-delay,0ms),transform .7s cubic-bezier(.2,.75,.2,1) var(--reveal-delay,0ms)}.motion-ready [data-reveal].is-visible{opacity:1;transform:translateY(0)}.motion-ready .photo-service.is-visible{transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}.motion-ready .photo-service.is-visible:hover{transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-7px)}}
@media(max-width:760px){.photo-service{min-height:320px}.service-caption{padding:23px}.photo-service h3{font-size:21px}.photo-service p{font-size:13px}.photo-service .service-num{top:20px;left:20px}.photo-service .arrow{top:20px;right:20px}.motion-ribbon{padding:18px 0}.ribbon-group{gap:30px;padding-right:30px}.ribbon-group span{font-size:19px}.ribbon-group i{font-size:18px}.hero-image{animation-duration:30s}}@media(max-width:420px){.photo-service{min-height:370px}.photo-service h3{font-size:25px}.photo-service p{font-size:14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}.hero-image{transform:none}.service-media img{transform:none}.quality-photo>img{transform:none}.photo-service:hover,.steps article:hover,.principles article:hover{transform:none}.scroll-progress{display:none}}
.hero-video-background{inset:0;animation:none;transform:none;will-change:auto;background:url(hotel-video-poster.jpg) center center/cover}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;opacity:0;transition:opacity .7s ease}.hero-video.is-ready{opacity:1}.hero-video-background:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,27,48,.91) 0%,rgba(5,27,48,.76) 34%,rgba(5,27,48,.3) 66%,rgba(5,27,48,.14) 100%)}.video-toggle{position:absolute;top:22px;right:0;z-index:2;background:#08284170;border:1px solid #ffffff50;border-radius:30px;padding:9px 17px;color:white;font-size:13px;line-height:1.4;backdrop-filter:blur(8px);transition:background .2s}.video-toggle:hover{background:#082841bd}.video-credit{display:block;width:min(1240px,calc(100% - 96px));margin:0 auto;padding-bottom:18px;font-size:12px;color:#a9c2d5}.hero-foot{background:transparent}.hero-video-background.video-error{background-image:url(hotel-video-poster.jpg)}@media(max-width:760px){.hero-video-background{background-position:62% center}.hero-video{object-position:62% center}.hero-video-background:after{background:linear-gradient(90deg,#08223bdf,#08223b68)}.video-toggle{top:18px;padding:8px 13px;font-size:12px}.video-credit{width:calc(100% - 40px)}}
