Bottle Design

Custom Bottle

Explore our comprehensive platform for designing whisky bottles and labels, offering tools to customize bottle shapes, select whisky types, and create unique label designs with personalized branding and details.

Explore Our Bottle Design

Discover our comprehensive whisky bottle and label design platform, offering powerful tools to customize bottle shapes and select your preferred whisky types.

Custom Shapes

Tailor unique whisky bottle silhouettes to stand out.

Whisky Selection

Choose from a wide variety of premium whisky types.

Label Branding

Create personalized label designs with custom details.

Design Process

Follow our intuitive step-by-step workflow to shape your custom whisky bottles, select fine spirits, and craft unique branded labels.

Shape Your Bottle

Customize the unique contours and profile of your whisky bottle.

Select Spirit Type

Choose your preferred whisky variety for the blend.

Create Custom Labels

Design distinctive labels featuring your personalized branding and details.

Explore Custom Whisky Designs

This section presents practical examples that illustrate how distillers and brands successfully utilize our platform to create unique bottles and labels.

Crafting Signature Bottle Shapes

This is the first use case description, explaining its purpose and highlighting how it effectively shapes distinct whisky bottles while improving branding.

Selecting Premium Whisky Types

This is the second use case description, emphasizing how it streamlines selecting whisky types and enhances the overall creation experience for users.

Designing Personalized Labels

This is the fourth use case description, demonstrating its impact by personalizing label designs and ensuring a more seamless and distinctive product.

This is where a customer testimonial should go. Feel free to include whatever content you have.

Person 3

Job Title, Company Name

Start Designing Your Custom Whisky Bottle Today

This section invites visitors to explore our comprehensive platform, select whisky types, customize bottle shapes, and create unique label designs with personalized branding and details.

<div id="caskbase-designer">

<style>
#caskbase-designer {
    --gold:#c8a45d;
    --dark:#080808;
    --dark2:#111111;
    --cream:#f4efe5;
    --muted:#aaa;
    font-family:Arial,Helvetica,sans-serif;
    background:#080808;
    color:#fff;
    padding:50px 20px;
}

#caskbase-designer * {
    box-sizing:border-box;
}

.cask-container {
    max-width:1200px;
    margin:auto;
}

.cask-heading {
    text-align:center;
    margin-bottom:45px;
}

.cask-heading h1 {
    font-family:Georgia,serif;
    font-size:48px;
    font-weight:400;
    letter-spacing:3px;
    margin:0 0 12px;
}

.cask-heading p {
    color:#aaa;
    font-size:16px;
}

.cask-grid {
    display:grid;
    grid-template-columns:420px 1fr;
    gap:50px;
    align-items:start;
}

.cask-panel {
    background:#111;
    border:1px solid #292929;
    padding:30px;
    border-radius:4px;
}

.cask-panel h2 {
    font-family:Georgia,serif;
    font-weight:400;
    color:var(--gold);
    margin-top:0;
}

.cask-field {
    margin-bottom:20px;
}

.cask-field label {
    display:block;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:1.5px;
    color:#aaa;
    margin-bottom:8px;
}

.cask-field input,
.cask-field select,
.cask-field textarea {
    width:100%;
    padding:13px;
    background:#080808;
    color:#fff;
    border:1px solid #333;
    border-radius:2px;
    font-size:15px;
}

.cask-field textarea {
    min-height:90px;
    resize:vertical;
}

.cask-field input:focus,
.cask-field select:focus,
.cask-field textarea:focus {
    outline:none;
    border-color:var(--gold);
}

.cask-upload {
    border:1px dashed #555;
    padding:20px;
    text-align:center;
    color:#aaa;
}

.cask-upload input {
    border:0;
    padding:0;
}

.cask-buttons {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:25px;
}

.cask-btn {
    padding:13px 20px;
    border:1px solid var(--gold);
    background:transparent;
    color:var(--gold);
    cursor:pointer;
    text-transform:uppercase;
    letter-spacing:1px;
    font-size:11px;
}

.cask-btn.primary {
    background:var(--gold);
    color:#000;
}

.cask-btn:hover {
    opacity:.85;
}

/* LABEL */

