/* Beamertehuur.nl — Premium edition. No build tools or framework needed. */
:root{--ink:#101b29;--night:#0c1520;--panel:#182433;--cream:#f5f2eb;--paper:#fffcf7;--gold:#d9b77b;--gold-deep:#9d7335;--white:#fffdf9;--soft:#b9c1c9;--line:rgba(255,255,255,.13);--sans:Arial,Helvetica,sans-serif;--serif:Georgia,'Times New Roman',serif;--max:1240px;--radius:12px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;background:var(--ink);color:var(--white);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait}img{max-width:100%;height:auto;display:block}svg{flex-shrink:0}h1,h2,h3,p,figure{margin:0}::selection{background:var(--gold);color:var(--ink)}:focus-visible{outline:3px solid var(--gold);outline-offset:6px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:var(--gold-deep);outline-offset:2px}[hidden]{display:none!important}.wrap{width:min(var(--max),calc(100% - 112px));margin-inline:auto}.section{padding-block:104px}.eyebrow{display:flex;align-items:center;gap:12px;font-size:10px;line-height:1.5;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}.eyebrow:before{content:'';height:1px;width:26px;background:currentColor}.display{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:1.08}.display em{font-weight:400;color:var(--gold)}h2.display{font-size:clamp(39px,4.2vw,60px)}.body-copy{color:var(--soft);font-size:16px;line-height:1.85}.icon{width:21px;height:21px;stroke:currentColor;stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}.arrow{font-size:21px;line-height:1;transition:transform .25s}.btn{min-height:54px;padding:15px 24px;display:inline-flex;align-items:center;justify-content:center;gap:21px;border:1px solid transparent;border-radius:5px;background:var(--gold);color:var(--ink);font-size:13px;font-weight:700;line-height:1.4;transition:background .2s,transform .2s,box-shadow .2s}.btn:hover{background:#e5c895;transform:translateY(-2px);box-shadow:0 8px 28px rgba(0,0,0,.12)}.btn:hover .arrow{transform:translateX(3px)}.btn.outline{background:transparent;border-color:rgba(255,255,255,.3);color:var(--white)}.btn.outline:hover{background:rgba(255,255,255,.06)}.text-link{display:inline-flex;align-items:center;gap:15px;font-size:13px;font-weight:700;border-bottom:1px solid rgba(217,183,123,.5);padding-block:10px}.text-link:hover .arrow{transform:translateX(5px)}.skip-link{position:fixed;top:-100px;left:20px;background:var(--gold);color:var(--ink);z-index:100;padding:12px 20px}.skip-link:focus{top:15px}
/* Navigation */
.topline{background:#0a131e;border-bottom:1px solid rgba(255,255,255,.06)}.topline .wrap{height:33px;display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#c7c9c9}.topline a{display:flex;align-items:center;gap:8px}.topline .icon{width:11px;height:11px}.topline .dot{display:inline-block;background:var(--gold);width:4px;height:4px;border-radius:50%;margin-inline:8px;vertical-align:middle}.site-header{position:relative;z-index:20;background:var(--ink);border-bottom:1px solid var(--line)}.navigation{min-height:89px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:11px;white-space:nowrap}.brand-symbol{width:37px;height:37px;color:var(--gold)}.brand-name{font-size:25px;letter-spacing:-1.35px;font-weight:700;line-height:1.1}.brand-name span{color:var(--gold)}.brand-tag{display:block;font-size:8px;font-weight:400;letter-spacing:.19em;text-transform:uppercase;margin-top:7px;color:#c2c6cc}.nav-links{display:flex;align-items:center;gap:29px;font-size:12px}.nav-links>a:not(.btn){color:#d6d9de;padding-block:8px;transition:color .2s}.nav-links>a:hover{color:var(--gold)}.nav-links>.btn{min-height:43px;padding:11px 19px;gap:22px;font-size:11px}.menu-toggle{display:none;border:1px solid var(--line);border-radius:5px;background:transparent;color:white;padding:9px;min-width:44px;min-height:44px;align-items:center;justify-content:center}.menu-toggle .icon{width:22px;height:22px}
/* Hero — the customer and the person, not a stock crowd. */
.hero{position:relative;overflow:hidden;isolation:isolate;background:var(--ink)}.hero .wrap{position:relative;min-height:674px;display:flex;align-items:center;padding-block:76px 86px;z-index:3}.hero-content{width:57%;max-width:700px}.hero h1{font-size:clamp(60px,6.8vw,102px);line-height:1.02;margin:26px 0 28px;max-width:700px}.hero h1 span{display:block}.hero h1 em{white-space:nowrap}.hero .body-copy{max-width:405px;font-size:16px;color:#c8ced4}.hero-actions{display:flex;gap:23px;align-items:center;flex-wrap:wrap;margin-top:32px}.hero-actions .text-link{border-bottom:0;color:#e4e1d9}.hero-meta{display:flex;align-items:center;gap:11px;margin-top:33px;color:#c2c7cd;font-size:10px;letter-spacing:.02em}.hero-meta .icon{width:14px;height:14px;color:var(--gold)}.hero-photo{position:absolute;right:0;top:0;width:57%;height:100%;z-index:0;background:#1b252c}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:32% center;filter:saturate(.82)}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--ink) 0%,rgba(16,27,41,.94) 7%,rgba(16,27,41,.65) 21%,rgba(16,27,41,.04) 47%,rgba(16,27,41,.05) 100%),linear-gradient(0deg,rgba(16,27,41,.9),transparent 28%,transparent 70%,rgba(16,27,41,.16))}.hero-caption{position:absolute;right:max(56px,calc((100vw - var(--max))/2));bottom:46px;z-index:4;border-left:1px solid var(--gold);padding-left:18px}.hero-caption strong{display:block;font-family:var(--serif);font-weight:400;font-size:24px;line-height:1.2}.hero-caption span{display:block;margin-top:7px;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:#ece2d2}.hero-index{position:absolute;right:34px;top:43px;z-index:4;font-size:9px;letter-spacing:.22em;writing-mode:vertical-rl;color:rgba(255,255,255,.7)}.hero-glow{position:absolute;left:-100px;bottom:-240px;width:550px;height:550px;background:radial-gradient(circle,rgba(217,183,123,.065),transparent 65%);pointer-events:none}.hero-stamp{position:absolute;top:44px;right:50px;z-index:4;width:89px;height:89px;border:1px solid rgba(255,255,255,.35);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:white;background:rgba(16,27,41,.2);backdrop-filter:blur(4px)}.hero-stamp .icon{height:22px;width:22px;color:var(--gold)}.hero-stamp span{font-size:7px;text-align:center;letter-spacing:.15em;line-height:1.6;text-transform:uppercase}
/* Service strip */
.service-strip{background:var(--cream);color:var(--ink)}.service-strip .wrap{display:grid;grid-template-columns:repeat(3,1fr);padding-block:25px;gap:32px}.service-item{display:flex;align-items:center;justify-content:center;gap:17px}.service-item+.service-item{border-left:1px solid #dbd6cd}.service-item>.icon{color:var(--gold-deep);width:28px;height:28px}.service-item strong{font-size:12px;font-weight:700;display:block;line-height:1.6}.service-item small{display:block;font-size:10px;color:#69727b;line-height:1.6}
/* Product gallery */
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:45px}.section-heading h2{margin-top:18px}.section-heading .body-copy{max-width:355px;font-size:14px}.equipment{background:var(--ink);position:relative}.product-grid{display:grid;grid-template-columns:1.14fr 1fr;gap:24px}.product-card{background:var(--cream);color:var(--ink);border-radius:var(--radius);overflow:hidden;position:relative}.product-top{padding:24px 29px 0;display:flex;align-items:center;justify-content:space-between}.product-top span:first-child{font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#696d71}.product-number{font-family:var(--serif);font-size:22px;color:#9d947e;line-height:1}.product-visual{height:302px;position:relative;margin:13px 25px 0;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:7px;background:#fff}.product-visual img{max-width:90%;max-height:86%;width:auto;height:auto;object-fit:contain;position:relative;z-index:2;transition:transform .6s;mix-blend-mode:multiply}.product-card:hover .product-visual img{transform:scale(1.025)}.product-card.screen-card .product-visual img{max-width:90%;max-height:95%}.image-fallback{position:absolute;inset:0;display:none;align-items:center;justify-content:center;flex-direction:column;gap:13px;color:#75808b;text-align:center;padding:30px}.image-fallback .icon{width:42px;height:42px;color:#ac9b7c}.image-fallback strong{font-size:14px;font-weight:600}.image-fallback small{max-width:230px;font-size:11px;line-height:1.6;color:#6b7279}.image-unavailable .image-fallback{display:flex}.image-unavailable img{visibility:hidden}.image-fallback a{font-size:10px;text-decoration:underline}.product-info{padding:28px 30px 29px}.product-label{font-size:9px;letter-spacing:.17em;text-transform:uppercase;color:#8c6b35;font-weight:700;margin-bottom:8px}.product-info h3{font:400 clamp(30px,3vw,41px)/1.15 var(--serif);letter-spacing:-.035em}.product-info>p{font-size:13px;line-height:1.75;color:#66707a;max-width:420px;margin-top:12px}.product-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:19px}.product-tags span{padding:5px 10px;border:1px solid #d8d5ce;border-radius:3px;font-size:9px;line-height:1.6;color:#606a74}.product-bottom{margin-top:25px;padding-top:18px;border-top:1px solid #ded9d0;display:flex;justify-content:space-between;align-items:center;gap:12px}.product-bottom>span{font-size:10px;color:#67717a}.product-bottom>a{font-size:11px;font-weight:700;display:flex;align-items:center;gap:18px}.product-bottom>a:hover{color:#8b642e}.equipment-note{margin-top:18px;display:flex;align-items:start;gap:10px;color:#aeb8c2;font-size:10px;line-height:1.65}.equipment-note .icon{width:14px;height:14px;margin-top:1px;color:var(--gold)}.set-bar{margin-top:29px;border:1px solid var(--line);border-radius:8px;padding:23px 28px;display:flex;align-items:center;justify-content:space-between;gap:25px;background:linear-gradient(115deg,rgba(217,183,123,.075),transparent)}.set-bar strong{font-family:var(--serif);font-size:24px;font-weight:400;line-height:1.3}.set-bar p{font-size:11px;margin-top:5px;color:var(--soft)}.set-bar .text-link{flex-shrink:0;color:var(--gold);font-size:12px;padding-block:6px}
/* Three use cases: restrained editorial layouts, not stock photographs. */
.moments{background:var(--cream);color:var(--ink)}.moments .eyebrow,.story .eyebrow{color:var(--gold-deep)}.moments .display em,.story .display em{color:var(--gold-deep)}.moments .body-copy{color:#64707c}.occasion-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.occasion{border-top:1px solid #bcb4a3;padding-top:23px;display:flex;flex-direction:column}.occasion-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px}.occasion-num{font-size:10px;color:#7f7a70;letter-spacing:.12em}.occasion-top .icon{width:30px;height:30px;stroke-width:1.25;color:#9d7335}.occasion h3{font:400 30px/1.15 var(--serif);letter-spacing:-.025em;margin-bottom:15px}.occasion p{color:#65707a;font-size:13px;line-height:1.85;max-width:315px}.occasion>a{font-size:11px;margin-top:auto;padding-top:27px;display:flex;gap:25px;align-items:center;font-weight:700}.occasion>a:hover{color:var(--gold-deep)}
/* Portrait */
.story{background:#ede8de;color:var(--ink);position:relative;overflow:hidden}.story-layout{display:grid;grid-template-columns:1.02fr 1fr;align-items:center;gap:82px}.story-visual{position:relative;padding:0 0 30px 0}.story-photo{aspect-ratio:1.07;border-radius:var(--radius);overflow:hidden}.story-photo img{width:100%;height:100%;object-fit:cover;object-position:28% center;filter:saturate(.8)}.portrait-label{position:absolute;bottom:0;right:-24px;padding:24px 29px;background:var(--ink);color:white;min-width:225px;border-radius:6px;box-shadow:0 12px 30px rgba(16,27,41,.09)}.portrait-label span{font-size:8px;letter-spacing:.17em;text-transform:uppercase;color:var(--gold)}.portrait-label strong{display:block;font-family:var(--serif);font-size:28px;line-height:1.2;font-weight:400;margin-top:8px}.portrait-label small{display:block;font-size:10px;margin-top:7px;color:#c2cad3}.story-content h2{margin:19px 0 27px}.story-content p{font-size:14px;line-height:1.9;color:#5c6874}.story-content p+p{margin-top:16px}.story-signoff{display:flex;align-items:center;gap:16px;margin-top:28px;padding-top:24px;border-top:1px solid #d3ccbe}.story-signoff .icon{color:#a38148;width:31px;height:31px;stroke-width:1.2}.story-signoff strong{display:block;font-size:11px;font-weight:700}.story-signoff span{font-size:10px;color:#6d736f}.story-link{margin-top:23px;color:#805e2f;border-color:#b59e76;font-size:11px}
/* How it works */
.how .section-heading{margin-bottom:50px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.step{position:relative;padding-top:26px;border-top:1px solid #4e5356}.step-num{font:italic 400 31px var(--serif);color:var(--gold);margin-bottom:19px;display:block}.step h3{font-size:16px;font-weight:600;margin-bottom:13px}.step p{font-size:13px;color:var(--soft);line-height:1.85}.step:not(:last-child):after{content:'→';position:absolute;right:2px;top:25px;color:#88919a;font-size:24px}.service-note{margin-top:32px;font-size:11px;line-height:1.75;color:#a3adb9;border-left:1px solid var(--gold);padding-left:18px}
/* Contact & form */
.contact{background:linear-gradient(135deg,#1c2b3d,#101c2b 67%);border-top:1px solid var(--line);position:relative;isolation:isolate}.contact:after{content:'';position:absolute;width:45%;height:70%;left:0;top:0;background:radial-gradient(ellipse at top left,rgba(217,183,123,.05),transparent 65%);z-index:-1}.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:83px;align-items:start}.contact-copy .display{margin-top:20px;margin-bottom:25px}.contact-copy .body-copy{font-size:14px;max-width:380px}.contact-details{display:grid;gap:21px;margin-top:34px}.contact-row{display:flex;align-items:center;gap:17px}.contact-icon{width:41px;height:41px;border:1px solid #4b5662;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gold)}.contact-icon .icon{width:17px;height:17px}.contact-row small{font-size:8px;letter-spacing:.13em;text-transform:uppercase;display:block;color:#b8c0c9;margin-bottom:1px}.contact-row strong{font-size:15px;font-weight:400;letter-spacing:-.01em}.contact-row a:hover{color:var(--gold)}.contact-wa{margin-top:31px;font-size:12px;min-height:48px;padding:13px 20px}.contact-fineprint{margin-top:26px;font-size:10px;line-height:1.8;color:#b5bdc7;max-width:360px}.request-form{background:var(--cream);color:var(--ink);border-radius:var(--radius);padding:33px}.form-kicker{font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:#8e6d38;font-weight:700}.request-form h3{font:400 30px/1.2 var(--serif);letter-spacing:-.03em;margin:9px 0 7px}.form-intro{font-size:11px;color:#66727d;line-height:1.75;margin-bottom:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:14px;row-gap:16px}.field{display:block;min-width:0}.field.wide{grid-column:1/-1}.field>span{display:block;font-size:10px;font-weight:700;margin-bottom:6px}.field small{font-weight:400;color:#737b83;font-size:9px}.field input,.field select,.field textarea{width:100%;border:1px solid #d9d7d0;background:#fffefa;color:var(--ink);border-radius:4px;padding:11px 12px;font-size:12px;min-height:43px;line-height:1.5;box-shadow:none;max-width:100%}.field select{appearance:auto;padding-right:5px}.field input::placeholder,.field textarea::placeholder{color:#8a8e90}.field textarea{resize:vertical;min-height:92px}.request-form .btn{width:100%;margin-top:19px;background:var(--ink);color:white;border:1px solid var(--ink);min-height:51px}.request-form .btn:hover{background:#27394b}.form-footnote{font-size:9px;color:#66717c;line-height:1.75;margin-top:12px}.form-tools{display:flex;justify-content:space-between;align-items:center;margin-top:17px;padding-top:15px;border-top:1px solid #dad4ca;gap:15px}.form-tools button{background:none;border:0;color:#5e6b77;font-size:10px;padding:4px 0;text-align:left;display:inline-flex;align-items:center;gap:7px}.form-tools button:hover{color:var(--gold-deep)}.form-tools .icon{width:13px;height:13px}.form-status{border:1px solid #c8ba9f;background:#eee8db;padding:12px 13px;margin-top:15px;font-size:11px;line-height:1.7;border-radius:4px}.form-status:empty{display:none}.copy-output{width:100%;min-height:150px;font-size:12px;line-height:1.5;padding:12px;margin-top:12px;border:1px solid #aaa;background:white}
/* FAQ */
.faq{background:var(--cream);color:var(--ink)}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq .eyebrow{color:var(--gold-deep)}.faq h2{margin-top:18px}.faq-intro{font-size:13px;color:#67717a;margin-top:21px;max-width:280px}.faq-intro a{border-bottom:1px solid #9d7335}.faq-list details{border-bottom:1px solid #d2ccc2}.faq-list details:first-child{border-top:1px solid #d2ccc2}.faq-list summary{list-style:none;font-size:13px;font-weight:600;padding:22px 28px 22px 0;cursor:pointer;position:relative;line-height:1.65}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:0;top:19px;font-size:23px;line-height:1.2;font-weight:400;color:var(--gold-deep)}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:12px;line-height:1.9;color:#626e79;margin:-3px 25px 24px 0}.faq-list details a{text-decoration:underline;text-underline-offset:3px}
/* Footer */
.site-footer{background:#0a131e;padding-top:55px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:40px;padding-bottom:34px}.footer-top p{font:italic 400 24px/1.35 var(--serif);color:var(--gold)}.footer-links{display:flex;gap:24px;flex-wrap:wrap;font-size:11px;color:#c2c7ce}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding-block:23px 26px;font-size:9px;color:#9da9b6}.footer-bottom a{color:#c6cbd2}.mobile-contact{display:none}.reveal{opacity:1;transform:none}.js .reveal{transition:opacity .65s ease,transform .65s ease}.js .reveal.pending{opacity:0;transform:translateY(20px)}
/* Laptop */
@media(min-width:1600px){.hero-photo{width:54%}.hero .wrap{min-height:740px}}
@media(max-width:1200px){.wrap{width:calc(100% - 80px)}.nav-links{gap:22px}.hero .wrap{min-height:640px}.hero-content{width:60%}.hero h1{font-size:clamp(65px,7.3vw,93px)}.hero-photo{width:59%}.hero-caption{right:40px}.hero .body-copy{max-width:360px}.hero-stamp{right:38px}.hero-index{right:21px}.contact-layout{gap:48px}.story-layout{gap:60px}.faq-layout{gap:55px}.section-heading{gap:35px}.section-heading .body-copy{max-width:300px}.hero-actions{gap:16px}.hero-actions .btn{padding-inline:19px;font-size:12px}.hero-actions .text-link{font-size:11px}.service-strip .wrap{gap:12px}.service-item{gap:12px}.service-item strong{font-size:11px}.service-item small{font-size:9px}.product-visual{height:275px}}
/* Tablet */
@media(max-width:950px){.wrap{width:calc(100% - 56px)}.topline{display:none}.navigation{min-height:78px}.brand-name{font-size:23px}.brand-symbol{width:32px;height:32px}.nav-links{gap:18px}.nav-links>a:not(.btn){font-size:11px}.nav-links .nav-patrick{display:none}.hero h1{font-size:70px}.hero-content{width:62%}.hero-photo{width:60%}.hero .wrap{min-height:620px}.hero .body-copy{max-width:300px;font-size:14px}.hero-actions{align-items:start;flex-direction:column;gap:7px}.hero-actions .btn{font-size:12px}.hero-meta{font-size:9px;margin-top:21px}.hero-caption{right:28px;bottom:38px}.hero-caption strong{font-size:21px}.hero-caption span{font-size:8px}.hero-stamp{right:30px;top:30px;width:77px;height:77px}.hero-index{display:none}.section{padding-block:78px}.section-heading{align-items:start;gap:30px}.section-heading h2{font-size:46px}.section-heading .body-copy{max-width:240px;font-size:13px;padding-top:30px}.service-strip .wrap{padding-block:24px}.service-item{justify-content:start;gap:11px}.service-item+.service-item{padding-left:15px}.service-item .icon{width:22px;height:22px}.service-item strong{font-size:10px}.service-item small{font-size:8px}.product-grid{gap:17px;grid-template-columns:1fr 1fr}.product-visual{height:242px;margin-inline:18px}.product-info{padding:25px 22px}.product-top{padding-inline:22px}.product-info h3{font-size:33px}.product-info>p{font-size:12px}.product-bottom{align-items:start;gap:8px;flex-direction:column}.product-bottom>a{margin-top:6px}.product-tags span{font-size:8px}.occasion h3{font-size:25px}.occasion p{font-size:12px}.occasion-grid{gap:25px}.story-layout{gap:42px}.story-content h2{font-size:44px}.story-content p{font-size:13px}.portrait-label{min-width:190px;padding:21px;right:-15px}.portrait-label strong{font-size:24px}.story-photo{aspect-ratio:.84}.steps{gap:25px}.contact-layout{grid-template-columns:.87fr 1.13fr;gap:32px}.contact-copy h2.display{font-size:45px}.request-form{padding:26px}.request-form h3{font-size:29px}.contact-details{gap:18px}.contact-row strong{font-size:13px}.contact-row{gap:12px}.contact-icon{width:34px;height:34px}.faq-layout{grid-template-columns:.8fr 1.2fr;gap:35px}.faq h2.display{font-size:43px}.footer-top{gap:20px}.footer-top p{font-size:20px}.footer-links{gap:16px;font-size:10px}}
/* Mobile */
@media(max-width:700px){html{scroll-padding-top:25px}.wrap{width:calc(100% - 40px)}.section{padding-block:61px}.eyebrow{font-size:8px;letter-spacing:.17em;gap:9px}.eyebrow:before{width:21px}.navigation{min-height:76px;gap:12px}.brand-name{font-size:23px}.brand-tag{font-size:7px;margin-top:5px}.brand-symbol{width:32px;height:32px}.menu-toggle{display:flex}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--ink);padding:13px 20px 24px;border-bottom:1px solid var(--line);box-shadow:0 18px 28px #0004;flex-direction:column;align-items:stretch;gap:2px}.nav-links.is-open{display:flex}.nav-links>a:not(.btn),.nav-links .nav-patrick{display:block;font-size:13px;padding:13px 0}.nav-links>.btn{margin-top:10px;min-height:45px}.hero .wrap{min-height:auto;padding-block:47px 380px;align-items:start}.hero-content{width:100%;max-width:100%}.hero h1{font-size:clamp(54px,13.2vw,88px);margin:20px 0 20px;max-width:600px;line-height:1.02;letter-spacing:-.05em}.hero h1 em{white-space:nowrap}.hero .body-copy{max-width:400px;font-size:13px;line-height:1.8}.hero-actions{gap:10px;align-items:center;flex-direction:row;margin-top:24px;flex-wrap:wrap}.hero-actions .btn{padding:13px 17px;min-height:48px;font-size:11px;gap:17px}.hero-actions .text-link{font-size:10px;gap:9px}.hero-meta{margin-top:21px;font-size:9px;gap:8px}.hero-meta .icon{width:12px;height:12px}.hero-photo{width:100%;height:380px;top:auto;bottom:0}.hero-photo img{object-position:26% 33%}.hero-photo:after{background:linear-gradient(180deg,var(--ink),rgba(16,27,41,.55) 12%,transparent 32%,rgba(16,27,41,.08) 70%,rgba(16,27,41,.9))}.hero-caption{right:21px;bottom:25px;padding-left:13px}.hero-caption strong{font-size:24px}.hero-caption span{font-size:8px}.hero-stamp{top:auto;bottom:228px;right:23px;width:71px;height:71px}.hero-stamp span{font-size:6px}.hero-stamp .icon{height:18px;width:18px}.service-strip .wrap{padding-block:19px;grid-template-columns:1fr 1fr;gap:18px}.service-item{gap:10px}.service-item+.service-item{padding-left:10px}.service-item:nth-child(3){display:none}.service-item strong{font-size:10px}.service-item small{font-size:8px;line-height:1.7}.service-item .icon{width:23px;height:23px}.section-heading{flex-direction:column;gap:18px;margin-bottom:29px;align-items:stretch}.section-heading h2,h2.display{font-size:clamp(38px,9vw,49px);margin-top:15px}.section-heading .body-copy{max-width:100%;font-size:13px;padding-top:0}.product-grid{grid-template-columns:1fr;gap:22px}.product-top{padding:22px 24px 0}.product-visual{height:260px;margin:12px 18px 0}.product-card.screen-card .product-visual{height:303px}.product-info{padding:24px}.product-info h3{font-size:35px}.product-info>p{font-size:13px}.product-bottom{flex-direction:row;align-items:center;margin-top:22px}.product-bottom>a{font-size:11px;margin-top:0;gap:12px}.product-bottom>span{font-size:10px}.product-tags span{font-size:9px}.equipment-note{font-size:9px;line-height:1.8}.set-bar{flex-direction:column;align-items:start;gap:16px;padding:23px;margin-top:25px}.set-bar strong{font-size:25px}.set-bar p{font-size:11px;line-height:1.8}.occasion-grid{grid-template-columns:1fr;gap:32px}.occasion{position:relative;padding-top:19px;padding-left:53px}.occasion-top{position:absolute;top:18px;left:0;flex-direction:column;gap:10px;margin:0}.occasion-top .icon{width:26px;height:26px}.occasion-num{font-size:8px}.occasion h3{font-size:29px;margin-bottom:11px}.occasion p{max-width:100%;font-size:13px}.occasion>a{padding-top:17px;font-size:11px}.story-layout{grid-template-columns:1fr;gap:39px}.story-visual{padding-bottom:26px;padding-right:13px}.story-photo{aspect-ratio:1.14}.portrait-label{right:0;bottom:0;padding:20px 24px;min-width:205px}.portrait-label strong{font-size:26px}.story-content h2{font-size:43px;margin-bottom:23px}.story-content p{font-size:13px;line-height:1.9}.story-signoff{margin-top:21px;padding-top:22px}.story-link{margin-top:20px}.how .section-heading{margin-bottom:31px}.steps{grid-template-columns:1fr;gap:26px}.step{padding-top:24px;padding-left:53px}.step-num{position:absolute;top:21px;left:0;font-size:27px}.step h3{font-size:16px;margin-bottom:10px}.step p{font-size:13px}.step:not(:last-child):after{display:none}.service-note{font-size:10px;margin-top:29px}.contact-layout{grid-template-columns:1fr;gap:33px}.contact-copy h2.display{font-size:44px}.contact-copy .body-copy{max-width:100%;font-size:13px}.contact-details{margin-top:29px;gap:20px;grid-template-columns:1fr 1fr}.contact-row.email-row{grid-column:1/-1;grid-row:2}.contact-row strong{font-size:13px}.contact-icon{width:37px;height:37px}.contact-wa{margin-top:27px}.contact-fineprint{max-width:100%;font-size:10px;margin-top:21px}.request-form{padding:24px 20px}.request-form h3{font-size:30px}.form-intro{font-size:11px}.form-grid{column-gap:12px;row-gap:17px}.field>span{font-size:10px}.field input,.field select,.field textarea{font-size:16px;padding:10px;min-height:45px}.field small{font-size:9px}.field textarea{min-height:110px;font-size:14px}.field select{font-size:14px}.form-footnote{font-size:10px;line-height:1.7}.form-tools{gap:12px;align-items:start}.form-tools button{font-size:10px;line-height:1.7}.faq-layout{grid-template-columns:1fr;gap:29px}.faq h2.display{font-size:42px}.faq-intro{max-width:100%;margin-top:17px;font-size:12px}.faq-list summary{font-size:12px;padding-block:20px}.faq-list details p{font-size:12px}.site-footer{padding-top:40px;padding-bottom:71px}.footer-top{align-items:start;flex-direction:column;gap:24px;padding-bottom:29px}.footer-top p{font-size:24px}.footer-links{gap:22px;font-size:11px}.footer-bottom{flex-direction:column;gap:7px;font-size:9px;padding-top:21px}.mobile-contact{position:fixed;bottom:0;left:0;right:0;display:flex;z-index:30;background:rgba(12,21,32,.96);backdrop-filter:blur(12px);padding:10px 16px calc(10px + env(safe-area-inset-bottom));gap:11px;border-top:1px solid var(--line);transform:translateY(110%);transition:transform .25s}.mobile-contact.visible{transform:translateY(0)}.mobile-contact .btn{min-height:43px;font-size:11px;padding:11px 17px}.mobile-contact .btn:first-child{flex:1}.mobile-contact .btn:last-child{gap:8px}.mobile-contact .icon{width:15px;height:15px}.js .reveal.pending{transform:translateY(12px)}}
@media(max-width:370px){.wrap{width:calc(100% - 32px)}.brand-name{font-size:21px}.brand-symbol{width:29px;height:29px}.hero h1{font-size:50px}.hero-actions{gap:6px}.hero-actions .btn{font-size:10px;padding-inline:12px}.hero-actions .text-link{font-size:9px}.hero-meta{font-size:8px}.hero .wrap{padding-bottom:353px}.hero-photo{height:350px}.service-item strong{font-size:9px}.service-item small{font-size:7px}.product-visual{height:229px}.product-bottom>span{font-size:9px}.product-bottom>a{font-size:10px}.request-form{padding:22px 17px}.form-grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.contact-details{grid-template-columns:1fr}.contact-row.email-row{grid-column:auto;grid-row:auto}.form-tools{flex-direction:column;gap:10px}.product-info h3{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal.pending{opacity:1;transform:none}}
@media print{body{background:white;color:black}.site-header,.topline,.hero-stamp,.hero-index,.mobile-contact,.hero-photo,.hero-caption,.form-tools,.request-form,.site-footer{display:none}.section{padding-block:30px}.wrap{width:100%}.hero .wrap{min-height:0;padding-block:25px}.hero-content{width:100%}.hero h1{font-size:48px}.hero .body-copy,.body-copy,.step p,.contact-copy .body-copy{color:#333}.product-grid{grid-template-columns:1fr 1fr}.product-card,.occasion,.step{break-inside:avoid}.contact-layout{display:block}.story-photo{max-height:270px}.hero-actions,.hero-meta{display:none}.js .reveal.pending{opacity:1;transform:none}}

/* Locally supplied product photos. Limit enlargement of the 150 x 84 px Epson photo. */
.product-visual img[data-product-image="epson"]{width:min(240px,76%);height:auto;max-height:86%;object-fit:contain}