.label-area {
    display:flex;
    justify-content:center;
    align-items:center;
    min-height:700px;
    background:
      radial-gradient(circle at center,#1c1c1c 0,#0c0c0c 65%);
    padding:30px;
}

.whisky-bottle {
    width:280px;
    position:relative;
    filter:drop-shadow(0 25px 25px rgba(0,0,0,.7));
}

.bottle-neck {
    width:90px;
    height:120px;
    background:linear-gradient(90deg,#161616,#555,#151515);
    margin:auto;
    border-radius:8px 8px 2px 2px;
}

.bottle-cap {
    width:98px;
    height:25px;
    background:#171717;
    margin:-3px auto 0;
    border-radius:4px;
    border-top:2px solid var(--gold);
}

.bottle-body {
    width:280px;
    height:470px;
    background:
      linear-gradient(90deg,
      rgba(255,255,255,.04),
      rgba(255,255,255,.15),
      rgba(255,255,255,.03));
    border:2px solid #3b3b3b;
    border-radius:35px 35px 45px 45px;
    position:relative;
    overflow:hidden;
}

.whisky-liquid {
    position:absolute;
    bottom:0;
    width:100%;
    height:70%;
    background:linear-gradient(
      180deg,
      #a96d24,
      #6e3d13
    );
    opacity:.9;
}

.label {
    position:absolute;
    z-index:5;
    left:25px;
    right:25px;
    top:100px;
    min-height:245px;
    background:#f4efe5;
    color:#171717;
    padding:22px 15px;
    text-align:center;
    border:5px double #171717;
    box-shadow:0 8px 20px rgba(0,0,0,.4);
}

.label.gold {
    background:#171717;
    color:#f4efe5;
    border-color:#c8a45d;
}

.label.black {
    background:#0b0b0b;
    color:#f4efe5;
    border-color:#aaa;
}

.label h3 {
    font-family:Georgia,serif;
    font-size:24px;
    margin:10px 0;
    letter-spacing:2px;
}

.label .label-brand {
    font-size:9px;
    letter-spacing:4px;
    text-transform:uppercase;
}

.label .label-vintage {
    font-size:12px;
    letter-spacing:2px;
    margin:12px 0;
}

.label .label-cask {
    font-size:10px;
    margin-top:18px;
    letter-spacing:1px;
}

.label .label-abv {
    font-size:10px;
    margin-top:7px;
}

.label-logo {
    max-width:60px;
    max-height:45px;
    margin:4px auto;
    display:none;
}

.label-note {
    font-size:8px;
    line-height:1.4;
    margin-top:12px;
}

.designer-status {
    margin-top:15px;
    color:#aaa;
    font-size:12px;
}

/* RESPONSIVE */

@media(max-width:850px) {
    .cask-grid {
        grid-template-columns:1fr;
    }

    .cask-heading h1 {
        font-size:36px;
    }

    .label-area {
        min-height:600px;
    }
}
</style>


<div class="cask-container">

    <div class="cask-heading">
        <h1>CASKBASE BOTTLING STUDIO</h1>
        <p>Design your bottle. Create your label. Build your whisky.</p>
    </div>


    <div class="cask-grid">

        <!-- CONTROLS -->

        <div class="cask-panel">

            <h2>Label Designer</h2>

            <div class="cask-field">
                <label>Cask / Whisky</label>
                <select id="whisky">
                    <option value="Macallan">Macallan</option>
                    <option value="Tamdhu">Tamdhu</option>
                    <option value="Linkwood">Linkwood</option>
                    <option value="Staoisha">Staoisha</option>
                    <option value="Ben Nevis">Ben Nevis</option>
                    <option value="Caol Ila">Caol Ila</option>
                    <option value="Glencadam">Glencadam</option>
                    <option value="Deanston">Deanston</option>
                    <option value="Custom">Custom Whisky</option>
                </select>
            </div>

            <div class="cask-field">
                <label>Whisky Name</label>
                <input
                    id="whiskyName"
                    type="text"
                    value="Caskbase Private Cask"
                >
            </div>

            <div class="cask-field">
                <label>Vintage</label>
                <input
                    id="vintage"
                    type="text"
                    value="2026"
                >
            </div>

            <div class="cask-field">
                <label>Cask Number</label>
                <input
                    id="caskNumber"
                    type="text"
                    value="001"
                >
            </div>

            <div class="cask-field">
                <label>Bottle Number</label>
                <input
                    id="bottleNumber"
                    type="text"
                    value="001 / 333"
                >
            </div>

            <div class="cask-field">
                <label>Alcohol</label>
                <input
                    id="abv"
                    type="text"
                    value="46% ABV"
                >
            </div>

            <div class="cask-field">
                <label>Design Style</label>
                <select id="style">
                    <option value="classic">Classic</option>
                    <option value="gold">Black & Gold</option>
                    <option value="black">Luxury Black</option>
                </select>
            </div>

            <div class="cask-field">
                <label>Custom Description</label>
                <textarea id="description">Single Cask Scotch Whisky. Matured in oak and bottled exclusively for the Caskbase collection.</textarea>
            </div>

            <div class="cask-field">
                <label>Upload Logo</label>

                <div class="cask-upload">
                    <input
                        type="file"
                        id="logoUpload"
                        accept="image/*"
                    >
                </div>
            </div>

            <div class="cask-buttons">

                <button
                    class="cask-btn primary"
                    onclick="downloadLabel()">
                    Download Label
                </button>

                <button
                    class="cask-btn"
                    onclick="window.print()">
                    Print
                </button>

            </div>

            <div class="designer-status">
                Your design updates live on the bottle.
            </div>

        </div>


        <!-- PREVIEW -->

        <div class="label-area">

            <div class="whisky-bottle">

                <div class="bottle-neck"></div>

                <div class="bottle-cap"></div>

                <div class="bottle-body">

                    <div class="whisky-liquid"></div>

                    <div
                        id="label"
                        class="label">

                        <div class="label-brand">
                            CASKBASE
                        </div>

                        <img
                            id="labelLogo"
                            class="label-logo"
                            alt="Logo">

                        <h3 id="previewName">
                            Caskbase Private Cask
                        </h3>

                        <div
                            class="label-vintage"
                            id="previewVintage">
                            2026
                        </div>

                        <div
                            class="label-cask"
                            id="previewCask">
                            SINGLE CASK • CASK 001
                        </div>

                        <div
                            class="label-abv"
                            id="previewAbv">
                            46% ABV
                        </div>

                        <div
                            class="label-cask"
                            id="previewBottle">
                            BOTTLE 001 / 333
                        </div>

                        <div
                            class="label-note"
                            id="previewDescription">
                            Single Cask Scotch Whisky.
                            Matured in oak and bottled exclusively
                            for the Caskbase collection.
                        </div>

                    </div>

                </div>

            </div>

        </div>

    </div>

</div>


<script>

/* LIVE DESIGNER */

function updateLabel() {

    document.getElementById("previewName").innerText =
        document.getElementById("whiskyName").value;

    document.getElementById("previewVintage").innerText =
        document.getElementById("vintage").value;

    document.getElementById("previewCask").innerText =
        "SINGLE CASK • CASK " +
        document.getElementById("caskNumber").value;

    document.getElementById("previewBottle").innerText =
        "BOTTLE " +
        document.getElementById("bottleNumber").value;

    document.getElementById("previewAbv").innerText =
        document.getElementById("abv").value;

    document.getElementById("previewDescription").innerText =
        document.getElementById("description").value;

    const style =
        document.getElementById("style").value;

    const label =
        document.getElementById("label");

    label.className = "label";

    if(style === "gold") {
        label.classList.add("gold");
    }

    if(style === "black") {
        label.classList.add("black");
    }
}


/* INPUT EVENTS */

document.querySelectorAll(
    "#caskbase-designer input, #caskbase-designer textarea, #caskbase-designer select"
).forEach(function(element) {

    element.addEventListener(
        "input",
        updateLabel
    );

    element.addEventListener(
        "change",
        updateLabel
    );

});


/* LOGO UPLOAD */

document.getElementById("logoUpload")
.addEventListener("change", function(event) {

    const file =
        event.target.files[0];

    if(!file) return;

    const reader =
        new FileReader();

    reader.onload = function(e) {

        const logo =
            document.getElementById("labelLogo");

        logo.src = e.target.result;

        logo.style.display = "block";
    };

    reader.readAsDataURL(file);

});


/* DOWNLOAD */

function downloadLabel() {

    const label =
        document.getElementById("label");

    const popup =
        window.open("", "_blank");

    popup.document.write(`
        <html>
        <head>
        <title>Caskbase Label</title>

        <style>

        body {
            background:#fff;
            display:flex;
            justify-content:center;
            padding:50px;
        }

        .label {
            width:350px;
            min-height:430px;
            background:#f4efe5;
            color:#171717;
            padding:35px 25px;
            text-align:center;
            border:7px double #171717;
            font-family:Arial,sans-serif;
        }

        .label h3 {
            font-family:Georgia,serif;
            font-size:28px;
            letter-spacing:2px;
        }

        .label-brand {
            font-size:11px;
            letter-spacing:5px;
        }

        .label-vintage {
            margin:20px;
        }

        .label-cask,
        .label-abv {
            font-size:11px;
            margin:15px;
        }

        .label-note {
            font-size:10px;
            line-height:1.5;
            margin-top:30px;
        }

        img {
            max-width:100px;
            max-height:70px;
        }

        </style>

        </head>

        <body>

        ${label.outerHTML}

        </body>
        </html>
    `);

    popup.document.close();

    setTimeout(function() {
        popup.print();
    },500);
}

</script>

</div>